Renamed some docs #39
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: macOS_ARM64 | |
| on: | |
| push: | |
| branches: | |
| - fs-uae-3 | |
| - master | |
| - stable | |
| - test | |
| pull_request: | |
| branches: | |
| - fs-uae-3 | |
| - master | |
| - stable | |
| jobs: | |
| macOS_ARM64: | |
| runs-on: macos-14 | |
| env: | |
| DISCORD_WEBHOOK_URL: ${{ secrets.DISCORD_WEBHOOK_URL }} | |
| DROPBOX_APP_KEY: ${{ secrets.DROPBOX_APP_KEY }} | |
| DROPBOX_APP_SECRET: ${{ secrets.DROPBOX_APP_SECRET }} | |
| DROPBOX_REFRESH_TOKEN: ${{ secrets.DROPBOX_REFRESH_TOKEN }} | |
| SIGNING_ENABLED: ${{ secrets.MACOS_CERTIFICATE_P12_DATA }} | |
| steps: | |
| - name: Install brew packages | |
| run: brew install autoconf automake dos2unix libtool meson | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Cache dependencies | |
| uses: actions/cache@v4 | |
| id: build_env_cache | |
| with: | |
| path: build/env/_prefix | |
| key: build_env_${{ hashFiles('build/env/**/*') }}_${{ runner.os }}_${{ runner.arch }} | |
| - name: Build dependencies | |
| if: steps.build_env_cache.outputs.cache-hit != 'true' | |
| run: | | |
| build/env/setup | |
| - name: Bootstrap | |
| if: hashFiles('fsbuild/bootstrap') != '' | |
| run: | | |
| build/env/shell fsbuild/bootstrap | |
| - name: Configure | |
| if: hashFiles('fsbuild/configure') != '' | |
| run: | | |
| build/env/shell fsbuild/configure | |
| - name: Build | |
| run: | | |
| build/env/shell fsbuild/make | |
| - name: Bundle | |
| run: | | |
| fsbuild/bundle | |
| - name: Prepare signing certificate | |
| if: env.SIGNING_ENABLED != null | |
| env: | |
| KEYCHAIN_PASSWORD: ${{ secrets.MACOS_CERTIFICATE_PASSWORD }} | |
| SIGNING_CERTIFICATE_P12_DATA: ${{ secrets.MACOS_CERTIFICATE_P12_DATA }} | |
| SIGNING_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_CERTIFICATE_PASSWORD }} | |
| run: | | |
| echo $SIGNING_CERTIFICATE_P12_DATA | base64 --decode > certificate.p12 | |
| security create-keychain -p $KEYCHAIN_PASSWORD build.keychain | |
| security default-keychain -s build.keychain | |
| security unlock-keychain -p $KEYCHAIN_PASSWORD build.keychain | |
| security import certificate.p12 -k build.keychain -P $SIGNING_CERTIFICATE_PASSWORD -T /usr/bin/codesign | |
| security set-key-partition-list -S apple-tool:,apple: -s -k $KEYCHAIN_PASSWORD build.keychain | |
| - name: Sign | |
| if: env.SIGNING_ENABLED != null | |
| run: | | |
| fsbuild/sign | |
| - name: Notarize | |
| if: env.SIGNING_ENABLED != null | |
| env: | |
| APPLE_ID: ${{ secrets.APPLE_ID }} | |
| APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} | |
| APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} | |
| run: | | |
| fsbuild/notarize | |
| - name: Archive | |
| run: | | |
| fsbuild/archive | |
| - name: Install appdmg | |
| if: hashFiles('fsbuild/build-dmg') != '' | |
| run: | | |
| npm install -g appdmg | |
| - name: Build DMG | |
| if: hashFiles('fsbuild/build-dmg') != '' | |
| run: | | |
| fsbuild/build-dmg | |
| - name: Unlock keychain again | |
| if: env.SIGNING_ENABLED != null | |
| env: | |
| KEYCHAIN_PASSWORD: ${{ secrets.MACOS_CERTIFICATE_PASSWORD }} | |
| SIGNING_CERTIFICATE_P12_DATA: ${{ secrets.MACOS_CERTIFICATE_P12_DATA }} | |
| SIGNING_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_CERTIFICATE_PASSWORD }} | |
| run: | | |
| echo $SIGNING_CERTIFICATE_P12_DATA | base64 --decode > certificate.p12 | |
| security unlock-keychain -p $KEYCHAIN_PASSWORD build.keychain | |
| - name: Sign DMG | |
| if: hashFiles('fsbuild/sign-dmg') != '' && env.SIGNING_ENABLED != null | |
| run: | | |
| fsbuild/sign-dmg | |
| - name: Notarize DMG | |
| if: hashFiles('fsbuild/notarize-dmg') != '' && env.SIGNING_ENABLED != null | |
| env: | |
| APPLE_ID: ${{ secrets.APPLE_ID }} | |
| APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} | |
| APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} | |
| run: | | |
| fsbuild/notarize-dmg | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: macOS_ARM64 | |
| path: fsbuild/_dist/* | |
| - name: Upload to Dropbox | |
| if: >- | |
| env.DROPBOX_REFRESH_TOKEN != null && ( | |
| github.ref == 'refs/heads/beta' || | |
| github.ref == 'refs/heads/fs-uae-3' || | |
| github.ref == 'refs/heads/main' || | |
| github.ref == 'refs/heads/master' || | |
| github.ref == 'refs/heads/stable' || | |
| github.ref == 'refs/heads/test' | |
| ) | |
| run: | | |
| python3 -m venv .venv | |
| source .venv/bin/activate | |
| python3 -m pip install dropbox==12.0.2 | |
| fsbuild/upload |