Merge pull request #24 from N0tHorizon/🌕Nextgen #106
This file contains hidden or 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: Environment Compatibility Matrix | |
| on: | |
| push: | |
| branches: ["🌕Nextgen", "📦Current"] | |
| pull_request: | |
| branches: ["🌕Nextgen", "📦Current"] | |
| jobs: | |
| matrix-test: | |
| name: "env: ${{ matrix.os }} | Shell: ${{ matrix.shell }} | Admin: ${{ matrix.admin }} | Locale: ${{ matrix.locale }}" | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [windows-2022] | |
| shell: [pwsh, powershell] | |
| admin: [true, false] | |
| locale: [ | |
| en-US, en-GB, de-DE, fr-FR, es-ES, it-IT, ja-JP, ko-KR, zh-CN, zh-TW, | |
| ru-RU, pt-BR, pt-PT | |
| ] | |
| steps: | |
| - name: Checkout repo | |
| uses: actions/checkout@v4 | |
| - name: Set locale | |
| run: | | |
| Set-WinSystemLocale ${{ matrix.locale }} | |
| shell: powershell | |
| continue-on-error: true | |
| # ==== Additional Checks ==== | |
| - name: Check Windows Version | |
| run: | | |
| Write-Host "Windows version:" | |
| Get-ComputerInfo | Select-Object WindowsProductName, WindowsVersion, OsHardwareAbstractionLayer | |
| shell: powershell | |
| - name: Check PowerShell Version | |
| run: | | |
| Write-Host "PowerShell version:" | |
| $PSVersionTable | |
| shell: powershell | |
| - name: Check Disk Space | |
| run: | | |
| Get-PSDrive -PSProvider FileSystem | Select-Object Name, Used, Free, @{Name="FreeGB";Expression={[math]::Round($_.Free/1GB,2)}} | |
| shell: powershell | |
| - name: Check Network Connectivity | |
| run: | | |
| try { | |
| $response = Invoke-WebRequest -Uri "https://github.com" -UseBasicParsing -TimeoutSec 10 | |
| Write-Host "Network connectivity OK. Status code: $($response.StatusCode)" | |
| } catch { | |
| Write-Host "Network connectivity FAILED: $($_.Exception.Message)" | |
| exit 1 | |
| } | |
| shell: powershell | |
| - name: Run as admin (if required) | |
| if: ${{ matrix.admin == 'true' }} | |
| run: | | |
| Start-Process -FilePath ${{ matrix.shell }} -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File windowstelemetryblocker.ps1 -DryRun -Modules telemetry' -Verb RunAs -Wait | |
| shell: powershell | |
| continue-on-error: true | |
| - name: Run as non-admin (if required) | |
| if: ${{ matrix.admin == 'false' }} | |
| run: | | |
| ${{ matrix.shell }} -NoProfile -ExecutionPolicy Bypass -File windowstelemetryblocker.ps1 -DryRun -Modules telemetry | |
| shell: powershell | |
| continue-on-error: true | |
| - name: Upload logs and report | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: logs-${{ matrix.os }}-${{ matrix.shell }}-${{ matrix.admin }}-${{ matrix.locale }} | |
| path: | | |
| telemetry-blocker.log | |
| telemetry-blocker-errors.log | |
| telemetry-blocker-report.md |