diff options
-rw-r--r-- | .github/workflows/macos-ci.yaml | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/.github/workflows/macos-ci.yaml b/.github/workflows/macos-ci.yaml new file mode 100644 index 0000000..bc58c94 --- /dev/null +++ b/.github/workflows/macos-ci.yaml @@ -0,0 +1,47 @@ +name: CI + +# Controls when the workflow will run +on: + # Triggers the workflow on push or pull request events but only for the "master" branch + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: macos-latest + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 + with: + python-version: "3.9" + - name: Package for macOS + run: | + pip install -r requirements.txt + pyinstaller --add-data "assets:assets" --onefile --noconfirm --collect-data sv_ttk --name GCPyramid --icon assets/logo.jpeg --windowed main.py + - name: Codesign executable + env: + MACOS_CERTIFICATE: ${{ secrets.MACOS_CERTIFICATE }} + MACOS_CERTIFICATE_PWD: ${{ secrets.MACOS_CERTIFICATE_PWD }} + run: | + echo $MACOS_CERTIFICATE | base64 —decode > certificate.p12 + security create-keychain -p 41random@123 build.keychain + security default-keychain -s build.keychain + security unlock-keychain -p 41random@123 build.keychain + security import certificate.p12 -k build.keychain -P $MACOS_CERTIFICATE_PWD -T /usr/bin/codesign + security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k 41random@123 build.keychain + /usr/bin/codesign --force -s 6BS49F3GLW ./dist/GCPyramid.app -v + - uses: actions/upload-artifact@v3 + with: + name: pyramid-scheme + path: dist/ |