Merge pull request #705 from TransactionProcessing/task/#704_workflow… #111
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: Publish Pre-Release Nuget and Docker | |
| on: | |
| push: | |
| # branches to consider in the event; optional, defaults to all | |
| branches: | |
| - main | |
| jobs: | |
| build: | |
| name: "Publish Pre-Release Nugets and Docker" | |
| env: | |
| ASPNETCORE_ENVIRONMENT: "Production" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2.3.4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Restore Nuget Packages | |
| run: dotnet restore FileProcessor.sln --source ${{ secrets.PUBLICFEEDURL }} --source ${{ secrets.PRIVATEFEED_URL }} | |
| - name: Build Code | |
| run: dotnet build FileProcessor.sln --configuration Release | |
| - name: 'Get Previous tag' | |
| id: get-latest-tag | |
| uses: actions-ecosystem/action-get-latest-tag@v1 | |
| with: | |
| semver_only: true | |
| - name: 'Bump Version' | |
| id: bump-semver | |
| uses: actions-ecosystem/action-bump-semver@v1 | |
| with: | |
| current_version: ${{ steps.get-latest-tag.outputs.tag }} | |
| level: patch | |
| - name: Print Version | |
| id: next_version | |
| run: echo ::set-output name=VERSION::${{ steps.bump-semver.outputs.new_version }}-build$GITHUB_RUN_NUMBER | |
| - name: Build and Publish Nuget Packages | |
| run: | | |
| dotnet pack "FileProcessor.File.DomainEvents\FileProcessor.File.DomainEvents.csproj" /p:PackageVersion=${{ steps.next_version.outputs.VERSION }} --output Nugets -c Release | |
| dotnet nuget push Nugets/FileProcessor.File.DomainEvents.${{ steps.next_version.outputs.VERSION }}.nupkg --api-key ${{ secrets.PRIVATEFEED_APIKEY }} --source ${{ secrets.PRIVATEFEED_URL }} | |
| dotnet pack "FileProcessor.FileImportLog.DomainEvents\FileProcessor.FileImportLog.DomainEvents.csproj" /p:PackageVersion=${{ steps.next_version.outputs.VERSION }} --output Nugets -c Release | |
| dotnet nuget push Nugets/FileProcessor.FileImportLog.DomainEvents.${{ steps.next_version.outputs.VERSION }}.nupkg --api-key ${{ secrets.PRIVATEFEED_APIKEY }} --source ${{ secrets.PRIVATEFEED_URL }} | |
| dotnet pack "FileProcessor.Client\FileProcessor.Client.csproj" /p:PackageVersion=${{ steps.next_version.outputs.VERSION }} --output Nugets -c Release | |
| dotnet nuget push Nugets/FileProcessor.Client.${{ steps.next_version.outputs.VERSION }}.nupkg --api-key ${{ secrets.PRIVATEFEED_APIKEY }} --source ${{ secrets.PRIVATEFEED_URL }} | |
| - name: Publish Images to Docker Hub | |
| run: | | |
| docker build . --file FileProcessor/Dockerfile --tag stuartferguson/fileprocessor:master | |
| docker login --username=${{ secrets.DOCKER_USERNAME }} --password=${{ secrets.DOCKER_PASSWORD }} | |
| docker push stuartferguson/fileprocessor:master | |
| buildwidows: | |
| name: "Publish Pre-Release Docker for Windows" | |
| env: | |
| ASPNETCORE_ENVIRONMENT: "Production" | |
| runs-on: windows-latest | |
| steps: | |
| - uses: actions/checkout@v2.3.4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Publish Windows Images to Docker Hub | |
| run: | | |
| docker build . --file FileProcessor/Dockerfilewindows --tag stuartferguson/fileprocessorwindows:master | |
| docker login --username=${{ secrets.DOCKER_USERNAME }} --password=${{ secrets.DOCKER_PASSWORD }} | |
| docker push stuartferguson/fileprocessorwindows:master |