From 59df86e35355e21e13b02e4991685a6414fb5dab Mon Sep 17 00:00:00 2001 From: Lorow Date: Wed, 14 Aug 2024 23:02:59 +0200 Subject: [PATCH] feat: pin rust toolchain version to 1.79.0 --- .github/workflows/build.yml | 237 ++++++++++++++++++------------------ 1 file changed, 119 insertions(+), 118 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 79f7269..478ad8f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,138 +1,139 @@ name: App Builder on: - workflow_dispatch: - push: - tags: - - "v*" - branches: - - master - - main - - release - - develop - - beta + workflow_dispatch: + push: + tags: + - 'v*' + branches: + - master + - main + - release + - develop + - beta env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + RUST_TOOLCHAIN_VERSION: 1.79.0 concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true permissions: - contents: write + contents: write jobs: - build: - strategy: - fail-fast: false - matrix: - node-version: [18.x] - platform: [windows-latest] - include: - #- os: ubuntu-latest - # rust_target: x86_64-unknown-linux-gnu - - os: windows-latest - rust_target: x86_64-pc-windows-msvc - #- os: macos-latest - # rust_target: x86_64-apple-darwin - #- os: macos-latest - # rust_target: aarch64-apple-darwin - runs-on: ${{ matrix.platform }} - steps: - - name: Checkout repository - uses: actions/checkout@v3 - with: - token: ${{ env.GITHUB_TOKEN }} + build: + strategy: + fail-fast: false + matrix: + node-version: [18.x] + platform: [windows-latest] + include: + #- os: ubuntu-latest + # rust_target: x86_64-unknown-linux-gnu + - os: windows-latest + rust_target: x86_64-pc-windows-msvc + #- os: macos-latest + # rust_target: x86_64-apple-darwin + #- os: macos-latest + # rust_target: aarch64-apple-darwin + runs-on: ${{ matrix.platform }} + steps: + - name: Checkout repository + uses: actions/checkout@v3 + with: + token: ${{ env.GITHUB_TOKEN }} - - name: Node.js setup ${{ matrix.node-version }} - uses: actions/setup-node@v3 - with: - node-version: ${{ matrix.node-version }} - # node-version-file: '.nvmrc' + - name: Node.js setup ${{ matrix.node-version }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node-version }} + # node-version-file: '.nvmrc' - - name: "Setup Rust" - uses: actions-rs/toolchain@v1 - with: - default: true - override: true - profile: minimal - toolchain: stable - target: ${{ matrix.platform.rust_target }} + - name: 'Setup Rust' + uses: actions-rs/toolchain@v1 + with: + default: true + override: true + profile: minimal + toolchain: ${{ env.RUST_TOOLCHAIN_VERSION }} + target: ${{ matrix.platform.rust_target }} - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@v2 - - name: Install dependencies (ubuntu only) - if: matrix.platform == 'ubuntu-latest' - run: | - sudo apt-get update - sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf - npm install -g pnpm - npm install -g typescript + - name: Install dependencies (ubuntu only) + if: matrix.platform == 'ubuntu-latest' + run: | + sudo apt-get update + sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf + npm install -g pnpm + npm install -g typescript - - name: install dependencies (windows only) - if: matrix.platform == 'windows-latest' - run: | - npm install -g typescript - npm install -g pnpm + - name: install dependencies (windows only) + if: matrix.platform == 'windows-latest' + run: | + npm install -g typescript + npm install -g pnpm - - name: Install dependencies (PNPM) - run: pnpm install --no-frozen-lockfile + - name: Install dependencies (PNPM) + run: pnpm install --no-frozen-lockfile - - name: Generate Local Plugins (PNPM) - run: pnpm run specta:gen + - name: Generate Local Plugins (PNPM) + run: pnpm run specta:gen - - uses: JonasKruckenberg/tauri-build@v1.2.3 - id: tauri_build - with: - target: ${{ matrix.platform.rust_target }} + - uses: JonasKruckenberg/tauri-build@v1.2.3 + id: tauri_build + with: + target: ${{ matrix.platform.rust_target }} - - uses: actions/upload-artifact@v3 - with: - name: production-files - path: "${{ join(fromJSON(steps.tauri_build.outputs.artifacts), '\n') }}" + - uses: actions/upload-artifact@v3 + with: + name: production-files + path: "${{ join(fromJSON(steps.tauri_build.outputs.artifacts), '\n') }}" - deploy: - runs-on: ubuntu-latest - name: Deploy - needs: [build] - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Create Directory - run: mkdir -p dist - - name: Download artifact - uses: actions/download-artifact@v2 - with: - name: production-files - path: ./dist - - name: Setup node - uses: actions/setup-node@v3 - with: - node-version: 18 - - run: npm install -g conventional-changelog-conventionalcommits@6 - - run: npm install -g semantic-release@v19.0.5 - - run: npm install -g @semantic-release/exec - - run: npm install -g @semantic-release/git - - run: npm install -g @semantic-release/release-notes-generator - - run: npm install -g @semantic-release/changelog - - run: npm install -g @semantic-release/github - - name: Release - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - sudo apt-get install -y jq - chmod +x ./.github/scripts/prepareCMD.sh - semantic-release + deploy: + runs-on: ubuntu-latest + name: Deploy + needs: [build] + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + - name: Create Directory + run: mkdir -p dist + - name: Download artifact + uses: actions/download-artifact@v2 + with: + name: production-files + path: ./dist + - name: Setup node + uses: actions/setup-node@v3 + with: + node-version: 18 + - run: npm install -g conventional-changelog-conventionalcommits@6 + - run: npm install -g semantic-release@v19.0.5 + - run: npm install -g @semantic-release/exec + - run: npm install -g @semantic-release/git + - run: npm install -g @semantic-release/release-notes-generator + - run: npm install -g @semantic-release/changelog + - run: npm install -g @semantic-release/github + - name: Release + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + sudo apt-get install -y jq + chmod +x ./.github/scripts/prepareCMD.sh + semantic-release - cleanup: - name: Cleanup actions - needs: - - deploy - runs-on: ubuntu-latest - timeout-minutes: 10 - steps: - - name: "♻️ remove build artifacts" - uses: geekyeggo/delete-artifact@v1 - with: - name: production-files + cleanup: + name: Cleanup actions + needs: + - deploy + runs-on: ubuntu-latest + timeout-minutes: 10 + steps: + - name: '♻️ remove build artifacts' + uses: geekyeggo/delete-artifact@v1 + with: + name: production-files