Skip to content

Commit

Permalink
Add PR build
Browse files Browse the repository at this point in the history
  • Loading branch information
jeanfbrito authored Apr 5, 2024
1 parent 38ba543 commit a72938b
Show file tree
Hide file tree
Showing 4 changed files with 88 additions and 1 deletion.
86 changes: 86 additions & 0 deletions .github/workflows/pull-request-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
name: Build pull request artifacts

on:
pull_request:
branches:
- master
- develop

jobs:
build:
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- macos-latest
- windows-latest
runs-on: ${{ matrix.os }}
steps:
- name: Disable git core.autocrlf
run: git config --global core.autocrlf false

- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Setup Node 20.10.0
uses: actions/setup-node@v3
with:
node-version: '20.10.0'

- name: Setup node_modules cache
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}

- name: Install package dependencies
run: yarn install

- name: Lint
run: yarn lint

- name: Test
run: yarn test

- name: Build app/
run: yarn build
env:
NODE_ENV: production
BUGSNAG_API_KEY: ${{ secrets.BUGSNAG_API_KEY }}
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_STORE_CREDENTIALS }}

- name: Build Windows Package
if: ${{ matrix.os == 'windows-latest'}}
run: yarn electron-builder --x64 --win nsis
env:
CSC_LINK: ${{ secrets.WIN_CSC_LINK }}
CSC_KEY_PASSWORD: ${{ secrets.WIN_CSC_KEY_PASSWORD }}

- name: Build MacOS Package
if: ${{ matrix.os == 'macos-latest'}}
run: |
sudo mdutil -a -i off
yarn electron-builder --publish never --mac --universal
env:
CSC_LINK: ${{ secrets.MAC_CSC_LINK }}
CSC_KEY_PASSWORD: ${{ secrets.MAC_CSC_KEY_PASSWORD }}
CSC_FOR_PULL_REQUEST: true
APPLEID: ${{ secrets.APPLEID }}
APPLEIDPASS: ${{ secrets.APPLEIDPASS }}
ASC_PROVIDER: 'S6UPZG7ZR3'

- name: Build Ubuntu Package
if: ${{ matrix.os == 'ubuntu-latest'}}
run: yarn electron-builder --publish never --linux snap

- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ runner.os }} Artifacts
path: |
dist/rocketchat-*.dmg
dist/rocketchat-*.exe
dist/rocketchat-*.snap
1 change: 1 addition & 0 deletions build/notarize.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ exports.default = function notarizing(context) {
}, 15000);

notarize({
tool: 'notarytool',
appBundleId: 'chat.rocket',
appPath: `${appOutDir}/${appName}.app`,
appleId: process.env.APPLEID,
Expand Down
2 changes: 1 addition & 1 deletion electron-builder.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"category": "public.app-category.productivity",
"target": ["dmg", "pkg", "zip", "mas"],
"icon": "build/icon.icns",
"bundleVersion": "125",
"bundleVersion": "126",
"helperBundleId": "chat.rocket.electron.helper",
"type": "distribution",
"artifactName": "rocketchat-${version}-${os}.${ext}",
Expand Down
Binary file modified embedded.provisionprofile
Binary file not shown.

0 comments on commit a72938b

Please sign in to comment.