Azure / Azure/powershell

Action Fails after Login via Az module

Open
#73 16 comments 0 reactions 1 assignee Claimed by @YanaXu View on GitHub
bug idle under-investigation
Dominant language
TypeScript
Stars
77
Forks
56
PR merge metrics
No merged PRs in 30d

Description

I am using `azure/login@v1` with `enable-AzPSSession: true` to login to azure but the next step `azure/powershell@v1` fails with error:
```
| Your Azure credentials have not been set up or have expired, please run
| Connect-AzAccount to set up your Azure credentials. No certificate
| thumbprint or secret provided for the given service principal
| '***'.
```
My yml is: [here](https://github.com/ptsouk/Policy-as-Code/blob/main/.github/workflows/AzurePowerShellLoginSample.yml)
```
name: AzurePowerShellLoginSample
on:
workflow_dispatch:

jobs:

build:
runs-on: ubuntu-latest
steps:

- name: Login via Az module
uses: azure/login@v1
with:
creds: ${{secrets.POLICY_COMPLIANCE_SCAN}}
allow-no-subscriptions: true
enable-AzPSSession: true

- name: Az PowerShell
uses: azure/powershell@v1
with:
azPSVersion: "latest"
inlineScript: |
Get-AzContext
if(-not (Get-Module Az.ResourceGraph -ListAvailable))
{
Install-Module Az.ResourceGraph -Scope CurrentUser -Force
}
$query = "resourcecontainers | where type == 'microsoft.resources/subscriptions' | project name, id | sort by name asc"
$subscriptions = Search-AzGraph -Query $query -UseTenantScope
$subscriptions
```

I found a workaround - add a ps cmdlet at the start of the inline script.

So, the following fails:

```
- name: Az PowerShell
uses: azure/powershell@v1
with:
azPSVersion: "latest"
inlineScript: |
if(-not (Get-Module Az.ResourceGraph -ListAvailable))
{
Install-Module Az.ResourceGraph -Scope CurrentUser -Force
}
$query = "resourcecontainers | where type == 'microsoft.resources/subscriptions' | project name, id | sort by name asc"
$subscriptions = Search-AzGraph -Query $query -UseTenantScope
$subscriptions
```
but his one succeeds:
```
- name: Az PowerShell
uses: azure/powershell@v1
with:
azPSVersion: "latest"
inlineScript: |
Get-AzContext
if(-not (Get-Module Az.ResourceGraph -ListAvailable))
{
Install-Module Az.ResourceGraph -Scope CurrentUser -Force
}
$query = "resourcecontainers | where type == 'microsoft.resources/subscriptions' | project name, id | sort by name asc"
$subscriptions = Search-AzGraph -Query $query -UseTenantScope
$subscriptions
```

I'm looking forward for your help.
Thanks!

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.