Update CounterController.cs #13
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
name: "[PRO][PUBLISH]" | |
on: | |
push: | |
branches: [ master ] | |
paths-ignore: | |
- '.git/**' | |
- '.github/**' | |
env: | |
APP_NAME: "FlappyBird" | |
jobs: | |
Build_And_Deploy: | |
runs-on: macos-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
ref: master | |
- name: Setup dotnet | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: | | |
8.0.x | |
- name: Define file name to update version | |
run: echo "FILENAME=$(echo './Directory.Build.props')" >> $GITHUB_ENV | |
- name: Print the file name to update version | |
run: echo $FILENAME | |
- name: Get the current version | |
run: echo "VERSION=$(grep -Eo '[0-9]\.[0-9]+.[0-9]+' ${{ env.FILENAME }} )" >> $GITHUB_ENV | |
- name: Print the current version | |
run: echo $VERSION | |
- name: Get mayor version | |
run: echo "MAYOR=$(echo ${{ env.VERSION }} | cut -f1 -d.)" >> $GITHUB_ENV | |
- name: Print mayor version | |
run: echo $MAYOR | |
- name: Get minor version | |
run: echo "MINOR=$(echo ${{ env.VERSION }} | cut -f2 -d.)" >> $GITHUB_ENV | |
- name: Print minor version | |
run: echo $MINOR | |
- name: Get alpha version | |
run: echo "ALPHA=$(echo ${{ env.VERSION }} | cut -f3 -d.)" >> $GITHUB_ENV | |
- name: Print current alpha version | |
run: echo $ALPHA | |
- name: Increment version | |
run: echo "ALPHA=$(((ALPHA=ALPHA+1)))" >> $GITHUB_ENV | |
- name: Alpha version incremented | |
run: echo $ALPHA | |
- name: Check alpha version | |
run: if [[ "$ALPHA" -gt 9 ]]; then echo "MINOR=$(((MINOR=MINOR+1)))" >> $GITHUB_ENV ; echo "ALPHA=$(((ALPHA=0)))" >> $GITHUB_ENV ; fi | |
- name: Check minor version | |
run: if [[ "$MINOR" -gt 9 ]]; then echo "MAYOR=$(((MAYOR=MAYOR+1)))" >> $GITHUB_ENV; echo "MINOR=$(((MINOR=0)))" >> $GITHUB_ENV; fi | |
- name: Create the next version | |
run: echo "VERSIONFINAL=$(echo '${{env.MAYOR}}.${{env.MINOR}}.${{env.ALPHA}}')" >> $GITHUB_ENV | |
- name: Print the next version | |
run: echo $VERSIONFINAL | |
- name: Write in filename the next version | |
run: sed -i "" "s/$VERSION/$VERSIONFINAL/" Directory.Build.props | |
- name: Get the current version | |
run: echo "CURRENTVERSION=$(grep -Eo '[0-9]\.[0-9]+.[0-9]+' ${{ env.FILENAME }} )" >> $GITHUB_ENV | |
- name: Print the next version | |
run: echo $CURRENTVERSION | |
- name: publish osx-arm64 | |
run: dotnet publish -c Release -f net8.0 -p:PublishTrimmed=false -r osx-arm64 -o ./.build/osx_arm64/ | |
- name: zip osx-arm64 | |
run: zip -r ./.build/${{ env.APP_NAME }}_osx_arm64.zip ./.build/osx_arm64/ | |
- name: publish osx-x64 | |
run: dotnet publish -c Release -f net8.0 -p:PublishTrimmed=false -r osx-x64 -o ./.build/osx_x64/ | |
- name: zip osx-x64 | |
run: zip -r ./.build/${{ env.APP_NAME }}_osx_x64.zip ./.build/osx_x64/ | |
- name: publish win-x64 | |
run: dotnet publish -c Release -f net8.0 -p:PublishTrimmed=false -r win-x64 -o ./.build/win_x64/ | |
- name: zip win-x64 | |
run: zip -r ./.build/${{ env.APP_NAME }}_win_x64.zip ./.build/win_x64/ | |
- name: publish win-arm64 | |
run: dotnet publish -c Release -f net8.0 -p:PublishTrimmed=false -r win-arm64 -o ./.build/win_arm64/ | |
- name: zip win-arm64 | |
run: zip -r ./.build/${{ env.APP_NAME }}_win_arm64.zip ./.build/win_arm64/ | |
- name: publish win-x86 | |
run: dotnet publish -c Release -f net8.0 -p:PublishTrimmed=false -r win-x86 -o ./.build/win_x86/ | |
- name: zip win-x86 | |
run: zip -r ./.build/${{ env.APP_NAME }}_win_x86.zip ./.build/win_x86/ | |
- name: publish linux-x64 | |
run: dotnet publish -c Release -f net8.0 -p:PublishTrimmed=false -r linux-x64 -o ./.build/linux_x64/ | |
- name: zip linux-x64 | |
run: zip -r ./.build/${{ env.APP_NAME }}_linux_x64.zip ./.build/linux_x64/ | |
- name: publish linux-arm64 | |
run: dotnet publish -c Release -f net8.0 -p:PublishTrimmed=false -r linux-arm64 -o ./.build/linux_arm64/ | |
- name: zip linux-arm64 | |
run: zip -r ./.build/${{ env.APP_NAME }}_linux_arm64.zip ./.build/linux_arm64/ | |
- name: git config user.name github-actions | |
run: git config --global user.name "${{ secrets.USER_NAME }}" | |
- name: git config user.email github-actions@github.com | |
run: git config --global user.email "${{ secrets.USER_EMAIL }}" | |
- name: git config user.name | |
run: git config user.name | |
- name: git config user.email | |
run: git config user.email | |
- name: Find common ancestor | |
run: git merge-base --fork-point origin/master | |
- name: Import bot's GPG key for signing commits | |
id: import-gpg | |
uses: crazy-max/ghaction-import-gpg@v6 | |
with: | |
gpg_private_key: ${{ secrets.BOT_GPG_PRIVATE_KEY }} | |
passphrase: ${{ secrets.BOT_GPG_PASSPHRASE }} | |
git_config_global: true | |
git_user_signingkey: true | |
git_commit_gpgsign: true | |
- name: git tag | |
run: git tag -s "v${{ env.VERSIONFINAL }}" -m "v${{ env.VERSIONFINAL }}" | |
env: | |
GITHUB_TOKEN: ${{ secrets.OSLASH_BOT_GITHUB_TOKEN }} | |
GIT_AUTHOR_NAME: ${{ secrets.USER_NAME }} | |
GIT_AUTHOR_EMAIL: ${{ secrets.USER_EMAIL }} | |
GIT_COMMITTER_NAME: ${{ secrets.USER_NAME }} | |
GIT_COMMITTER_EMAIL: ${{ secrets.USER_EMAIL }} | |
- name: git push --tags | |
run: git push --tags | |
env: | |
GITHUB_TOKEN: ${{ secrets.OSLASH_BOT_GITHUB_TOKEN }} | |
GIT_AUTHOR_NAME: ${{ secrets.USER_NAME }} | |
GIT_AUTHOR_EMAIL: ${{ secrets.USER_EMAIL }} | |
GIT_COMMITTER_NAME: ${{ secrets.USER_NAME }} | |
GIT_COMMITTER_EMAIL: ${{ secrets.USER_EMAIL }} | |
- name: Update CHANGELOG | |
id: changelog | |
uses: Requarks/changelog-action@v1 | |
with: | |
token: ${{ github.token }} | |
tag: "v${{ env.VERSIONFINAL }}" | |
writeToFile: true | |
excludeTypes: chore, perf | |
- uses: softprops/action-gh-release@v1 | |
with: | |
body: ${{ steps.changelog.outputs.changes }} | |
token: "${{ secrets.GITHUB_TOKEN }}" | |
prerelease: false | |
name: "v${{ env.VERSIONFINAL }} has arrived !!!" | |
tag_name: "v${{ env.VERSIONFINAL }}" | |
generate_release_notes: true | |
append_body: true | |
files: | | |
licence.md | |
./.build/${{ env.APP_NAME }}_osx_arm64.zip | |
./.build/${{ env.APP_NAME }}_osx_x64.zip | |
./.build/${{ env.APP_NAME }}_win_x64.zip | |
./.build/${{ env.APP_NAME }}_win_arm64.zip | |
./.build/${{ env.APP_NAME }}_win_x86.zip | |
./.build/${{ env.APP_NAME }}_linux_x64.zip | |
./.build/${{ env.APP_NAME }}_linux_arm64.zip | |
- name: git fetch | |
run: git fetch | |
- name: git checkout master | |
run: git checkout master | |
- name: git pull | |
run: git pull | |
- name: git add . | |
run: git add . | |
- name: git commit -S -m "Create the packages of version '$VERSIONFINAL'." | |
run: git commit -S -m "Create the packages of version '$VERSIONFINAL'." | |
env: | |
GITHUB_TOKEN: ${{ secrets.OSLASH_BOT_GITHUB_TOKEN }} | |
GIT_AUTHOR_NAME: ${{ secrets.USER_NAME }} | |
GIT_AUTHOR_EMAIL: ${{ secrets.USER_EMAIL }} | |
GIT_COMMITTER_NAME: ${{ secrets.USER_NAME }} | |
GIT_COMMITTER_EMAIL: ${{ secrets.USER_EMAIL }} | |
- name: git push | |
run: git push | |
env: | |
GITHUB_TOKEN: ${{ secrets.OSLASH_BOT_GITHUB_TOKEN }} | |
GIT_AUTHOR_NAME: ${{ secrets.USER_NAME }} | |
GIT_AUTHOR_EMAIL: ${{ secrets.USER_EMAIL }} | |
GIT_COMMITTER_NAME: ${{ secrets.USER_NAME }} | |
GIT_COMMITTER_EMAIL: ${{ secrets.USER_EMAIL }} |