Merge branch 'master' into yanxu/pre_readme #243
Workflow file for this run
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
name: Azure Login Action Positive Test | |
on: | |
workflow_dispatch: | |
push: | |
permissions: | |
id-token: write | |
contents: read | |
jobs: | |
BasicTest: | |
strategy: | |
matrix: | |
os: [ubuntu-latest, windows-latest, macos-latest] | |
runs-on: ${{ matrix.os }} | |
environment: Automation test | |
steps: | |
- name: 'Checking out repo code' | |
uses: actions/checkout@v4 | |
- name: Set Node.js 20.x for GitHub Action | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
- name: 'Validate build' | |
run: | | |
npm install | |
npm run build | |
- name: 'Run L0 tests' | |
run: | | |
npm run test | |
- name: Login with creds | |
uses: ./ | |
with: | |
creds: ${{secrets.SP1}} | |
enable-AzPSSession: true | |
- name: Run Azure Cli | |
run: | | |
az account show --output none | |
az group show --name GitHubAction_CI_RG --output none | |
az vm list --output none | |
- name: Run Azure PowerShell | |
uses: azure/powershell@v2 | |
with: | |
azPSVersion: "latest" | |
inlineScript: | | |
$checkResult = (Get-AzContext).Environment.Name -eq 'AzureCloud' | |
if(-not $checkResult){ | |
throw "Not all checks passed!" | |
} | |
- name: Login with individual parameters | |
uses: ./ | |
with: | |
client-id: ${{ secrets.SP1_CLIENT_ID }} | |
tenant-id: ${{ secrets.SP1_TENANT_ID }} | |
subscription-id: ${{ secrets.SP1_SUBSCRIPTION_ID }} | |
enable-AzPSSession: true | |
- name: Run Azure Cli again | |
run: | | |
az account show --output none | |
- name: Run Azure PowerShell again | |
uses: azure/powershell@v2 | |
with: | |
azPSVersion: "latest" | |
inlineScript: | | |
$checkResult = (Get-AzContext).Environment.Name -eq 'AzureCloud' | |
if(-not $checkResult){ | |
throw "Not all checks passed!" | |
} | |
- name: Login with explicit auth-type | |
uses: ./ | |
with: | |
creds: ${{secrets.SP1}} | |
auth-type: SERVICE_PRINCIPAL | |
enable-AzPSSession: true | |
- name: Run Azure Cli | |
run: | | |
az account show --output none | |
az group show --name GitHubAction_CI_RG --output none | |
az vm list --output none | |
- name: Run Azure PowerShell | |
uses: azure/powershell@v2 | |
with: | |
azPSVersion: "latest" | |
inlineScript: | | |
$checkResult = (Get-AzContext).Environment.Name -eq 'AzureCloud' | |
if(-not $checkResult){ | |
throw "Not all checks passed!" | |
} | |
ParameterTest: | |
strategy: | |
matrix: | |
os: [ubuntu-latest, windows-latest, macos-latest] | |
runs-on: ${{ matrix.os }} | |
environment: Automation test | |
steps: | |
- name: 'Checking out repo code' | |
uses: actions/checkout@v4 | |
- name: Set Node.js 20.x for GitHub Action | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
- name: 'Validate build' | |
run: | | |
npm install | |
npm run build | |
- name: Login with creds, disable ps session | |
uses: ./ | |
with: | |
creds: ${{secrets.SP1}} | |
enable-AzPSSession: false | |
- name: Run Azure Cli | |
run: | | |
az account show --output none | |
az group show --name GitHubAction_CI_RG --output none | |
az vm list --output none | |
- name: Login with creds, wrong boolean value | |
uses: ./ | |
with: | |
creds: ${{secrets.SP1}} | |
enable-AzPSSession: notboolean | |
- name: Run Azure Cli | |
run: | | |
az account show --output none | |
az group show --name GitHubAction_CI_RG --output none | |
az vm list --output none | |
- name: Login with creds, allow no subscription | |
uses: ./ | |
with: | |
creds: ${{secrets.SP1}} | |
allow-no-subscriptions: true | |
enable-AzPSSession: true | |
- name: Run Azure Cli | |
run: | | |
az account show --output none | |
az group show --name GitHubAction_CI_RG --output none | |
az vm list --output none | |
- name: Run Azure PowerShell | |
uses: azure/powershell@v2 | |
with: | |
azPSVersion: "latest" | |
inlineScript: | | |
$checkResult = (Get-AzContext).Environment.Name -eq 'AzureCloud' | |
if(-not $checkResult){ | |
throw "Not all checks passed!" | |
} | |
- name: Login with individual parameters, allow no subscription | |
uses: ./ | |
with: | |
client-id: ${{ secrets.SP1_CLIENT_ID }} | |
tenant-id: ${{ secrets.SP1_TENANT_ID}} | |
subscription-id: ${{ secrets.SP1_SUBSCRIPTION_ID }} | |
allow-no-subscriptions: true | |
enable-AzPSSession: true | |
- name: Run Azure Cli again | |
run: | | |
az account show --output none | |
- name: Run Azure PowerShell again | |
uses: azure/powershell@v2 | |
with: | |
azPSVersion: "latest" | |
inlineScript: | | |
$checkResult = (Get-AzContext).Environment.Name -eq 'AzureCloud' | |
if(-not $checkResult){ | |
throw "Not all checks passed!" | |
} | |
- name: Login with individual parameters, no subscription, allow no subscription | |
uses: ./ | |
with: | |
client-id: ${{ secrets.OIDC_SP2_CLIENT_ID }} | |
tenant-id: ${{ secrets.OIDC_SP2_TENANT_ID }} | |
allow-no-subscriptions: true | |
enable-AzPSSession: true | |
- name: Run Azure Cli | |
shell: pwsh | |
run: | | |
$checkResult = (az account list --output json | ConvertFrom-Json).Count -eq 3 | |
if(-not $checkResult){ | |
throw "Not all checks passed!" | |
} | |
- name: Run Azure PowerShell | |
uses: azure/powershell@v2 | |
with: | |
azPSVersion: "latest" | |
inlineScript: | | |
$checkResult = (Get-AzContext).Environment.Name -eq 'AzureCloud' | |
if(-not $checkResult){ | |
throw "Not all checks passed!" | |
} | |
- name: Login with creds, no subscription, allow no subscription | |
uses: ./ | |
with: | |
creds: '{"clientId":"${{ secrets.OIDC_SP2_CLIENT_ID }}","clientSecret":"${{ secrets.SP2_CLIENT_SECRET }}","tenantId":"${{ secrets.OIDC_SP2_TENANT_ID }}"}' | |
allow-no-subscriptions: true | |
enable-AzPSSession: true | |
- name: Run Azure Cli | |
run: | | |
az account show --output none | |
- name: Run Azure PowerShell | |
uses: azure/powershell@v2 | |
with: | |
azPSVersion: "latest" | |
inlineScript: | | |
$checkResult = (Get-AzContext).Environment.Name -eq 'AzureCloud' | |
if(-not $checkResult){ | |
throw "Not all checks passed!" | |
} | |
InDockerTest: | |
runs-on: ubuntu-latest | |
container: ubuntu:24.04 | |
environment: Automation test | |
steps: | |
- name: 'Checking out repo code' | |
uses: actions/checkout@v4 | |
- name: Set Node.js 20.x for GitHub Action | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
- name: Install Azure CLI | |
run: | | |
apt-get update | |
apt-get install -y curl | |
curl -sL https://aka.ms/InstallAzureCLIDeb | bash | |
- name: Check Azure CLI Version | |
run: | | |
az --version | |
- name: Install Powershell | |
run: | | |
apt-get update | |
apt-get install -y wget | |
wget https://mirror.it.ubc.ca/ubuntu/pool/main/i/icu/libicu72_72.1-3ubuntu3_amd64.deb | |
dpkg -i libicu72_72.1-3ubuntu3_amd64.deb | |
wget https://github.com/PowerShell/PowerShell/releases/download/v7.4.3/powershell_7.4.3-1.deb_amd64.deb | |
dpkg -i powershell_7.4.3-1.deb_amd64.deb | |
- name: Check Powershell Version | |
shell: pwsh | |
run: | | |
$PSVersionTable | |
- name: Install Azure Powershell | |
shell: pwsh | |
run: | | |
Install-Module -Name Az -Repository PSGallery -Force | |
- name: Check Azure Powershell Version | |
shell: pwsh | |
run: | | |
Get-Module -ListAvailable Az | |
- name: 'Validate build' | |
run: | | |
npm install | |
npm run build | |
- name: 'Run L0 tests' | |
run: | | |
npm run test | |
- name: Login with individual parameters | |
uses: ./ | |
with: | |
client-id: ${{ secrets.SP1_CLIENT_ID }} | |
tenant-id: ${{ secrets.SP1_TENANT_ID }} | |
subscription-id: ${{ secrets.SP1_SUBSCRIPTION_ID }} | |
enable-AzPSSession: true | |
- name: Run Azure Cli again | |
run: | | |
az group list --output none | |
- name: Run Azure PowerShell again | |
uses: azure/powershell@v2 | |
with: | |
azPSVersion: "latest" | |
inlineScript: | | |
$checkResult = Get-AzResourceGroup |