Skip to content

Build Service Catalog Managed Applications #236

Build Service Catalog Managed Applications

Build Service Catalog Managed Applications #236

Workflow file for this run

name: Build Service Catalog Managed Applications
permissions:
id-token: write
contents: read
on:
workflow_dispatch:
env:
app_version: ${{ vars.major_version_number }}.${{ vars.minor_version_number }}.${{ github.run_number }}
# reference
# conditional steps: https://www.meziantou.net/executing-github-actions-jobs-or-steps-only-when-specific-files-change.htm
jobs:
build-service-catalog-app:
runs-on: ubuntu-latest
environment: dev
steps:
- name: Checkout Repository
uses: actions/checkout@v3
with:
fetch-depth: '100'
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.11'
- run: pip install -r cli/requirements.txt
- name: Setup .NET 7.0 SDK
uses: actions/setup-dotnet@v1
with:
dotnet-version: '7.0.x'
- name: Setup tools
run: |
echo "installing jq"
sudo apt-get update && sudo apt-get install -y jq
source ./scripts/cli-setup.sh
- name: Azure Login
uses: azure/login@v1
with:
client-id: ${{ secrets.AZURE_CLIENT_ID }}
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
- name: Build Service Catalog
run: |
latest_version=$(az sig image-version list -g ${{ vars.IMAGE_RESOURCE_GROUP }} -i ${{ vars.IMAGE_NAME }} -r ${{ vars.IMAGE_GALLERY_NAME }} -o json | jq -r 'sort_by(.name | split(".") | map(tonumber))[-1].name')
echo "pulled latest version $latest_version"
vmi_reference_id="/subscriptions/${{ secrets.AZURE_SUBSCRIPTION_ID }}/resourceGroups/${{ vars.IMAGE_RESOURCE_GROUP }}/providers/Microsoft.Compute/galleries/${{ vars.IMAGE_GALLERY_NAME }}/images/${{ vars.IMAGE_NAME }}/versions/$latest_version"
resource_group=${{ vars.resource_group }}
storage_account=${{ vars.service_catalog_storage_account }}
scenarios=$(echo "${{ vars.service_catalog_scenarios }}")
for scenario in $scenarios;
do
./scripts/build-managedapp.sh -v $latest_version \
--scenario $scenario \
--version $latest_version \
--resource-group $resource_group \
--image-id $vmi_reference_id \
--storage-account $storage_account
done