orchard/.github/workflows/build-macos.yml
yazninja ec70754a64
ugh8dhadhui (#1483)
* now we can do this

* Bump to 21.0.1

* Update build-macos.yml

* fix AirPlay metadata , down el

* chore: Updated Lockfile

* delete pnpm cache

* ok

* fix CI

* ok

* force CI

* chore: Prettified Code
 [ci skip]

* airplay no longer experimental

* chore: Updated Lockfile

* Environment variable for release version run

* chore: Updated Lockfile

* Two version outputted by script

* what

* Persist .git

* les try this

* aa

* pls

* test

* pogchamp

* balls

* chore: Updated Lockfile

* this triggered me

* you should not be here.

* bruhmoment

* yawn

* chore: Updated Lockfile

* Remove this temporarily.

* Remove this too.

* chore: Updated Lockfile

* c2 i18n sync

* Implement SetRepeat to WSAPI

* chore: Updated Lockfile

Co-authored-by: Core <core@coredev.uk>
Co-authored-by: cryptofyre <cryptofyre@cryptofyre.org>
Co-authored-by: vapormusic <vietanhfat@gmail.com>
Co-authored-by: vapormusic <vapormusic@users.noreply.github.com>
Co-authored-by: coredev-uk <coredev-uk@users.noreply.github.com>
Co-authored-by: cryptofyre <cryptofyre@users.noreply.github.com>
Co-authored-by: booploops <49113086+booploops@users.noreply.github.com>
Co-authored-by: Amaru8 <52407090+Amaru8@users.noreply.github.com>
Co-authored-by: Amaru8 <Amaru8@users.noreply.github.com>
2022-10-05 08:03:34 -05:00

149 lines
4.7 KiB
YAML

name: "macOS build"
on:
push:
branches: [ main, stable ]
paths-ignore:
- 'README.md'
- 'SECURITY.md'
- '.gitmodules'
- '.gitignore'
- 'LICENSE'
- 'cider.lock'
jobs:
build-macos:
name: build-macos
runs-on: macos-11
permissions:
actions: read
contents: write
security-events: write
strategy:
fail-fast: false
matrix:
node-version: [ 18 ]
steps:
- uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: '12.4'
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: pnpm/action-setup@v2.2.2
with:
version: 7
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
- name: Run Version Script
env:
GH_REQUEST_TOKEN: ${{ secrets.RELEASE_TOKEN }}
run: |
sudo chmod +x resources/version.sh && ./resources/version.sh || true
- name: Clear node_airtunes2 cache
run: rm -rf ~/Library/pnpm/store/v3/tmp/cf5bc2de2629636ca224995234b8eaa1 || true
- name: Sign in to EVS
run: |
python3 -m pip install --upgrade castlabs-evs
python3 -m castlabs_evs.account refresh -A ${{ secrets.EVS_ACCOUNT_NAME }} -P ${{ secrets.EVS_PASSWD }}
- name: Setup Environment
run: brew install automake #libtool autoconf
- name: Install and Configure Node Modules
run: |
pnpm install
cp resources/verror-types node_modules/@types/verror/index.d.ts
cp resources/macPackager.js node_modules/app-builder-lib/out/macPackager.js
rm -r node_modules/pouchdb-node/node_modules/leveldown || true
rm -r node_modules/pouchdb-adapter-leveldb/node_modules/leveldown || true
- name: Build the DMG
env:
CSC_LINK: ${{ secrets.CSC_LINK }}
CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }}
APPLEID: ${{ secrets.APPLEID }}
APPLEIDPASS: ${{ secrets.APPLEIDPASS }}
APPLE_ID: ${{ secrets.APPLEID }}
APPLE_ID_PASSWORD: ${{ secrets.APPLEIDPASS }}
PSC_NAME: ${{ secrets.PSC_NAME }}
DEVELOPER_DIR: /Applications/Xcode_12.4.app/Contents/Developer
run: pnpm dist:universalNotWorking -p never
- name: Add license to DMG
run: npx dmg-license resources/license.json dist/*.dmg
- name: Upload macOS Latest
uses: svenstaro/upload-release-action@v2
with:
repo_name: ciderapp/cider-releases
repo_token: ${{ secrets.RELEASE_TOKEN }}
file: dist/latest-mac.yml
tag: v${{ env.RELEASE_VERSION }}
- name: Import
uses: apple-actions/import-codesign-certs@v1
with:
p12-file-base64: ${{ secrets.CSC_LINK }}
p12-password: ${{ secrets.CSC_KEY_PASSWORD }}
- name: Build the PKG
env:
CSC_LINK: ${{ secrets.CSC_LINK }}
CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }}
APPLEID: ${{ secrets.APPLEID }}
APPLEIDPASS: ${{ secrets.APPLEIDPASS }}
run: |
pkgbuild --component dist/mac-universal/Cider.app --install-location /Applications dist/Cider-${{ env.APP_VERSION }}-universal.pkg --sign ${{ secrets.PSC_NAME }}
xcrun altool --notarize-app --primary-bundle-id com.ciderapp.cider -f dist/Cider*.pkg --username ${{ secrets.APPLEID }} --password ${{ secrets.APPLEIDPASS }}
sleep 5m
xcrun stapler staple dist/*.pkg || true
- name: Upload a Build Artifact
uses: actions/upload-artifact@v2.2.3
with:
name: Cider-macOS-${{ env.APP_VERSION }}
path: |
dist/*.dmg
dist/*.pkg
dist/latest-mac.yml
- name: Upload Files (DMG)
uses: svenstaro/upload-release-action@v2
with:
repo_name: ciderapp/cider-releases
repo_token: ${{ secrets.RELEASE_TOKEN }}
file: dist/*.dmg
tag: v${{ env.RELEASE_VERSION }}
- name: Upload Files (PKG)
uses: svenstaro/upload-release-action@v2
with:
repo_name: ciderapp/cider-releases
repo_token: ${{ secrets.RELEASE_TOKEN }}
file: dist/*.pkg
tag: v${{ env.RELEASE_VERSION }}
- name: Trigger Bot Sync (main)
uses: indiesdev/curl@v1.1
with:
url: http://129.146.42.180/api/v1/github/sync/main
log-response: true
timeout: 60000
- name: Trigger Bot Sync (stable)
uses: indiesdev/curl@v1.1
with:
url: http://129.146.42.180/api/v1/github/sync/stable
log-response: true
timeout: 60000