jq
This project utilizes GitHub Packages for hosting and retrieving some dependencies. To ensure you can smoothly run and build the project in your local environment, specific configuration settings are required.
GitHub Packages requires authentication to download or publish packages. Therefore, you need to configure your Maven settings.xml
file to authenticate using your GitHub credentials. The primary reason for this is that GitHub Packages does not support anonymous access, even for public packages.
Please follow these steps:
Create a Personal Access Token (PAT)
Configure Maven Settings
Add the GitHub Package Registry server configuration with your username and the PAT you just created. It should look something like this:
<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0
https://maven.apache.org/xsd/settings-1.2.0.xsd">
<!-- other settings
...
-->
<servers>
<server>
<id>github</id>
<username>YOUR_GITHUB_USERNAME</username>
<password>YOUR_PERSONAL_ACCESS_TOKEN</password>
</server>
</servers>
<!-- other settings
...
-->
</settings>
Checkout azure-javaee-iaas
mvn clean install
Checkout arm-ttk under the specified parent directory
git checkout cf5c927eaf1f5652556e86a6b67816fc910d1b74
to checkout the verified version of arm-ttk
Checkout this repo under the same parent directory and change to directory hosting the repo project
Build the project by replacing all placeholder ${<place_holder>}
with valid values
Create a new AKS cluster and a new Azure Container Registry (ACR) instance with Application Gateway Ingress Controller (AGIC) enabled:
mvn -Dgit.repo=<repo_user> -Dgit.tag=<repo_tag> -DcreateCluster=true -DcreateACR=true -DdeployWLO=<true|false> -Dedition=<edition> -DproductEntitlementSource=<productEntitlementSource> -DdeployApplication=<true|false> -DappImagePath=<app-image-path> -DappReplicas=<number of replicas> -DenableAppGWIngress=true -DappgwUsePrivateIP=<true|false> -DappGatewayCertificateOption=generateCert -DenableCookieBasedAffinity=true -Dtest.args="-Test All" -Pbicep -Passembly -Ptemplate-validation-tests clean install
Or use an existing AKS cluster and an existing ACR instance without AGIC:
mvn -Dgit.repo=<repo_user> -Dgit.tag=<repo_tag> -DcreateCluster=false -DclusterName=<aks-cluster-name> -DclusterRGName=<cluster-group-name> -DcreateACR=false -DacrName=<acr-instance-name> -DacrRGName=<acr-group-name> -DdeployWLO=<true|false> -Dedition=<edition> -DproductEntitlementSource=<productEntitlementSource> -DdeployApplication=<true|false> -DappImagePath=<app-image-path> -DappReplicas=<number of replicas> -DenableAppGWIngress=false -DappgwUsePrivateIP=<true|false> -DappGatewayCertificateOption=generateCert -DenableCookieBasedAffinity=true -Dtest.args="-Test All" -Pbicep -Passembly -Ptemplate-validation-tests clean install
Change to ./target/cli
directory
Using deploy.azcli
to deploy the application package to AKS cluster
./deploy.azcli -n <deploymentName> -g <resourceGroupName> -l <resourceGroupLocation>
resourceGroupName
in Azure portal, you will see related resources created:
resourceGroupName
;deploymentName
> Outputs";appHttpEndpoint
> append context root defined in the 'server.xml' of your application if it's not equal to '/' > open it in the browser;appHttpsEndpoint
> append context root defined in the 'server.xml' of your application if it's not equal to '/' > open it in the browser;The offer provisions the WebSphere Liberty Operator or Open Liberty Operator and supporting Azure resources.