Skip to content

Commit 427d54a

Browse files
template fix login
1 parent a9201fa commit 427d54a

File tree

1 file changed

+23
-17
lines changed

1 file changed

+23
-17
lines changed

.github/workflows/azure-dev-validation.yml

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ jobs:
1414
runs-on: ubuntu-latest
1515
environment: validation
1616
name: Template validation
17+
env:
18+
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
1719
steps:
1820
- name: Checkout code
1921
uses: actions/checkout@v4
@@ -37,28 +39,32 @@ jobs:
3739
- name: Ensure Bicep CLI installed
3840
run: |
3941
az bicep install || true
40-
echo "Bicep version:"; az bicep version || echo "Bicep not available" >&2
41-
42-
- name: Azure Login (OIDC)
42+
- name: Azure Login (Service Principal Client Secret)
43+
if: ${{ env.AZURE_CLIENT_SECRET != '' }}
44+
run: |
45+
echo "Using service principal client secret authentication path."
46+
az login --service-principal \
47+
-u ${{ secrets.AZURE_CLIENT_ID }} \
48+
-p ${{ secrets.AZURE_CLIENT_SECRET }} \
49+
--tenant ${{ secrets.AZURE_TENANT_ID }}
50+
az account set --subscription ${{ secrets.AZURE_SUBSCRIPTION_ID }}
51+
--tenant ${{ secrets.AZURE_TENANT_ID }}
52+
- name: Azure Login (OIDC) (no client secret present)
53+
if: ${{ env.AZURE_CLIENT_SECRET == '' }}
4354
uses: azure/login@v1
4455
with:
45-
client-id: ${{ secrets.AZURE_CLIENT_ID }}
46-
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
47-
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
56+
client-id: ${{ secrets.AZURE_CLIENT_ID }}
57+
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
58+
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
59+
continue-on-error: false
4860

49-
- name: Fallback Azure Login (Client Secret)
50-
if: failure()
51-
env:
52-
HAS_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET != '' }}
61+
- name: Auth Mode Announcement
5362
run: |
54-
if [ "${HAS_CLIENT_SECRET}" != "true" ]; then
55-
echo "OIDC login failed and no client secret available for fallback." >&2
56-
exit 1
63+
if [ -n "${{ secrets.AZURE_CLIENT_SECRET }}" ]; then
64+
echo "Auth mode: client secret (SP). OIDC skipped."
65+
else
66+
echo "Auth mode: OIDC (no client secret set). Ensure federated credential exists for environment 'validation'."
5767
fi
58-
echo "OIDC login failed; attempting client secret login fallback." >&2
59-
az login --service-principal -u ${{ secrets.AZURE_CLIENT_ID }} -p ${{ secrets.AZURE_CLIENT_SECRET }} --tenant ${{ secrets.AZURE_TENANT_ID }} || {
60-
echo "Client secret fallback login also failed." >&2; exit 1; }
61-
az account set --subscription ${{ secrets.AZURE_SUBSCRIPTION_ID }} || true
6268
6369
- name: Post-login diagnostics
6470
if: always()

0 commit comments

Comments
 (0)