name: "macOS build" on: push: branches: [ enhancement/ci ] paths-ignore: - 'README.md' - 'SECURITY.md' - '.gitmodules' - '.gitignore' - 'LICENSE' schedule: - cron: '44 20 * * 1' jobs: build-macos: name: macOS build runs-on: macos-11 permissions: actions: read contents: write security-events: write strategy: fail-fast: false matrix: language: [ 'javascript' ] steps: - uses: maxim-lobanov/setup-xcode@v1 with: xcode-version: '12.4' - uses: actions/checkout@v3 with: fetch-depth: 0 - name: Change Version run: sudo chmod +x resources/version.sh && ./resources/version.sh || 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: | xcodebuild -version brew install autoconf automake libtool - name: Install Node Modules run: | yarn 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 rm -r node_modules/pouchdb-adapter-leveldb/node_modules/leveldown rm -r /node_modules/leveldown/node_modules/node-gyp-build || true # Build the DMG - name: Build 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: yarn dist:universalNotWorking -p never - name: Add license to DMG run: | npx dmg-license resources/license.json dist/*.dmg - name: Import uses: apple-actions/import-codesign-certs@v1 with: p12-file-base64: ${{ secrets.CSC_LINK }} p12-password: ${{ secrets.CSC_KEY_PASSWORD }} # Build to PKG - name: Create PKG manually 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-$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/Cider*.pkg || true - name: Upload a Build Artifact uses: actions/upload-artifact@v2.2.3 with: name: Cider-macOS-$APP_VERSION path: dist/* # - name: Upload Artifacts to Latest Release # uses: softprops/action-gh-release@v1 # with: # token: ${{ secrets.CUSTOM_GITHUB_TOKEN }} # files: | # dist/*.dmg # dist/*.pkg # tag_name: $APP_VERSION # env: # GITHUB_REPOSITORY: ciderapp/cider-releases