0
0
mirror of https://github.com/alex289/CleanArchitecture.git synced 2025-07-04 04:22:56 +00:00

feat: Create GitHub releases automatically

This commit is contained in:
alex289 2023-12-06 10:00:25 +01:00
parent 2e700922bf
commit 6db093103e
No known key found for this signature in database
GPG Key ID: 573F77CD2D87F863
2 changed files with 30 additions and 2 deletions

View File

@ -19,35 +19,60 @@ jobs:
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Install .NET Core - name: Install .NET Core
uses: actions/setup-dotnet@v3 uses: actions/setup-dotnet@v3
with: with:
dotnet-version: | dotnet-version: |
8.x.x 8.x.x
- name: Restore dependencies - name: Restore dependencies
run: dotnet restore run: dotnet restore
- name: Build - name: Build
run: dotnet build --no-restore run: dotnet build --no-restore
- name: Test - name: Test
run: dotnet test --no-build --verbosity normal run: dotnet test --no-build --verbosity normal
cd: cd:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: ci needs: ci
if: github.ref == 'refs/heads/main' if: github.event_name == 'workflow_run'
steps: steps:
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v3 uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3 uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub - name: Login to Docker Hub
uses: docker/login-action@v3 uses: docker/login-action@v3
with: with:
username: ${{ secrets.DOCKERHUB_USERNAME }} username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }} password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Read Version
id: read_version
run: echo ::set-output name=VERSION::$(jq -r '.version' version.json)
- name: Build and push - name: Build and push
uses: docker/build-push-action@v5 uses: docker/build-push-action@v5
with: with:
# platforms: linux/amd64,linux/arm64 # platforms: linux/amd64,linux/arm64
push: true push: true
tags: ${{ env.DOCKER_IMAGE }}:latest tags: ${{ env.DOCKER_IMAGE }}:${{ steps.read_version.outputs.VERSION }}, ${{ env.DOCKER_IMAGE }}:latest
- name: Create and Push Tag
run: |
git config user.name "GitHub Actions"
git config user.email "actions@github.com"
git tag -a v${{ steps.read_version.outputs.VERSION }} -m "Version ${{ steps.read_version.outputs.VERSION }}"
git push origin v${{ steps.read_version.outputs.VERSION }}
- name: Create Release
uses: softprops/action-gh-release@v1
with:
title: v${{ steps.read_version.outputs.VERSION }}
tag_name: v${{ steps.read_version.outputs.VERSION }}
generate_release_notes: true

3
version.json Normal file
View File

@ -0,0 +1,3 @@
{
"version": "0.1.0"
}