[continuous-deploy-fingerprint] Add platform as input (#280) #227
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 | |
on: | |
push: | |
branches: [main] | |
workflow_dispatch: | |
inputs: | |
release: | |
description: 'type "release" to create the release (main branch only)' | |
required: false | |
concurrency: | |
group: release | |
cancel-in-progress: false | |
jobs: | |
dryrun: | |
if: ${{ github.ref != 'refs/heads/main' || github.event.inputs.release != 'release' }} | |
runs-on: ubuntu-latest | |
steps: | |
- name: 🏗 Setup repo | |
uses: actions/checkout@v4 | |
- name: 🏗 Setup runner | |
uses: ./.github/actions/setup | |
- name: 📦 Install dependencies | |
run: bun install | |
- name: 📋 Dry-running release | |
run: bun semantic-release --dry-run | |
env: | |
GITHUB_TOKEN: ${{ github.token }} | |
publish: | |
if: ${{ github.ref == 'refs/heads/main' && github.event.inputs.release == 'release' }} | |
runs-on: ubuntu-latest | |
steps: | |
- name: 🏗 Setup repo | |
uses: actions/checkout@v4 | |
with: | |
token: ${{ secrets.EXPOBOT_GITHUB_TOKEN }} | |
- name: 🏗 Setup runner | |
uses: ./.github/actions/setup | |
- name: 📦 Install dependencies | |
run: bun install | |
- name: 📋 Release code | |
run: bun semantic-release | |
env: | |
GITHUB_TOKEN: ${{ secrets.EXPOBOT_GITHUB_TOKEN }} | |
GIT_AUTHOR_NAME: Expo CI | |
GIT_AUTHOR_EMAIL: [email protected] | |
GIT_COMMITTER_NAME: Expo CI | |
GIT_COMMITTER_EMAIL: [email protected] | |
tags: | |
needs: publish | |
runs-on: ubuntu-latest | |
steps: | |
- name: 🏗 Setup repo | |
uses: actions/checkout@v4 | |
with: | |
token: ${{ secrets.EXPOBOT_GITHUB_TOKEN }} | |
- name: 🏗 Setup runner | |
uses: ./.github/actions/setup | |
- name: 👷 Force repo to latest | |
run: git fetch --all && git pull | |
- name: 📦 Install dependencies | |
run: bun install | |
- name: 📦 Install semver | |
run: bun add --dev semver | |
- name: 🕵️ Resolve major version | |
uses: actions/github-script@v7 | |
id: version | |
with: | |
result-encoding: string | |
script: | | |
const semver = require('semver') | |
const { version } = require('./package.json') | |
return semver.major(version) | |
- name: 👷 Configure git | |
run: | | |
git config user.name "Expo CI" | |
git config user.email "[email protected]" | |
- name: 🧹 Clean repo | |
run: git clean . -xdf && git reset --hard HEAD && git pull && git fetch --tags | |
- name: 📋 Update tags | |
run: git tag --force v${{ steps.version.outputs.result }} && git push --force --tags |