diff --git a/.github/workflows/nugetserver-ci.yml b/.github/workflows/nugetserver-ci.yml new file mode 100644 index 0000000..f3751c1 --- /dev/null +++ b/.github/workflows/nugetserver-ci.yml @@ -0,0 +1,50 @@ +name: NuGet.Server CI + +on: + pull_request: + push: + branches: + - main + schedule: + - cron: '0 12 * * 1-5' # Weekdays at 8 AM Eastern (UTC 12:00) + workflow_dispatch: + +env: + BuildConfiguration: Release + SimplePackageVersion: '1.0.0' + +jobs: + build-and-test: + name: Build and Test + runs-on: windows-2022 + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 1 + + - name: Build + shell: powershell + run: | + $buildNumber = "${{ github.run_number }}" + $branch = "${{ github.ref_name }}" -replace '[_/]', '-' + .\build.ps1 ` + -Configuration $env:BuildConfiguration ` + -BuildNumber $buildNumber ` + -SimpleVersion $env:SimplePackageVersion ` + -SemanticVersion "$env:SimplePackageVersion-$branch-$buildNumber" ` + -Branch "${{ github.ref_name }}" ` + -CommitSHA "${{ github.sha }}" + + - name: Run tests + shell: powershell + run: | + .\test.ps1 ` + -Configuration $env:BuildConfiguration ` + -BuildNumber ${{ github.run_number }} + + - name: Upload test results + if: always() + uses: actions/upload-artifact@v4 + with: + name: test-results + path: Results.*.xml diff --git a/.pipelines/NuGet.Server-CI.yml b/.pipelines/NuGet.Server-CI.yml deleted file mode 100644 index 37c19f5..0000000 --- a/.pipelines/NuGet.Server-CI.yml +++ /dev/null @@ -1,86 +0,0 @@ -name: NuGet.Server CI $(BuildId) - -trigger: - branches: - include: - - '*' - batch: True - -variables: -- name: Assemblies - value: '' -- name: BuildConfiguration - value: Release -- name: Codeql.Enabled - value: true -- name: nugetMultiFeedWarnLevel - value: none -- name: NugetSecurityAnalysisWarningLevel - value: none -- name: PackageVersion - value: $(SimplePackageVersion)$(PrereleaseVersion) -- name: PrereleaseVersion - value: -$(NuGetServerBranch)-$(Build.BuildId) -- name: SimplePackageVersion - value: 1.0.0 -- name: NuGetServerDirectory - value: ns -- name: NuGetServerPath - value: $(Agent.BuildDirectory)\$(NuGetServerDirectory) -- name: ArtifactsFolder - value: $(NuGetServerPath)\artifacts -- name: NuGetServerBranch - value: $(Build.SourceBranchName) - -resources: - repositories: - - repository: self - type: git - ref: refs/heads/main - - repository: 1ESPipelineTemplates - type: git - name: 1ESPipelineTemplates/1ESPipelineTemplates - ref: refs/tags/release - -extends: - template: v1/1ES.Unofficial.PipelineTemplate.yml@1ESPipelineTemplates - parameters: - pool: - name: NuGet-1ES-Hosted-Pool - image: NuGet-1ESPT-Win2022 - os: windows - customBuildTags: - - ES365AIMigrationTooling - stages: - - stage: stage - jobs: - - job: Phase_1 - displayName: Phase 1 - cancelTimeoutInMinutes: 1 - steps: - - checkout: self - fetchDepth: 1 - clean: true - fetchTags: false - path: $(NuGetServerDirectory) - - task: PowerShell@1 - name: PowerShell_1 - displayName: Build - inputs: - scriptName: $(NuGetServerPath)\build.ps1 - arguments: -Configuration $(BuildConfiguration) -BuildNumber $(Build.BuildId) -SimpleVersion $(SimplePackageVersion) -SemanticVersion $(PackageVersion) -Branch $(NuGetServerBranch) -CommitSHA $(Build.SourceVersion) - workingFolder: $(NuGetServerPath) - - task: PowerShell@1 - name: PowerShell_2 - displayName: Run unit tests - inputs: - scriptName: $(NuGetServerPath)\test.ps1 - arguments: -Configuration $(BuildConfiguration) -BuildNumber $(Build.BuildId) - workingFolder: $(NuGetServerPath) - - task: PublishTestResults@1 - name: PublishTestResults_3 - displayName: Publish Test Results Results.*.xml - condition: succeededOrFailed() - inputs: - testRunner: XUnit - testResultsFiles: $(NuGetServerPath)\Results.*.xml