containerapp/execute-manual-job/README.md #45
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on: | |
schedule: | |
- cron: '0 10 * * 3' | |
workflow_dispatch: | |
name: 'containerapp/execute-manual-job/README.md' | |
jobs: | |
validate: | |
runs-on: 'ubuntu-latest' | |
steps: | |
- uses: 'actions/setup-java@v4' | |
with: | |
java-version: '17' | |
distribution: 'temurin' | |
- uses: 'actions/setup-java@v4' | |
with: | |
java-version: '17' | |
distribution: 'temurin' | |
- uses: 'azure/login@v1' | |
with: | |
subscription-id: '${{ secrets.AZURE_SUBSCRIPTION_ID }}' | |
client-id: '${{ secrets.AZURE_CLIENT_ID }}' | |
tenant-id: '${{ secrets.AZURE_TENANT_ID }}' | |
- uses: 'actions/checkout@v3' | |
- run: | | |
if [[ -z $REGION ]]; then | |
export REGION=westus | |
fi | |
if [[ -z $REGION ]]; then | |
export REGION=westus | |
fi | |
if [[ -z $RESOURCE_GROUP ]]; then | |
export RESOURCE_GROUP=joaz-rg-$RANDOM | |
echo "Using '"$RESOURCE_GROUP"' as resource group" | |
fi | |
az group create --name $RESOURCE_GROUP --location $REGION | |
if [[ -z $ACR_NAME ]]; then | |
export ACR_NAME=joazcr$RANDOM | |
fi | |
az acr create \ | |
--name $ACR_NAME \ | |
--resource-group $RESOURCE_GROUP \ | |
--sku Basic \ | |
--admin-enabled true | |
cd acr/helloworldjob | |
mvn -ntp package | |
export ACR_HELLOWORLDJOB_IMAGE=helloworldjob:latest | |
az acr build --registry $ACR_NAME --resource-group $RESOURCE_GROUP --image $ACR_HELLOWORLDJOB_IMAGE . | |
cd ../.. | |
if [[ -z $REGION ]]; then | |
export REGION=westus | |
fi | |
if [[ -z $REGION ]]; then | |
export REGION=westus | |
fi | |
if [[ -z $RESOURCE_GROUP ]]; then | |
export RESOURCE_GROUP=joaz-rg-$RANDOM | |
echo "Using '"$RESOURCE_GROUP"' as resource group" | |
fi | |
az group create --name $RESOURCE_GROUP --location $REGION | |
if [[ -z $ACR_NAME ]]; then | |
export ACR_NAME=joazcr$RANDOM | |
fi | |
az acr create \ | |
--name $ACR_NAME \ | |
--resource-group $RESOURCE_GROUP \ | |
--sku Basic \ | |
--admin-enabled true | |
cd acr/helloworldjob | |
mvn -ntp package | |
export ACR_HELLOWORLDJOB_IMAGE=helloworldjob:latest | |
az acr build --registry $ACR_NAME --resource-group $RESOURCE_GROUP --image $ACR_HELLOWORLDJOB_IMAGE . | |
cd ../.. | |
if [[ -z $REGION ]]; then | |
export REGION=westus | |
fi | |
if [[ -z $RESOURCE_GROUP ]]; then | |
export RESOURCE_GROUP=joaz-rg-$RANDOM | |
echo "Using '"$RESOURCE_GROUP"' as resource group" | |
fi | |
az group create --name $RESOURCE_GROUP --location $REGION | |
az extension add --name containerapp --upgrade | |
az provider register --namespace Microsoft.App | |
az provider register --namespace Microsoft.OperationalInsights | |
if [[ -z $ACA_ENVIRONMENT_NAME ]]; then | |
export ACA_ENVIRONMENT_NAME=joazaca$RANDOM | |
export ACA_REGION=westus | |
fi | |
az containerapp env create \ | |
--name $ACA_ENVIRONMENT_NAME \ | |
--resource-group $RESOURCE_GROUP \ | |
--location "$ACA_REGION" || true | |
sleep 60 | |
if [[ -z $ACA_JOB_NAME ]]; then | |
export ACA_JOB_NAME=aca-job-$RANDOM | |
sleep 60 | |
fi | |
az containerapp job create \ | |
--name $ACA_JOB_NAME \ | |
--resource-group $RESOURCE_GROUP \ | |
--environment $ACA_ENVIRONMENT_NAME \ | |
--trigger-type Manual \ | |
--replica-timeout 1800 \ | |
--replica-retry-limit 1 \ | |
--replica-completion-count 1 \ | |
--parallelism 1 \ | |
--registry-identity system \ | |
--registry-server $ACR_NAME.azurecr.io \ | |
--image $ACR_NAME.azurecr.io/$ACR_HELLOWORLDJOB_IMAGE | |
az containerapp job start \ | |
--name $ACA_JOB_NAME \ | |
--resource-group $RESOURCE_GROUP | |
sleep 60 | |
az group delete --name $RESOURCE_GROUP --yes || true | |
permissions: | |
contents: 'read' | |
id-token: 'write' |