vNext #454
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: Validate | |
| permissions: { } | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| branches: | |
| - 'main' | |
| jobs: | |
| SetupBuildInfo: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| id-token: write | |
| pull-requests: write | |
| outputs: | |
| build-name: ${{ steps.SetupBuildInfo.outputs.build-name }} | |
| build-id: ${{ steps.SetupBuildInfo.outputs.build-id }} | |
| build-version: ${{ steps.SetupBuildInfo.outputs.build-version }} | |
| build-timestamp: ${{ steps.SetupBuildInfo.outputs.build-timestamp }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: '10.0.x' | |
| - name: SetupBuildInfo | |
| id: SetupBuildInfo | |
| run: dotnet run --project _atom/_atom.csproj SetupBuildInfo --skip --headless | |
| env: | |
| azure-vault-app-secret: ${{ secrets.AZURE_VAULT_APP_SECRET }} | |
| azure-vault-address: ${{ vars.AZURE_VAULT_ADDRESS }} | |
| azure-vault-tenant-id: ${{ vars.AZURE_VAULT_TENANT_ID }} | |
| azure-vault-app-id: ${{ vars.AZURE_VAULT_APP_ID }} | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| pull-request-number: ${{ github.event.number }} | |
| PackProjects: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: '10.0.x' | |
| - name: PackProjects | |
| id: PackProjects | |
| run: dotnet run --project _atom/_atom.csproj PackProjects --skip --headless | |
| PackTool: | |
| strategy: | |
| matrix: | |
| job-runs-on: [ windows-latest, windows-11-arm, ubuntu-latest, ubuntu-24.04-arm, macos-15-intel, macos-latest ] | |
| runs-on: ${{ matrix.job-runs-on }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: '10.0.x' | |
| - name: PackTool | |
| id: PackTool | |
| run: dotnet run --project _atom/_atom.csproj PackTool --skip --headless | |
| env: | |
| job-runs-on: ${{ matrix.job-runs-on }} | |
| build-slice: ${{ matrix.job-runs-on }} | |
| TestProjects: | |
| strategy: | |
| matrix: | |
| job-runs-on: [ windows-latest, windows-11-arm, ubuntu-latest, ubuntu-24.04-arm, macos-15-intel, macos-latest ] | |
| test-framework: [ net8.0, net9.0, net10.0 ] | |
| runs-on: ${{ matrix.job-runs-on }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: '10.0.x' | |
| - uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: '8.0.x' | |
| - uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: '9.0.x' | |
| - name: TestProjects | |
| id: TestProjects | |
| run: dotnet run --project _atom/_atom.csproj TestProjects --skip --headless | |
| env: | |
| job-runs-on: ${{ matrix.job-runs-on }} | |
| test-framework: ${{ matrix.test-framework }} | |
| build-slice: ${{ matrix.job-runs-on }}-${{ matrix.test-framework }} | |
| - name: Upload DecSm.Atom.Tests | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: DecSm.Atom.Tests-${{ matrix.job-runs-on }}-${{ matrix.test-framework }} | |
| path: "${{ github.workspace }}/.github/publish/DecSm.Atom.Tests" | |
| - name: Upload DecSm.Atom.Analyzers.Tests | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: DecSm.Atom.Analyzers.Tests-${{ matrix.job-runs-on }}-${{ matrix.test-framework }} | |
| path: "${{ github.workspace }}/.github/publish/DecSm.Atom.Analyzers.Tests" | |
| - name: Upload DecSm.Atom.SourceGenerators.Tests | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: DecSm.Atom.SourceGenerators.Tests-${{ matrix.job-runs-on }}-${{ matrix.test-framework }} | |
| path: "${{ github.workspace }}/.github/publish/DecSm.Atom.SourceGenerators.Tests" | |
| - name: Upload DecSm.Atom.Module.DevopsWorkflows.Tests | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: DecSm.Atom.Module.DevopsWorkflows.Tests-${{ matrix.job-runs-on }}-${{ matrix.test-framework }} | |
| path: "${{ github.workspace }}/.github/publish/DecSm.Atom.Module.DevopsWorkflows.Tests" | |
| - name: Upload DecSm.Atom.Module.GithubWorkflows.Tests | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: DecSm.Atom.Module.GithubWorkflows.Tests-${{ matrix.job-runs-on }}-${{ matrix.test-framework }} | |
| path: "${{ github.workspace }}/.github/publish/DecSm.Atom.Module.GithubWorkflows.Tests" | |
| - name: Upload DecSm.Atom.Tool.Tests | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: DecSm.Atom.Tool.Tests-${{ matrix.job-runs-on }}-${{ matrix.test-framework }} | |
| path: "${{ github.workspace }}/.github/publish/DecSm.Atom.Tool.Tests" |