Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
126 changes: 84 additions & 42 deletions .github/workflows/build-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,106 +4,148 @@ on: [push]

jobs:
build-macos:
runs-on: macos-10.15
runs-on: macos-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- name: Get yarn cache
id: yarn-cache
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version-file: .nvmrc

- uses: pnpm/action-setup@v2
name: Install pnpm
id: pnpm-install
with:
run_install: false

- uses: actions/cache@v1
- name: Get pnpm store directory
id: pnpm-cache
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT

- uses: actions/cache@v3
name: Setup pnpm cache
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-yarn-
${{ runner.os }}-pnpm-store-

- name: Install Dependencies
run: yarn install
- name: Install dependencies
run: pnpm install

- name: Build
run: yarn build
run: pnpm build

- name: Make macOS (electron-builder)
env:
CSC_LINK: ${{ secrets.mac_certs }}
CSC_KEY_PASSWORD: ${{ secrets.mac_certs_password }}
run: yarn make:macos --publish=never -c.mac.identity=null
run: pnpm make:macos --publish=never -c.mac.identity=null

- name: Clean up builds
run: rm -rfv dist/mac-universal

- uses: actions/upload-artifact@v2
- uses: actions/upload-artifact@v3
with:
name: Gitify-dist-mac
path: dist/

build-windows:
runs-on: windows-2019
runs-on: windows-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version-file: .nvmrc

- name: Get yarn cache
id: yarn-cache
run: echo "::set-output name=dir::$(yarn cache dir)"
- uses: pnpm/action-setup@v2
name: Install pnpm
id: pnpm-install
with:
run_install: false

- name: Get pnpm store directory
id: pnpm-cache
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT

- uses: actions/cache@v1
- uses: actions/cache@v3
name: Setup pnpm cache
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-yarn-
${{ runner.os }}-pnpm-store-

- name: Install Dependencies
run: yarn install
- name: Install dependencies
run: pnpm install

- name: Build
run: yarn build
run: pnpm build

- name: Make Windows (electron-builder)
run: yarn make:win --publish=never
run: pnpm make:win --publish=never

- name: Clean up builds
run: Remove-Item dist/win-unpacked -Recurse

- uses: actions/upload-artifact@v1
- uses: actions/upload-artifact@v3
with:
name: Gitify-dist-win
path: dist

build-linux:
runs-on: ubuntu-18.04
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version-file: .nvmrc

- uses: pnpm/action-setup@v2
name: Install pnpm
id: pnpm-install
with:
run_install: false

- name: Get yarn cache
id: yarn-cache
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Get pnpm store directory
id: pnpm-cache
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT

- uses: actions/cache@v1
- uses: actions/cache@v3
name: Setup pnpm cache
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-yarn-
${{ runner.os }}-pnpm-store-

- name: Install Dependencies
run: yarn install
- name: Install dependencies
run: pnpm install

- name: Build
run: yarn build
run: pnpm build

- name: Make Linux (electron-builder)
run: yarn make:linux --publish=never
run: pnpm make:linux --publish=never

- name: Clean up builds
run: rm -rfv dist/linux-unpacked

- uses: actions/upload-artifact@v1
- uses: actions/upload-artifact@v3
with:
name: Gitify-dist-linux
path: dist
120 changes: 81 additions & 39 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,30 +7,44 @@ on:

jobs:
release-macos:
runs-on: macos-10.15
runs-on: macos-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- name: Get yarn cache
id: yarn-cache
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version-file: .nvmrc

- uses: pnpm/action-setup@v2
name: Install pnpm
id: pnpm-install
with:
run_install: false

- uses: actions/cache@v1
- name: Get pnpm store directory
id: pnpm-cache
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT

- uses: actions/cache@v3
name: Setup pnpm cache
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-yarn-
${{ runner.os }}-pnpm-store-

- name: Install Dependencies
run: yarn install
- name: Install dependencies
run: pnpm install

- name: Build
env:
OAUTH_CLIENT_ID: ${{ secrets.oauth_client_id }}
OAUTH_CLIENT_SECRET: ${{ secrets.oauth_client_secret }}
run: yarn build
run: pnpm build

- name: Publish macOS (electron-builder)
env:
Expand All @@ -40,66 +54,94 @@ jobs:
CSC_KEY_PASSWORD: ${{ secrets.mac_certs_password }}
GH_TOKEN: ${{ secrets.gh_token }}
NOTARIZE: true
run: yarn make:macos --publish onTagOrDraft
run: pnpm make:macos --publish onTagOrDraft

release-windows:
runs-on: windows-2019
runs-on: windows-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version-file: .nvmrc

- name: Get yarn cache
id: yarn-cache
run: echo "::set-output name=dir::$(yarn cache dir)"
- uses: pnpm/action-setup@v2
name: Install pnpm
id: pnpm-install
with:
run_install: false

- name: Get pnpm store directory
id: pnpm-cache
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT

- uses: actions/cache@v1
- uses: actions/cache@v3
name: Setup pnpm cache
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-yarn-
${{ runner.os }}-pnpm-store-

- name: Install Dependencies
run: yarn install
- name: Install dependencies
run: pnpm install

- name: Build
env:
OAUTH_CLIENT_ID: ${{ secrets.oauth_client_id }}
OAUTH_CLIENT_SECRET: ${{ secrets.oauth_client_secret }}
run: yarn build
run: pnpm build

- name: Publish Windows (electron-builder)
env:
GH_TOKEN: ${{ secrets.gh_token }}
run: yarn make:win --publish onTagOrDraft
run: pnpm make:win --publish onTagOrDraft

release-linux:
runs-on: ubuntu-18.04
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version-file: .nvmrc

- uses: pnpm/action-setup@v2
name: Install pnpm
id: pnpm-install
with:
run_install: false

- name: Get yarn cache
id: yarn-cache
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Get pnpm store directory
id: pnpm-cache
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT

- uses: actions/cache@v1
- uses: actions/cache@v3
name: Setup pnpm cache
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-yarn-
${{ runner.os }}-pnpm-store-

- name: Install Dependencies
run: yarn install
- name: Install dependencies
run: pnpm install

- name: Build
env:
OAUTH_CLIENT_ID: ${{ secrets.oauth_client_id }}
OAUTH_CLIENT_SECRET: ${{ secrets.oauth_client_secret }}
run: yarn build
run: pnpm build

- name: Publish Linuxs (electron-builder)
env:
GH_TOKEN: ${{ secrets.gh_token }}
run: yarn make:linux --publish onTagOrDraft
run: pnpm make:linux --publish onTagOrDraft
Loading