mirror of
https://github.com/lostpaul/obsidian-folder-notes.git
synced 2026-07-22 07:40:24 +00:00
Fix beta release script so that you can publish a release from any branch and it updates the manifest-beta file in the main branch.
74 lines
2.4 KiB
YAML
74 lines
2.4 KiB
YAML
# https://github.com/SilentVoid13/Templater/blob/master/.github/workflows/release.yml
|
|
|
|
name: Plugin-beta release
|
|
on:
|
|
push:
|
|
tags:
|
|
- "[0-9]+.[0-9]+.[0-9]+-[0-9]+-beta"
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout current branch
|
|
uses: actions/checkout@v3
|
|
with:
|
|
# This checks out the branch that triggered the workflow
|
|
ref: ${{ github.ref }}
|
|
|
|
- name: Fetch all branches
|
|
run: git fetch --all
|
|
|
|
- name: Extract version from tag
|
|
id: extract_version
|
|
run: echo "VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
|
|
|
|
- name: Strip -beta from version
|
|
run: |
|
|
VERSION=${{ env.VERSION }}
|
|
RELEASE_VERSION=${VERSION%-beta}
|
|
echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_ENV
|
|
|
|
# Update manifest-beta.json in main branch
|
|
- name: Checkout main branch to update manifest-beta.json
|
|
run: |
|
|
git checkout main
|
|
git pull origin main
|
|
|
|
- name: Update manifest-beta.json in main branch
|
|
run: |
|
|
VERSION=${{ env.VERSION }}
|
|
jq --arg version "$VERSION" '.version = $version' manifest-beta.json > manifest-beta-temp.json
|
|
mv manifest-beta-temp.json manifest-beta.json
|
|
|
|
- name: Commit and push manifest-beta.json changes in main
|
|
run: |
|
|
git config --local user.email "github-actions[bot]@users.noreply.github.com"
|
|
git config --local user.name "github-actions[bot]"
|
|
git add manifest-beta.json
|
|
git commit -m "Update manifest-beta.json to version $VERSION in main branch"
|
|
git push origin main
|
|
|
|
# Switch back to the original branch that triggered the workflow
|
|
- name: Switch back to branch that triggered the workflow
|
|
run: |
|
|
git checkout ${{ github.ref_name }}
|
|
git pull origin ${{ github.ref_name }}
|
|
|
|
- name: npm build
|
|
run: |
|
|
npm install
|
|
npm run build --if-present
|
|
|
|
- name: Set Release Name
|
|
run: echo "RELEASE_NAME=${{ env.RELEASE_VERSION }}" >> $GITHUB_ENV
|
|
|
|
- name: Create Plugin beta release
|
|
uses: ncipollo/release-action@v1.12.0
|
|
with:
|
|
name: Beta release ${{ env.RELEASE_NAME }}
|
|
prerelease: true
|
|
artifacts: "main.js,manifest.json,styles.css"
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
tag: ${{ env.VERSION }}
|