chore: 🤖 workflow #1
Workflow file for this run
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: HyperFlow Release | ||
| on: | ||
| push: | ||
| tags: | ||
| - "hyper-flow-v[0-9]+.[0-9]+.[0-9]+" | ||
| jobs: | ||
| publish_on_win: | ||
|
Check failure on line 8 in .github/workflows/flow-release.yml
|
||
| name: Build HyperFlow on Windows | ||
| runs-on: windows-latest | ||
| needs: prepare-environment | ||
| # Tests timeout after 40 minutes | ||
| timeout-minutes: 40 | ||
| steps: | ||
| - name: Checkout | ||
| uses: actions/checkout@v4 | ||
| - name: Set up Node.js | ||
| uses: actions/setup-node@v4 | ||
| with: | ||
| node-version: "20.19.3" | ||
| cache: "yarn" | ||
| cache-dependency-path: yarn.lock | ||
| - name: Get yarn cache directory path | ||
| id: yarn-cache-dir-path | ||
| run: | | ||
| echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT | ||
| echo "version=$(yarn -v)" >> $GITHUB_OUTPUT | ||
| - name: Restore node_modules | ||
| uses: actions/cache/restore@v4 | ||
| id: cache-node-modules | ||
| with: | ||
| path: | | ||
| **/node_modules | ||
| **/.eslintcache | ||
| ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
| key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | ||
| restore-keys: | | ||
| ${{ runner.os }}-yarn- | ||
| - name: Install node_modules on cache miss | ||
| if: steps.cache-node-modules.outputs.cache-hit != 'true' | ||
| run: yarn install --network-timeout 1000000 | ||
| - name: Cache node_modules | ||
| if: steps.cache-node-modules.outputs.cache-hit != 'true' | ||
| uses: actions/cache/save@v4 | ||
| with: | ||
| path: | | ||
| ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
| '**/node_modules' | ||
| key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | ||
| restore-keys: | | ||
| ${{ runner.os }}-yarn- | ||
| - name: Build | ||
| run: yarn build | ||
| - name: Release | ||
| run: yarn nx run hyper-flow:publish:app | ||
| env: | ||
| APPLE_ID: ${{ secrets.APPLE_ID }} | ||
| APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} | ||
| APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} | ||
| SIGN_ID: ${{ secrets.SIGN_ID }} | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| publish_on_linux: | ||
| name: Publish HyperFlow on Linux | ||
| runs-on: ubuntu-latest | ||
| needs: prepare-environment | ||
| steps: | ||
| - name: Checkout | ||
| uses: actions/checkout@v4 | ||
| - name: Set up Node.js | ||
| uses: actions/setup-node@v4 | ||
| with: | ||
| node-version: "20.19.3" | ||
| cache: "yarn" | ||
| cache-dependency-path: yarn.lock | ||
| - name: Get yarn cache directory path | ||
| id: yarn-cache-dir-path | ||
| run: | | ||
| echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT | ||
| echo "version=$(yarn -v)" >> $GITHUB_OUTPUT | ||
| - name: Restore node_modules | ||
| uses: actions/cache/restore@v4 | ||
| id: cache-node-modules | ||
| with: | ||
| path: | | ||
| **/node_modules | ||
| **/.eslintcache | ||
| ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
| key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | ||
| restore-keys: | | ||
| ${{ runner.os }}-yarn- | ||
| - name: Install node_modules on cache miss | ||
| if: steps.cache-node-modules.outputs.cache-hit != 'true' | ||
| run: yarn install | ||
| - name: Cache node_modules | ||
| if: steps.cache-node-modules.outputs.cache-hit != 'true' | ||
| uses: actions/cache/save@v4 | ||
| with: | ||
| path: | | ||
| ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
| '**/node_modules' | ||
| key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | ||
| restore-keys: | | ||
| ${{ runner.os }}-yarn- | ||
| - name: Build | ||
| run: yarn build | ||
| - name: Release | ||
| run: yarn nx run hyper-flow:publish:app | ||
| env: | ||
| APPLE_ID: ${{ secrets.APPLE_ID }} | ||
| APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} | ||
| APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} | ||
| SIGN_ID: ${{ secrets.SIGN_ID }} | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| publish_on_mac: | ||
| name: Publish HyperFlow on Mac | ||
| runs-on: macos-latest | ||
| # Tests timeout after 40 minutes | ||
| timeout-minutes: 40 | ||
| needs: prepare-environment | ||
| steps: | ||
| - name: Checkout | ||
| uses: actions/checkout@v4 | ||
| - name: Set up Node.js | ||
| uses: actions/setup-node@v4 | ||
| with: | ||
| node-version: "20.19.3" | ||
| cache: "yarn" | ||
| cache-dependency-path: yarn.lock | ||
| - name: Install Python | ||
| uses: actions/setup-python@v4 | ||
| with: | ||
| python-version: "3.11" | ||
| - name: Import codesign certs | ||
| uses: apple-actions/import-codesign-certs@v3 | ||
| with: | ||
| p12-file-base64: ${{ secrets.APPSTORE_CERTIFICATES_FILE_BASE64 }} | ||
| p12-password: ${{ secrets.APPSTORE_CERTIFICATES_PASSWORD }} | ||
| - name: Get yarn cache directory path | ||
| id: yarn-cache-dir-path | ||
| run: | | ||
| echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT | ||
| echo "version=$(yarn -v)" >> $GITHUB_OUTPUT | ||
| - name: Restore node_modules | ||
| uses: actions/cache/restore@v4 | ||
| id: cache-node-modules | ||
| with: | ||
| path: | | ||
| **/node_modules | ||
| **/.eslintcache | ||
| ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
| key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | ||
| restore-keys: | | ||
| ${{ runner.os }}-yarn- | ||
| - name: Install node_modules on cache miss | ||
| if: steps.cache-node-modules.outputs.cache-hit != 'true' | ||
| run: yarn install | ||
| - name: Install macos-alias | ||
| run: yarn add macos-alias@0.2.12 -W | ||
| - name: Rebuild native modules | ||
| run: | | ||
| npm install -g node-gyp | ||
| npm rebuild | ||
| yarn install --force | ||
| - name: Cache node_modules | ||
| if: steps.cache-node-modules.outputs.cache-hit != 'true' | ||
| uses: actions/cache/save@v4 | ||
| with: | ||
| path: | | ||
| ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
| '**/node_modules' | ||
| key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | ||
| restore-keys: | | ||
| ${{ runner.os }}-yarn- | ||
| - name: Build | ||
| run: yarn build | ||
| - name: Release | ||
| run: yarn nx run hyper-flow:publish:app | ||
| env: | ||
| APPLE_ID: ${{ secrets.APPLE_ID }} | ||
| APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} | ||
| APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} | ||
| SIGN_ID: ${{ secrets.SIGN_ID }} | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||