Class AbstractFunctionMojo

  • All Implemented Interfaces:
    com.microsoft.azure.maven.auth.AuthConfiguration, com.microsoft.azure.maven.telemetry.TelemetryConfiguration, org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo
    Direct Known Subclasses:
    AddMojo, DeployMojo, ListMojo, PackageMojo, RunMojo

    public abstract class AbstractFunctionMojo
    extends com.microsoft.azure.maven.AbstractAppServiceMojo
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.microsoft.azure.maven.AbstractAzureMojo

        com.microsoft.azure.maven.AbstractAzureMojo.DefaultUncaughtExceptionHandler, com.microsoft.azure.maven.AbstractAzureMojo.RunnableWithException
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      String getAppInsightsInstance()  
      String getAppInsightsKey()  
      String getFinalName()  
      com.microsoft.azure.management.appservice.FunctionApp getFunctionApp()  
      com.microsoft.azure.management.appservice.PricingTier getPricingTier()  
      String getRegion()  
      com.microsoft.azure.common.function.configurations.RuntimeConfiguration getRuntime()  
      Map<String,​String> getTelemetryProperties()  
      boolean isDisableAppInsights()  
      protected boolean isSkipMojo()  
      protected void validateAppName()  
      • Methods inherited from class com.microsoft.azure.maven.AbstractAppServiceMojo

        getAppName, getAppServicePlanName, getAppServicePlanResourceGroup, getAppSettings, getDeploymentSlotSetting, getDeploymentStagingDirectoryPath, getDeploymentType, getPortalUrl, getResourceGroup, getResourcePortalUrl, getResources, setDeploymentSlot
      • Methods inherited from class com.microsoft.azure.maven.AbstractAzureMojo

        checkSubscription, doExecute, execute, executeWithTimeRecorder, getActualAuthType, getAuthenticationSetting, getAuthType, getAzureAccount, getAzureClient, getBuildDirectoryAbsolutePath, getHttpProxyHost, getHttpProxyPort, getInstallationId, getMavenResourcesFiltering, getOrCreateAzureClient, getPluginName, getPluginVersion, getProject, getSession, getSessionId, getSettings, getSubscriptionId, getTargetSubscriptionId, getTelemetryProxy, getUserAgent, handleException, highlightDefaultValue, infoWithMultipleLines, initTelemetry, isFailingOnError, isTelemetryAllowed, printCurrentSubscription, selectSubscription, trackMojoFailure, trackMojoSkip, trackMojoStart, trackMojoSuccess
      • Methods inherited from class org.apache.maven.plugin.AbstractMojo

        getLog, getPluginContext, setLog, setPluginContext
    • Field Detail

      • pricingTier

        @Parameter(property="functions.pricingTier")
        protected String pricingTier
        App Service pricing tier, which will only be used to create Functions App at the first time.

        Below is the list of supported pricing tier:

        • F1
        • D1
        • B1
        • B2
        • B3
        • S1
        • S2
        • S3
        • P1V2
        • P2V2
        • P3V2
      • finalName

        @Parameter(defaultValue="${project.build.finalName}",
                   readonly=true,
                   required=true)
        protected String finalName
      • outputDirectory

        @Parameter(defaultValue="${project.build.outputDirectory}",
                   readonly=true,
                   required=true)
        protected File outputDirectory
      • skip

        @Parameter(property="functions.skip",
                   defaultValue="false")
        protected boolean skip
        Skip execution.
        Since:
        0.1.0
      • region

        @Parameter(property="functions.region",
                   defaultValue="westeurope")
        protected String region
        App Service region, which will only be used to create App Service at the first time.
      • runtime

        @Parameter(property="functions.runtime")
        protected com.microsoft.azure.common.function.configurations.RuntimeConfiguration runtime
      • appInsightsInstance

        @Parameter(property="functions.appInsightsInstance")
        protected String appInsightsInstance
      • appInsightsKey

        @Parameter(property="functions.appInsightsKey")
        protected String appInsightsKey
      • disableAppInsights

        @Parameter(property="functions.disableAppInsights",
                   defaultValue="false")
        protected boolean disableAppInsights
    • Constructor Detail

      • AbstractFunctionMojo

        public AbstractFunctionMojo()
    • Method Detail

      • getPricingTier

        public com.microsoft.azure.management.appservice.PricingTier getPricingTier()
                                                                             throws com.microsoft.azure.common.exceptions.AzureExecutionException
        Throws:
        com.microsoft.azure.common.exceptions.AzureExecutionException
      • getRegion

        public String getRegion()
      • isSkipMojo

        protected boolean isSkipMojo()
        Overrides:
        isSkipMojo in class com.microsoft.azure.maven.AbstractAzureMojo
      • getFinalName

        public String getFinalName()
      • getAppInsightsInstance

        public String getAppInsightsInstance()
      • getAppInsightsKey

        public String getAppInsightsKey()
      • isDisableAppInsights

        public boolean isDisableAppInsights()
      • getFunctionApp

        @Nullable
        public com.microsoft.azure.management.appservice.FunctionApp getFunctionApp()
                                                                             throws com.microsoft.azure.maven.auth.AzureAuthFailureException,
                                                                                    com.microsoft.azure.common.exceptions.AzureExecutionException
        Throws:
        com.microsoft.azure.maven.auth.AzureAuthFailureException
        com.microsoft.azure.common.exceptions.AzureExecutionException
      • getRuntime

        public com.microsoft.azure.common.function.configurations.RuntimeConfiguration getRuntime()
      • validateAppName

        protected void validateAppName()
      • getTelemetryProperties

        public Map<String,​String> getTelemetryProperties()
        Specified by:
        getTelemetryProperties in interface com.microsoft.azure.maven.telemetry.TelemetryConfiguration
        Overrides:
        getTelemetryProperties in class com.microsoft.azure.maven.AbstractAzureMojo