[ODS-6593] Switch build setup for next release v7.4 #923
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
# When to Use : | |
# 1.At the time of every major/minor version new development must run to get new major/minor version updated in Azure Artifacts | |
# 2.If any new public method get added/modified in Repository class of Ed-Fi-ODS\Application\EdFi.Admin.DataAccess project which interacts with EdFi_Admin Database. | |
# 3.If any .NET new major/minor version upgrade or Nuget package version upgrade happens in Ed-Fi-ODS\Application\EdFi.Admin.DataAccess project | |
name: Lib EdFi.Admin.DataAccess | |
on: | |
pull_request: | |
branches: [main, 'b-v*-patch*','feature-*'] | |
workflow_dispatch: | |
permissions: read-all | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
env: | |
INFORMATIONAL_VERSION: "7.4" | |
BUILD_INCREMENTER: "-912" | |
CONFIGURATION: "Release" | |
AZURE_ARTIFACT_URL: "https://pkgs.dev.azure.com/ed-fi-alliance/Ed-Fi-Alliance-OSS/_packaging/EdFi/nuget/v3/index.json" | |
AZURE_ARTIFACT_NUGET_KEY: ${{ secrets.AZURE_ARTIFACTS_PERSONAL_ACCESS_TOKEN }} | |
VSS_NUGET_EXTERNAL_FEED_ENDPOINTS : '{"endpointCredentials": [{"endpoint": "https://pkgs.dev.azure.com/ed-fi-alliance/Ed-Fi-Alliance-OSS/_packaging/EdFi/nuget/v3/index.json","password": "${{ secrets.AZURE_ARTIFACTS_PERSONAL_ACCESS_TOKEN }}"}]}' | |
REPOSITORY_OWNER: ${{ GITHUB.REPOSITORY_OWNER }} | |
jobs: | |
build: | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Check for Azure token | |
if: ${{ env.REPOSITORY_OWNER == 'Ed-Fi-Alliance-OSS' && env.AZURE_ARTIFACT_NUGET_KEY == '' }} | |
run: | | |
echo "::error::Missing Azure Token" | |
exit 1 | |
- name: Checkout Ed-Fi-ODS | |
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4 | |
with: | |
repository: Ed-Fi-Alliance-OSS/Ed-Fi-ODS | |
# This step shall be removed in ODS-6572 | |
- name: Install Mono and Nuget | |
working-directory: ./.github/workflows | |
run: sudo ./install-mono.sh | |
- name: Cache Nuget packages | |
uses: actions/cache@ab5e6d0c87105b4c9c2047343972218f562e4319 #v4.0.1 | |
with: | |
path: ~/.nuget/packages | |
key: ${{ runner.os }}-nuget-${{ hashFiles('**/*.csproj*', '**/configuration.packages.json') }} | |
restore-keys: | | |
${{ runner.os }}-nuget- | |
- name: update BUILD_INCREMENTER | |
run: | | |
$newRevision = ([int]${{ github.run_number }}) + ([int]${{env.BUILD_INCREMENTER}}) | |
if ($newRevision -lt 0) { | |
$newRevision = 1 | |
echo "BUILD_INCREMENTER=$newRevision">> $env:GITHUB_ENV | |
} | |
shell: pwsh | |
- name: Restore NuGet packages | |
run: | | |
.\build.githubactions.ps1 restore -Solution "Application/EdFi.Admin.DataAccess/EdFi.Admin.DataAccess.sln" | |
shell: pwsh | |
- name: build | |
run: | | |
.\build.githubactions.ps1 build -Configuration ${{ env.CONFIGURATION }} -InformationalVersion ${{ env.INFORMATIONAL_VERSION}} -BuildCounter ${{ github.run_number }} -BuildIncrementer ${{env.BUILD_INCREMENTER}} -Solution "Application/EdFi.Admin.DataAccess/EdFi.Admin.DataAccess.sln" -ProjectFile "Application/EdFi.Admin.DataAccess/EdFi.Admin.DataAccess.csproj" | |
shell: pwsh | |
- name: Run Unit tests | |
run: | | |
.\build.githubactions.ps1 test -Configuration ${{ env.CONFIGURATION }} -Solution "Application/EdFi.Admin.DataAccess/EdFi.Admin.DataAccess.sln" -ProjectFile "Application/EdFi.Admin.DataAccess/EdFi.Admin.DataAccess.csproj" -TestFilter "DataAccessIntegrationTests" | |
shell: pwsh | |
- name: pack | |
run: | | |
.\build.githubactions.ps1 pack -InformationalVersion ${{ env.INFORMATIONAL_VERSION }} -BuildCounter ${{ github.run_number }} -BuildIncrementer ${{env.BUILD_INCREMENTER}} -Solution "Application/EdFi.Admin.DataAccess/EdFi.Admin.DataAccess.sln" -ProjectFile "Application/EdFi.Admin.DataAccess/EdFi.Admin.DataAccess.csproj" -PackageName "EdFi.Suite3.Admin.DataAccess" | |
shell: pwsh | |
- name: Install-credential-handler | |
if: ${{ env.AZURE_ARTIFACT_NUGET_KEY != '' && github.event_name == 'workflow_dispatch' }} | |
run: | | |
.\build.githubactions.ps1 InstallCredentialHandler | |
shell: pwsh | |
- name: publish | |
if: ${{ env.AZURE_ARTIFACT_NUGET_KEY != '' && github.event_name == 'workflow_dispatch' }} | |
run: | | |
.\build.githubactions.ps1 publish -InformationalVersion ${{ env.INFORMATIONAL_VERSION }} -BuildCounter ${{ github.run_number }} -BuildIncrementer ${{env.BUILD_INCREMENTER}} -NuGetApiKey ${{ env.AZURE_ARTIFACT_NUGET_KEY }} -EdFiNuGetFeed ${{env.AZURE_ARTIFACT_URL}} -Solution "Application/EdFi.Admin.DataAccess/EdFi.Admin.DataAccess.sln" -ProjectFile "Application/EdFi.Admin.DataAccess/EdFi.Admin.DataAccess.csproj" -PackageName "EdFi.Suite3.Admin.DataAccess" | |
shell: pwsh | |
- name: Upload EdFi.Suite3.Admin.DataAccess Artifacts | |
if: success() | |
uses: actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 # v4.3.0 | |
with: | |
name: NugetPackages.Artifacts | |
path: ${{ github.workspace }}/NugetPackages/*.nupkg |