{"record":{"id":"4beb9bbc14f9efbd","repo":"quarkusio/quarkus","slug":"please-config-the-image-of-runtime-in-pom-xml","errorCode":null,"errorMessage":"Please config the <image> of <runtime> in pom.xml.","messagePattern":"Please config the <image> of <runtime> in pom\\.xml\\.","errorType":"error_code","errorClass":"BuildException","httpStatus":null,"severity":"error","filePath":"extensions/azure-functions/deployment/src/main/java/io/quarkus/azure/functions/deployment/AzureFunctionsDeployCommand.java","lineNumber":223,"sourceCode":"        }\n        // os\n        if (StringUtils.isNotEmpty(config.runtime().os()) && OperatingSystem.fromString(config.runtime().os()) == null) {\n            throw new BuildException(INVALID_OS);\n        }\n        // java version\n        if (StringUtils.isNotEmpty(config.runtime().javaVersion())\n                && !JAVA_VERSION_PATTERN.matcher(config.runtime().javaVersion()).matches()) {\n            log.warn(format(EXPANDABLE_JAVA_VERSION_WARNING, config.runtime().javaVersion()));\n        }\n        // pricing tier\n        if (config.pricingTier().isPresent() && StringUtils.isNotEmpty(config.pricingTier().orElse(null))\n                && PricingTier.fromString(config.pricingTier().orElse(null)).isExpandedValue()) {\n            log.warn(format(EXPANDABLE_PRICING_TIER_WARNING, config.pricingTier().orElse(null)));\n        }\n        // docker image\n        if (OperatingSystem.fromString(config.runtime().os()) == OperatingSystem.DOCKER\n                && StringUtils.isEmpty(config.runtime().image().orElse(null))) {\n            throw new BuildException(EMPTY_IMAGE_NAME);\n        }\n    }\n\n    protected static AzureAppService appServiceClient;\n\n    protected static String subscriptionId;\n\n    protected AzureAppService initAzureAppServiceClient(AzureFunctionsConfig config) throws BuildException {\n        if (appServiceClient == null) {\n            final Account account = loginAzure(config.auth());\n            final List<Subscription> subscriptions = account.getSubscriptions();\n            final String targetSubscriptionId = getTargetSubscriptionId(config.subscriptionId().orElse(null), subscriptions,\n                    account.getSelectedSubscriptions());\n            checkSubscription(subscriptions, targetSubscriptionId);\n            com.microsoft.azure.toolkit.lib.Azure.az(AzureAccount.class).account()\n                    .setSelectedSubscriptions(Collections.singletonList(targetSubscriptionId));\n            appServiceClient = Azure.az(AzureAppService.class);\n            printCurrentSubscription(appServiceClient);","sourceCodeStart":205,"sourceCodeEnd":241,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/extensions/azure-functions/deployment/src/main/java/io/quarkus/azure/functions/deployment/AzureFunctionsDeployCommand.java#L205-L241","documentation":"Raised by AzureFunctionsDeployCommand.validateParameters when the runtime OS is set to docker but no container image is configured. Docker-based Azure Function deployment requires the image to deploy (configured via the runtime image setting in the azure-functions plugin configuration), and validation refuses to continue because the Azure Function App would have nothing to run.","triggerScenarios":"Thrown at extensions/azure-functions/deployment/src/main/java/io/quarkus/azure/functions/deployment/AzureFunctionsDeployCommand.java:223 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Configure the container image for the docker runtime in the azure-functions plugin configuration (runtime/image setting)","Build and push the container image to a registry accessible by Azure before deploying","Switch the OS setting to linux if a container deployment was not intended"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e1c734241f34c7919086ceb4c9262b4a58f6de44","analyzedAt":"2026-09-05T17:01:29.979Z","contentChangedAt":"2026-09-05T17:01:29.979Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}