Skip to content

Commit d705b2a

Browse files
Switch to Username/password auth for ACR (#55)
* Logging in manually * switch MI id to vars, as its set * Extract MI assignment * change user assigned arg * remove extension * Fix target port syntax in Azure Container App deployment * Update target port for Container App and assign Managed Identity * Add subscription and managed identity parameters for Container App deployment * Refactor Container App deployment to use dynamic identity assignment and update registry identity reference * Add Azure CLI extension for Container App deployment * Add debug flag to Container App deployment command * Update managed identity assignment script in deployment workflow * Update Azure CLI script for Container App deployment to use ACR credentials * Refactor ACR login steps in deployment workflow to use secrets for credentials * remove commented work * remove commented work * Remove subscription ID from environment variables in deployment workflow --------- Co-authored-by: Joshua Lester <jlester3@ewu.edu>
1 parent bbfeaa8 commit d705b2a

File tree

1 file changed

+12
-19
lines changed

1 file changed

+12
-19
lines changed

.github/workflows/Build-Test-And-Deploy.yaml

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,9 @@ jobs:
8181
needs: build-and-test
8282
environment:
8383
name: "Development"
84+
permissions:
85+
id-token: write
86+
contents: read
8487

8588
steps:
8689
- name: Azure Login
@@ -102,10 +105,11 @@ jobs:
102105
docker image ls -a
103106
104107
- name: Log in to container registry
105-
env:
106-
REGISTRY_URL: ${{ vars.DEVCONTAINER_REGISTRY }}
107-
run:
108-
az acr login --name ${REGISTRY_URL%.azurecr.io}
108+
uses: docker/login-action@v3
109+
with:
110+
registry: ${{ vars.DEVCONTAINER_REGISTRY }}
111+
username: ${{ secrets.ESSENTIALCSHARP_ACR_USERNAME }}
112+
password: ${{ secrets.ESSENTIALCSHARP_ACR_PASSWORD }}
109113

110114
- name: Push Image to Container Registry
111115
env:
@@ -119,24 +123,13 @@ jobs:
119123
RESOURCEGROUP: ${{ vars.RESOURCEGROUP }}
120124
CONTAINER_APP_ENVIRONMENT: ${{ vars.CONTAINER_APP_ENVIRONMENT }}
121125
REGISTRY_URL: ${{ vars.DEVCONTAINER_REGISTRY }}
122-
SUBSCRIPTION_ID: ${{ secrets.ESSENTIALCSHARP_SUBSCRIPTION_ID }}
123-
MANAGED_IDENTITY_ID: ${{ secrets.MANAGED_IDENTITY_ID }}
126+
ACR_USERNAME: ${{ secrets.ESSENTIALCSHARP_ACR_USERNAME }}
127+
ACR_PASSWORD: ${{ secrets.ESSENTIALCSHARP_ACR_PASSWORD }}
124128
with:
125129
inlineScript: |
126130
az config set extension.use_dynamic_install=yes_without_prompt
127-
az extension add --name containerapp --upgrade
128-
az containerapp up \
129-
-n $CONTAINER_APP_NAME \
130-
-g $RESOURCEGROUP \
131-
--image $REGISTRY_URL/try:${{ github.sha }} \
132-
--environment $CONTAINER_APP_ENVIRONMENT \
133-
--registry-server $REGISTRY_URL \
134-
--ingress external \
135-
--target-port 8080 \
136-
--user-assigned /subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCEGROUP/providers/Microsoft.ManagedIdentity/userAssignedIdentities/$MANAGED_IDENTITY_ID \
137-
--registry-identity /subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCEGROUP/providers/Microsoft.ManagedIdentity/userAssignedIdentities/$MANAGED_IDENTITY_ID
138-
139-
131+
az containerapp up -n $CONTAINER_APP_NAME -g $RESOURCEGROUP --image $REGISTRY_URL/try:${{ github.sha }} --environment $CONTAINER_APP_ENVIRONMENT --registry-server $REGISTRY_URL --ingress external --registry-username $ACR_USERNAME --registry-password $ACR_PASSWORD --target-port 80 --debug
132+
140133
- name: Logout of Azure CLI
141134
if: always()
142135
uses: azure/CLI@v2

0 commit comments

Comments
 (0)