diff --git a/.github/workflows/ios-ci.yml b/.github/workflows/ios-ci.yml index c5e7b298a..d1e4239dd 100644 --- a/.github/workflows/ios-ci.yml +++ b/.github/workflows/ios-ci.yml @@ -10,8 +10,6 @@ on: - ".github/**" - "README.md" - ".gitignore" - branches: - - master pull_request: branches: - master diff --git a/.github/workflows/ios-pre-release.yml b/.github/workflows/ios-pre-release.yml new file mode 100644 index 000000000..e1be789d4 --- /dev/null +++ b/.github/workflows/ios-pre-release.yml @@ -0,0 +1,84 @@ +name: ios-pre-release + +on: + workflow_dispatch: + push: + tags: + - ios-v* + branches: + - metal-support + paths-ignore: + - ".github/**" + - "README.md" +jobs: + build: + runs-on: macos-10.15 + env: + BUILDTYPE: Release + HOMEBREW_NO_AUTO_UPDATE: 1 + HOMEBREW_NO_INSTALL_CLEANUP: 1 + defaults: + run: + working-directory: platform/ios + shell: bash + + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + fetch-depth: 0 + + - name: Install macos dependencies + run: | + brew list cmake || brew install cmake + brew list ccache || brew install ccache + brew list pkg-config || brew install pkg-config + brew list glfw3 || brew install glfw3 + + - name: Cache node modules + uses: actions/cache@v2 + env: + cache-name: cache-node-modules + with: + path: ~/.npm + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} + restore-keys: | + ${{ runner.os }}-build-${{ env.cache-name }}- + ${{ runner.os }}-build- + ${{ runner.os }}- + + - name: npm install + run: npm install --ignore-scripts + + - name: Prepare ccache + run: ccache --clear + + - name: Cache ccache + uses: actions/cache@v2 + env: + cache-name: ccache-v1 + with: + path: ~/.ccache' + key: ${{ env.cache-name }}-${{ runner.os }}-${{ github.job }}-${{ github.ref }}-${{ github.sha }}-${{ github.head_ref }} + restore-keys: | + ${{ env.cache-name }}-${{ runner.os }}-${{ github.job }}-${{ github.ref }}-${{ github.sha }} + ${{ env.cache-name }}-${{ runner.os }}-${{ github.job }}-${{ github.ref }} + ${{ env.cache-name }}-${{ runner.os }}-${{ github.job }} + + - name: Clear ccache statistics + run: | + ccache --zero-stats + ccache --max-size=2G + ccache --show-stats + + - name: Install iOS packaging dependencies + run: | + ./platform/ios/scripts/install-packaging-dependencies.sh + env: + CILAUNCH: true + + - name: Build, package, and upload iOS release + run: platform/ios/scripts/deploy-swift-package.sh + env: + DIST_GITHUB_TOKEN: ${{ secrets.DIST_GITHUB_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/ios-release.yml b/.github/workflows/ios-release.yml index 3946ccf5f..badc776f2 100644 --- a/.github/workflows/ios-release.yml +++ b/.github/workflows/ios-release.yml @@ -5,8 +5,10 @@ on: push: tags: - ios-v* + branches: + - master paths-ignore: - - ".github/**" + - ".github/**" - "README.md" jobs: build: