DummyPR #595
Workflow file for this run
This file contains 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: Build Mac AppleSilicon | |
on: | |
push: | |
branches: | |
- main | |
paths: | |
- 'src/**' | |
- '**/CMakeLists.txt' | |
- 'version.inc' | |
- 'bbl/**' | |
- 'resources/**' | |
pull_request: | |
branches: | |
- main | |
paths: | |
- 'src/**' | |
- '**/CMakeLists.txt' | |
- 'version.inc' | |
- 'bbl/**' | |
- 'resources/**' | |
jobs: | |
build_osx_arm64: | |
name: Build Mac AppleSilicon | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install tools | |
run: | | |
brew install cmake git gettext zstd | |
- run: mkdir -p ${{ github.workspace }}/deps/build_arm64 | |
- run: mkdir -p ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep_arm64 | |
# - name: build deps | |
# id: cache_deps | |
# uses: actions/cache@v3 | |
# env: | |
# cache-name: ${{ runner.os }}-cache-orcaslicer_deps_arm64 | |
# with: | |
# path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep | |
# key: build-${{ env.cache-name }} | |
# - if: ${{ steps.cache_deps.outputs.cache-hit != 'true' }} | |
# name: build deps | |
# working-directory: ${{ github.workspace }} | |
# continue-on-error: true | |
# run: ./build_release_macos.sh -d -a arm64 | |
- name: Download and extract deps | |
working-directory: ${{ github.workspace }} | |
run: | | |
curl -LJO https://github.com/SoftFever/FileSharing/releases/download/2023.08/OrcaSlicer_dep_mac_arm64_02-08-2023.tar.gz | |
tar -zxf OrcaSlicer_dep_mac_arm64_02-08-2023.tar.gz -C ${{ github.workspace }}/deps/build_arm64 | |
chown -R $(id -u):$(id -g) ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep_arm64 | |
ls -l ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep_arm64 | |
rm OrcaSlicer_dep_mac_arm64_02-08-2023.tar.gz | |
- name: Build studio | |
working-directory: ${{ github.workspace }} | |
run: | | |
./build_release_macos.sh -s -n -a arm64 | |
- name: Sign app | |
working-directory: ${{ github.workspace }} | |
if: github.event_name != 'pull_request' | |
env: | |
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }} | |
P12_PASSWORD: ${{ secrets.P12_PASSWORD }} | |
KEYCHAIN_PASSWORD: ${{ secrets.KEYCHAIN_PASSWORD }} | |
CERTIFICATE_ID: ${{ secrets.MACOS_CERTIFICATE_ID }} | |
run: | | |
CERTIFICATE_PATH=$RUNNER_TEMP/build_certificate.p12 | |
KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db | |
echo -n "$BUILD_CERTIFICATE_BASE64" | base64 --decode --output $CERTIFICATE_PATH | |
security create-keychain -p $KEYCHAIN_PASSWORD $KEYCHAIN_PATH | |
security set-keychain-settings -lut 21600 $KEYCHAIN_PATH | |
security unlock-keychain -p $KEYCHAIN_PASSWORD $KEYCHAIN_PATH | |
security import $CERTIFICATE_PATH -P $P12_PASSWORD -A -t cert -f pkcs12 -k $KEYCHAIN_PATH | |
security list-keychain -d user -s $KEYCHAIN_PATH | |
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $P12_PASSWORD $KEYCHAIN_PATH | |
codesign --deep --force --verbose --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build_arm64/OrcaSlicer/OrcaSlicer.app | |
- name: Pack app | |
working-directory: ${{ github.workspace }} | |
run: | | |
export ver=$(grep '^#define SoftFever_VERSION' ./build_arm64/src/libslic3r/libslic3r_version.h | cut -d ' ' -f3) | |
ver="_V${ver//\"}" | |
cd ${{ github.workspace }}/build_arm64/OrcaSlicer | |
zip -FSrq OrcaSlicer${ver}_Mac_AppleSilicon_signed.zip ./OrcaSlicer.app | |
# (wip: staple failed, error 65) | |
# - name: Notarize the app | |
# run: | | |
# cd ${{ github.workspace }}/build_arm64/OrcaSlicer | |
# xcrun notarytool store-credentials "notarytool-profile" --apple-id "${{ secrets.APPLE_DEV_ACCOUNT }}" --team-id "${{ secrets.TEAM_ID }}" --password "${{ secrets.APP_PWD }}" | |
# ditto -c -k --keepParent "OrcaSlicer.app" "OrcaSlicer.zip" | |
# xcrun notarytool submit "OrcaSlicer.zip" --keychain-profile "notarytool-profile" --wait | |
# xcrun stapler staple OrcaSlicer.app | |
# zip -FSrq OrcaSlicer_Mac_notarized.zip OrcaSlicer.app | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: OrcaSlicer_Mac_AppleSilicon | |
path: ${{ github.workspace }}/build_arm64/OrcaSlicer/OrcaSlicer*.zip |