From 7d8912a7fde80f4d6e1e66efea921e2e096cfab2 Mon Sep 17 00:00:00 2001 From: Aiwe Date: Mon, 12 Dec 2022 21:24:59 +0200 Subject: [PATCH] Update Github Actions scripts with Ubuntu 22.04 (#68) * Add Ubuntu 22.04 * Remove Ubuntu 18.04 * Fix some warnings --- .github/workflows/check.yml | 113 ++++++++++++---------------------- .github/workflows/release.yml | 102 +++++++++++++++--------------- 2 files changed, 88 insertions(+), 127 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index bb025dbe1..1c68dd406 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -15,14 +15,14 @@ jobs: env: BOOST_ROOT: C:\thirdparties\boost-1.72.0 steps: - - uses: actions/checkout@master + - uses: actions/checkout@v3 with: submodules: true fetch-depth: 0 ref: ${{ github.ref }} - name: Add msbuild to PATH - uses: microsoft/setup-msbuild@v1.0.2 + uses: microsoft/setup-msbuild@v1.1 - name: Install Boost shell: cmd @@ -35,19 +35,13 @@ jobs: run: choco install openssl - name: Install Qt - uses: jurplel/install-qt-action@v2 + uses: jurplel/install-qt-action@v3 with: - version: '5.15.1' + version: '5.15.2' host: 'windows' target: 'desktop' - modules: 'qttools5' install-deps: 'true' - - name: Install NSIS - uses: joncloud/makensis-action@v1 - with: - just-include: true - - name: Build shell: powershell id: build @@ -80,18 +74,18 @@ jobs: Compress-Archive -Path "$release_name/" -DestinationPath "$release_name.zip" $sha256a = (Get-FileHash "$release_name.zip").Hash $asset_path_archive = "./$build_folder/$release_folder/$release_name.zip" - echo "::set-output name=sha256a::${sha256a}" - echo "::set-output name=release_name_archive::${release_name}.zip" - echo "::set-output name=asset_path_archive::${asset_path_archive}" + echo "sha256a=${sha256a}" >> $env:GITHUB_OUTPUT + echo "release_name_archive=${release_name}.zip" >> $env:GITHUB_OUTPUT + echo "asset_path_archive=${asset_path_archive}" >> $env:GITHUB_OUTPUT cd ../ makensis WindowsInstall.nsi cd "$release_folder" Compress-Archive -Path "KarbowanecWallet-Setup.exe" -DestinationPath "$release_name-install.zip" $sha256i = (Get-FileHash "$release_name-install.zip").Hash $asset_path_install = "./$build_folder/$release_folder/$release_name-install.zip" - echo "::set-output name=sha256i::${sha256i}" - echo "::set-output name=release_name_install::${release_name}-install.zip" - echo "::set-output name=asset_path_install::${asset_path_install}" + echo "sha256i=${sha256i}" >> $env:GITHUB_OUTPUT + echo "release_name_install=${release_name}-install.zip" >> $env:GITHUB_OUTPUT + echo "asset_path_install=${asset_path_install}" >> $env:GITHUB_OUTPUT - name: Create Archive Artifact uses: actions/upload-artifact@v1.0.0 @@ -113,17 +107,16 @@ jobs: name: macOS runs-on: macos-11 steps: - - uses: actions/checkout@master + - uses: actions/checkout@v3 with: submodules: true fetch-depth: 0 ref: ${{ github.ref }} - name: Install Qt - uses: jurplel/install-qt-action@v2 + uses: jurplel/install-qt-action@v3 with: version: '5.15.2' - modules: 'qttools5' install-deps: 'true' - name: Setup Xcode @@ -136,20 +129,11 @@ jobs: brew install gcc boost openssl brew link boost --force - - name: Find Tag - id: tagger - uses: jimschubert/query-tag-action@v1 - with: - include: 'v*' - exclude: '*-rc*' - commit-ish: 'HEAD~' - skip-unshallow: 'true' - - name: Build id: build run: | build_folder="build/release" - krb_ver="${{steps.tagger.outputs.tag}}" + krb_ver=$(git describe --tags --abbrev=0) release_name="Karbo-wallet-macOS-$krb_ver" app_name="KarbowanecWallet.app" lang_folder="/Contents/Resources/languages" @@ -164,10 +148,10 @@ jobs: mv *.dmg "$release_name".dmg sha256=$(shasum -a 256 "$release_name".dmg | awk '{ print toupper($1) }') asset_path="./$build_folder/$release_name.dmg" - echo "::set-output name=sha256::${sha256}" - echo "::set-output name=release_name::${release_name}.zip" - echo "::set-output name=asset_path::${asset_path}" - echo "::set-output name=krb_ver::${krb_ver}" + echo "sha256=${sha256}" >> $GITHUB_OUTPUT + echo "release_name=${release_name}.zip" >> $GITHUB_OUTPUT + echo "asset_path=${asset_path}" >> $GITHUB_OUTPUT + echo "krb_ver=${krb_ver}" >> $GITHUB_OUTPUT env: MACOSX_DEPLOYMENT_TARGET: '10.12' @@ -179,33 +163,24 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - build-ubuntu20: - name: Ubuntu 20.04 - runs-on: ubuntu-20.04 + build-ubuntu22: + name: Ubuntu 22.04 + runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@master + - uses: actions/checkout@v3 with: submodules: true fetch-depth: 0 ref: ${{ github.ref }} - - name: Find Tag - id: tagger - uses: jimschubert/query-tag-action@v1 - with: - include: 'v*' - exclude: '*-rc*' - commit-ish: 'HEAD~' - skip-unshallow: 'true' - - name: Build id: build run: | sudo apt update -y - sudo apt install -y qt5-default qttools5-dev qttools5-dev-tools libboost-all-dev + sudo apt install -y qtbase5-dev qttools5-dev qttools5-dev-tools libboost-all-dev build_folder="build/release" - krb_ver="${{steps.tagger.outputs.tag}}" - release_name=Karbo-wallet-ubuntu-20.04-$krb_ver + krb_ver=$(git describe --tags --abbrev=0) + release_name=Karbo-wallet-ubuntu-22.04-$krb_ver app_name="KarbowanecWallet" mkdir -p "$build_folder" cd "$build_folder" @@ -215,10 +190,10 @@ jobs: tar -czf "$release_name".tar.gz *.deb sha256=$(shasum -a 256 "$release_name".tar.gz | awk '{print toupper($1)}') asset_path="./$build_folder/$release_name".tar.gz - echo "::set-output name=sha256::${sha256}" - echo "::set-output name=release_name::${release_name}.tar.gz" - echo "::set-output name=asset_path::${asset_path}" - echo "::set-output name=krb_ver::${krb_ver}" + echo "sha256=${sha256}" >> $GITHUB_OUTPUT + echo "release_name=${release_name}.tar.gz" >> $GITHUB_OUTPUT + echo "asset_path=${asset_path}" >> $GITHUB_OUTPUT + echo "krb_ver=${krb_ver}" >> $GITHUB_OUTPUT - name: Create Artifact uses: actions/upload-artifact@v1.0.0 @@ -228,34 +203,24 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - build-ubuntu18: - name: Ubuntu 18.04 - runs-on: ubuntu-18.04 + build-ubuntu20: + name: Ubuntu 20.04 + runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@master + - uses: actions/checkout@v3 with: submodules: true fetch-depth: 0 ref: ${{ github.ref }} - - name: Find Tag - id: tagger - uses: jimschubert/query-tag-action@v1 - with: - include: 'v*' - exclude: '*-rc*' - commit-ish: 'HEAD~' - skip-unshallow: 'true' - - name: Build id: build run: | - sudo apt-get purge '*boost*' sudo apt update -y - sudo apt install -y qt5-default qttools5-dev qttools5-dev-tools libboost1.62-all-dev + sudo apt install -y qt5-default qttools5-dev qttools5-dev-tools libboost-all-dev build_folder="build/release" - krb_ver="${{steps.tagger.outputs.tag}}" - release_name=Karbo-wallet-ubuntu-18.04-$krb_ver + krb_ver=$(git describe --tags --abbrev=0) + release_name=Karbo-wallet-ubuntu-20.04-$krb_ver app_name="KarbowanecWallet" mkdir -p "$build_folder" cd "$build_folder" @@ -265,10 +230,10 @@ jobs: tar -czf "$release_name".tar.gz *.deb sha256=$(shasum -a 256 "$release_name".tar.gz | awk '{print toupper($1)}') asset_path="./$build_folder/$release_name".tar.gz - echo "::set-output name=sha256::${sha256}" - echo "::set-output name=release_name::${release_name}.tar.gz" - echo "::set-output name=asset_path::${asset_path}" - echo "::set-output name=krb_ver::${krb_ver}" + echo "sha256=${sha256}" >> $GITHUB_OUTPUT + echo "release_name=${release_name}.tar.gz" >> $GITHUB_OUTPUT + echo "asset_path=${asset_path}" >> $GITHUB_OUTPUT + echo "krb_ver=${krb_ver}" >> $GITHUB_OUTPUT - name: Create Artifact uses: actions/upload-artifact@v1.0.0 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 48471a695..c5815aca3 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -12,12 +12,12 @@ jobs: env: BOOST_ROOT: C:\thirdparties\boost-1.72.0 steps: - - uses: actions/checkout@master + - uses: actions/checkout@v3 with: fetch-depth: 0 - name: Add msbuild to PATH - uses: microsoft/setup-msbuild@v1.0.2 + uses: microsoft/setup-msbuild@v1.1 - name: Install Boost shell: cmd @@ -30,19 +30,13 @@ jobs: run: choco install openssl - name: Install Qt - uses: jurplel/install-qt-action@v2 + uses: jurplel/install-qt-action@v3 with: version: '5.15.2' host: 'windows' target: 'desktop' - modules: 'qttools5' install-deps: 'true' - - name: Install NSIS - uses: joncloud/makensis-action@v1 - with: - just-include: true - - name: Build shell: powershell id: build @@ -62,9 +56,9 @@ jobs: Start-Process cmake -ArgumentList "-DBOOST_ROOT=""$env:BOOST_ROOT"" -DBOOST_INCLUDE_DIRS=""$env:BOOST_ROOT/include"" -G ""Visual Studio 16 2019"" -A x64 -DARCH=default",".." -NoNewWindow -Wait Start-Process msbuild -ArgumentList "KarbowanecWallet.sln","/p:Configuration=Release" -NoNewWindow -Wait $build_path = "./$build_folder" - echo "::set-output name=build_path::${build_path}" - echo "::set-output name=release_name::${release_name}" - echo "::set-output name=krb_ver::${krb_ver}" + echo "build_path=${build_path}" >> $env:GITHUB_OUTPUT + echo "release_name=${release_name}" >> $env:GITHUB_OUTPUT + echo "krb_ver=${krb_ver}" >> $env:GITHUB_OUTPUT - name: Pack shell: powershell @@ -90,25 +84,26 @@ jobs: Compress-Archive -Path "$release_name/" -DestinationPath "$release_name.zip" $sha256a = (Get-FileHash "$release_name.zip").Hash $asset_path_archive = "./$build_folder/$release_folder/$release_name.zip" - echo "::set-output name=sha256a::${sha256a}" - echo "::set-output name=release_name_archive::${release_name}.zip" - echo "::set-output name=asset_path_archive::${asset_path_archive}" + echo "sha256a=${sha256a}" >> $env:GITHUB_OUTPUT + echo "release_name_archive=${release_name}.zip" >> $env:GITHUB_OUTPUT + echo "asset_path_archive=${asset_path_archive}" >> $env:GITHUB_OUTPUT cd ../ makensis WindowsInstall.nsi cd "$release_folder" Compress-Archive -Path "KarbowanecWallet-Setup.exe" -DestinationPath "$release_name-install.zip" $sha256i = (Get-FileHash "$release_name-install.zip").Hash $asset_path_install = "./$build_folder/$release_folder/$release_name-install.zip" - echo "::set-output name=sha256i::${sha256i}" - echo "::set-output name=release_name_install::${release_name}-install.zip" - echo "::set-output name=asset_path_install::${asset_path_install}" - echo "::set-output name=krb_ver::${krb_ver}" + echo "sha256i=${sha256i}" >> $env:GITHUB_OUTPUT + echo "release_name_install=${release_name}-install.zip" >> $env:GITHUB_OUTPUT + echo "asset_path_install=${asset_path_install}" >> $env:GITHUB_OUTPUT + echo "krb_ver=${krb_ver}" >> $env:GITHUB_OUTPUT - name: Create Release Archive - uses: softprops/action-gh-release@v0.1.8 + uses: softprops/action-gh-release@v0.1.15 with: files: ${{ steps.pack.outputs.asset_path_archive }} name: Karbo Wallet ${{ steps.pack.outputs.krb_ver }} + append_body: true body: | **${{ steps.pack.outputs.release_name_archive }}** ${{ steps.pack.outputs.sha256a }} @@ -116,10 +111,11 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Create Release Installer - uses: softprops/action-gh-release@v0.1.8 + uses: softprops/action-gh-release@v0.1.15 with: files: ${{ steps.pack.outputs.asset_path_install }} name: Karbo Wallet ${{ steps.pack.outputs.krb_ver }} + append_body: true body: | **${{ steps.pack.outputs.release_name_install }}** ${{ steps.pack.outputs.sha256i }} @@ -130,15 +126,14 @@ jobs: name: macOS runs-on: macos-11 steps: - - uses: actions/checkout@master + - uses: actions/checkout@v3 with: fetch-depth: 0 - name: Install Qt - uses: jurplel/install-qt-action@v2 + uses: jurplel/install-qt-action@v3 with: version: '5.15.2' - modules: 'qttools5' install-deps: 'true' - name: Setup Xcode @@ -172,29 +167,30 @@ jobs: mv *.dmg "$release_name".dmg sha256=$(shasum -a 256 "$release_name".dmg | awk '{ print toupper($1) }') asset_path="./$build_folder/$release_name.dmg" - echo "::set-output name=sha256::${sha256}" - echo "::set-output name=release_name::${release_name}.zip" - echo "::set-output name=asset_path::${asset_path}" - echo "::set-output name=krb_ver::${krb_ver}" + echo "sha256=${sha256}" >> $GITHUB_OUTPUT + echo "release_name=${release_name}.zip" >> $GITHUB_OUTPUT + echo "asset_path=${asset_path}" >> $GITHUB_OUTPUT + echo "krb_ver=${krb_ver}" >> $GITHUB_OUTPUT env: MACOSX_DEPLOYMENT_TARGET: '10.12' - name: Create Release - uses: softprops/action-gh-release@v0.1.8 + uses: softprops/action-gh-release@v0.1.15 with: files: ${{ steps.build.outputs.asset_path }} name: Karbo Wallet ${{ steps.build.outputs.krb_ver }} + append_body: true body: | **${{ steps.build.outputs.release_name }}** ${{ steps.build.outputs.sha256 }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - build-ubuntu20: - name: Ubuntu 20.04 - runs-on: ubuntu-20.04 + build-ubuntu22: + name: Ubuntu 22.04 + runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@master + - uses: actions/checkout@v3 with: fetch-depth: 0 @@ -202,10 +198,10 @@ jobs: id: build run: | sudo apt update -y - sudo apt install -y qt5-default qttools5-dev qttools5-dev-tools libboost-all-dev + sudo apt install -y qtbase5-dev qttools5-dev qttools5-dev-tools libboost-all-dev build_folder="build/release" krb_ver=$(echo "$GITHUB_REF" | sed 's|refs/tags/||') - release_name=Karbo-wallet-ubuntu-20.04-"$krb_ver" + release_name=Karbo-wallet-ubuntu-22.04-"$krb_ver" app_name="KarbowanecWallet" rm -rf cryptonote git clone https://github.com/seredat/karbowanec.git cryptonote @@ -217,39 +213,39 @@ jobs: tar -czf "$release_name".tar.gz *.deb sha256=$(shasum -a 256 "$release_name".tar.gz | awk '{print toupper($1)}') asset_path="./$build_folder/$release_name".tar.gz - echo "::set-output name=sha256::${sha256}" - echo "::set-output name=release_name::${release_name}.tar.gz" - echo "::set-output name=asset_path::${asset_path}" - echo "::set-output name=krb_ver::${krb_ver}" + echo "sha256=${sha256}" >> $GITHUB_OUTPUT + echo "release_name=${release_name}.tar.gz" >> $GITHUB_OUTPUT + echo "asset_path=${asset_path}" >> $GITHUB_OUTPUT + echo "krb_ver=${krb_ver}" >> $GITHUB_OUTPUT - name: Create Release - uses: softprops/action-gh-release@v0.1.8 + uses: softprops/action-gh-release@v0.1.15 with: files: ${{ steps.build.outputs.asset_path }} name: Karbo Wallet ${{ steps.build.outputs.krb_ver }} + append_body: true body: | **${{ steps.build.outputs.release_name }}** ${{ steps.build.outputs.sha256 }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - build-ubuntu18: - name: Ubuntu 18.04 - runs-on: ubuntu-18.04 + build-ubuntu20: + name: Ubuntu 20.04 + runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@master + - uses: actions/checkout@v3 with: fetch-depth: 0 - name: Build id: build run: | - sudo apt-get purge '*boost*' sudo apt update -y - sudo apt install -y qt5-default qttools5-dev qttools5-dev-tools libboost1.62-all-dev + sudo apt install -y qt5-default qttools5-dev qttools5-dev-tools libboost-all-dev build_folder="build/release" krb_ver=$(echo "$GITHUB_REF" | sed 's|refs/tags/||') - release_name=Karbo-wallet-ubuntu-18.04-"$krb_ver" + release_name=Karbo-wallet-ubuntu-20.04-"$krb_ver" app_name="KarbowanecWallet" rm -rf cryptonote git clone https://github.com/seredat/karbowanec.git cryptonote @@ -261,19 +257,19 @@ jobs: tar -czf "$release_name".tar.gz *.deb sha256=$(shasum -a 256 "$release_name".tar.gz | awk '{print toupper($1)}') asset_path="./$build_folder/$release_name".tar.gz - echo "::set-output name=sha256::${sha256}" - echo "::set-output name=release_name::${release_name}.tar.gz" - echo "::set-output name=asset_path::${asset_path}" - echo "::set-output name=krb_ver::${krb_ver}" + echo "sha256=${sha256}" >> $GITHUB_OUTPUT + echo "release_name=${release_name}.tar.gz" >> $GITHUB_OUTPUT + echo "asset_path=${asset_path}" >> $GITHUB_OUTPUT + echo "krb_ver=${krb_ver}" >> $GITHUB_OUTPUT - name: Create Release - uses: softprops/action-gh-release@v0.1.8 + uses: softprops/action-gh-release@v0.1.15 with: files: ${{ steps.build.outputs.asset_path }} name: Karbo Wallet ${{ steps.build.outputs.krb_ver }} + append_body: true body: | **${{ steps.build.outputs.release_name }}** ${{ steps.build.outputs.sha256 }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} -