Team Ai
Datasetpublic

MegaBites-AI/Windows-powershell

sourceHugging Facemitupdated 6mo agoView on Hugging Face
0likes372downloads
windows-ci.yml195 linesDownload Raw Back to workflows
1name: Windows-CI2on:3  workflow_dispatch:4  push:5    branches:6      - master7      - release/**8      - github-mirror9    paths:10      - "**"11      - "*"12      - ".globalconfig"13      - "!.vsts-ci/misc-analysis.yml"14      - "!.github/ISSUE_TEMPLATE/**"15      - "!.dependabot/config.yml"16      - "!test/perf/**"17      - "!.pipelines/**"18  pull_request:19    branches:20      - master21      - release/**22      - github-mirror23      - "*-feature"24 25# Path filters for PRs need to go into the changes job26 27concurrency:28  group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }}29  cancel-in-progress: ${{ contains(github.ref, 'merge')}}30 31permissions:32  contents: read33 34run-name: "${{ github.ref_name }} - ${{ github.run_number }}"35 36env:37  DOTNET_CLI_TELEMETRY_OPTOUT: 138  DOTNET_NOLOGO: 139  GIT_CONFIG_PARAMETERS: "'core.autocrlf=false'"40  NugetSecurityAnalysisWarningLevel: none41  POWERSHELL_TELEMETRY_OPTOUT: 142  __SuppressAnsiEscapeSequences: 143  nugetMultiFeedWarnLevel: none44  SYSTEM_ARTIFACTSDIRECTORY: ${{ github.workspace }}/artifacts45  BUILD_ARTIFACTSTAGINGDIRECTORY: ${{ github.workspace }}/artifacts46jobs:47  changes:48    name: Change Detection49    runs-on: ubuntu-latest50    if: startsWith(github.repository_owner, 'azure') || github.repository_owner == 'PowerShell'51    # Required permissions52    permissions:53      pull-requests: read54      contents: read55 56    # Set job outputs to values from filter step57    outputs:58      source: ${{ steps.filter.outputs.source }}59      buildModuleChanged: ${{ steps.filter.outputs.buildModuleChanged }}60      packagingChanged: ${{ steps.filter.outputs.packagingChanged }}61    steps:62      - name: checkout63        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.264 65      - name: Change Detection66        id: filter67        uses: "./.github/actions/infrastructure/path-filters"68        with:69          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}70 71  ci_build:72    name: Build PowerShell73    needs: changes74    if: ${{ needs.changes.outputs.source == 'true' || needs.changes.outputs.buildModuleChanged == 'true' }}75    runs-on: windows-latest76    steps:77      - name: checkout78        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.279        with:80          fetch-depth: 100081      - name: Build82        uses: "./.github/actions/build/ci"83  windows_test_unelevated_ci:84    name: Windows Unelevated CI85    needs:86      - ci_build87      - changes88    if: ${{ needs.changes.outputs.source == 'true' || needs.changes.outputs.buildModuleChanged == 'true' }}89    runs-on: windows-latest90    steps:91      - name: checkout92        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.293        with:94          fetch-depth: 100095      - name: Windows Unelevated CI96        uses: "./.github/actions/test/windows"97        with:98          purpose: UnelevatedPesterTests99          tagSet: CI100          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}101  windows_test_elevated_ci:102    name: Windows Elevated CI103    needs:104      - ci_build105      - changes106    if: ${{ needs.changes.outputs.source == 'true' || needs.changes.outputs.buildModuleChanged == 'true' }}107    runs-on: windows-latest108    steps:109      - name: checkout110        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2111        with:112          fetch-depth: 1000113      - name: Windows Elevated CI114        uses: "./.github/actions/test/windows"115        with:116          purpose: ElevatedPesterTests117          tagSet: CI118          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}119  windows_test_unelevated_others:120    name: Windows Unelevated Others121    needs:122      - ci_build123      - changes124    if: ${{ needs.changes.outputs.source == 'true' || needs.changes.outputs.buildModuleChanged == 'true' }}125    runs-on: windows-latest126    steps:127      - name: checkout128        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2129        with:130          fetch-depth: 1000131      - name: Windows Unelevated Others132        uses: "./.github/actions/test/windows"133        with:134          purpose: UnelevatedPesterTests135          tagSet: Others136          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}137  windows_test_elevated_others:138    name: Windows Elevated Others139    needs:140      - ci_build141      - changes142    if: ${{ needs.changes.outputs.source == 'true' || needs.changes.outputs.buildModuleChanged == 'true' }}143    runs-on: windows-latest144    steps:145      - name: checkout146        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2147        with:148          fetch-depth: 1000149      - name: Windows Elevated Others150        uses: "./.github/actions/test/windows"151        with:152          purpose: ElevatedPesterTests153          tagSet: Others154          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}155  xunit_tests:156    name: xUnit Tests157    needs:158      - changes159    if: ${{ needs.changes.outputs.source == 'true' || needs.changes.outputs.buildModuleChanged == 'true' }}160    uses: ./.github/workflows/xunit-tests.yml161    with:162      runner_os: windows-latest163      test_results_artifact_name: testResults-xunit164  analyze:165    name: CodeQL Analysis166    needs: changes167    if: ${{ needs.changes.outputs.source == 'true' || needs.changes.outputs.buildModuleChanged == 'true' }}168    uses: ./.github/workflows/analyze-reusable.yml169    permissions:170      actions: read171      contents: read172      security-events: write173    with:174      runner_os: windows-latest175  windows_packaging:176    name: Windows Packaging177    needs:178      - changes179    if: ${{ needs.changes.outputs.packagingChanged == 'true' }}180    uses: ./.github/workflows/windows-packaging-reusable.yml181  ready_to_merge:182    name: windows ready to merge183    needs:184      - xunit_tests185      - windows_test_elevated_ci186      - windows_test_elevated_others187      - windows_test_unelevated_ci188      - windows_test_unelevated_others189      - analyze190      - windows_packaging191    if: always()192    uses: PowerShell/compliance/.github/workflows/ready-to-merge.yml@c8b3ad5819ad7078f3e375519b4f8c6232d1cbdf # v1.0.0193    with:194      needs_context: ${{ toJson(needs) }}195