ci: Run CI on Xcode 15 and macOS 13 (#1753) #59
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: release-automated | |
on: | |
push: | |
branches: [ master, release, alpha, beta ] | |
env: | |
CI_XCODE_14: '/Applications/Xcode_14.2.app/Contents/Developer' | |
jobs: | |
release: | |
runs-on: macos-13 | |
outputs: | |
current_tag: ${{ steps.tag.outputs.current_tag }} | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
persist-credentials: false | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: 18 | |
- name: Setup Ruby | |
uses: ruby/setup-ruby@359bebbc29cbe6c87da6bc9ea3bc930432750108 | |
- name: Cache Gems | |
id: cache-gems | |
uses: actions/cache@v2 | |
with: | |
path: vendor/bundle | |
key: ${{ runner.os }}-gem-${{ hashFiles('**/Gemfile.lock') }} | |
restore-keys: | | |
${{ runner.os }}-gem- | |
- name: Submodules and Bundle Install | |
run: | | |
git submodule update --init --recursive | |
sudo gem install bundler | |
bundle config set path 'vendor/bundle' | |
bundle install | |
- run: npm ci | |
- run: npx semantic-release | |
env: | |
GH_TOKEN: ${{ secrets.RELEASE_GITHUB_TOKEN }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Determine tag on current commit | |
id: tag | |
run: echo "::set-output name=current_tag::$(git describe --tags --abbrev=0 --exact-match || echo '')" | |
publish-docs: | |
needs: release | |
if: needs.release.outputs.current_tag != '' | |
runs-on: macos-13 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
with: | |
ref: ${{ needs.release.outputs.current_tag }} | |
- name: Setup Ruby | |
uses: ruby/setup-ruby@359bebbc29cbe6c87da6bc9ea3bc930432750108 | |
- name: Cache Gems | |
id: cache-gems | |
uses: actions/cache@v3 | |
with: | |
path: vendor/bundle | |
key: ${{ runner.os }}-gem-${{ hashFiles('**/Gemfile.lock') }} | |
restore-keys: | | |
${{ runner.os }}-gem- | |
- name: Submodules | |
run: | | |
git submodule update --init --recursive | |
sudo gem install bundler | |
bundle config path vendor/bundle | |
- name: Bundle Install | |
if: steps.cache-gems.outputs.cache-hit != 'true' | |
run: bundle install | |
- name: Create Jazzy Docs | |
run: | | |
./Scripts/jazzy.sh | |
env: | |
DEVELOPER_DIR: ${{ env.CI_XCODE_14 }} | |
- name: Deploy Jazzy Docs | |
uses: peaceiris/actions-gh-pages@v3 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: ./docs |