# https://github.com/SilentVoid13/Templater/blob/master/.github/workflows/release.yml name: Plugin release on: push: tags: - "[0-9]+.[0-9]+.[0-9]+" jobs: build: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 with: submodules: recursive fetch-depth: 0 - name: Fetch all branches run: git fetch --all - name: Extract branch name id: extract_branch run: | BRANCH_NAME=$(git name-rev --name-only $GITHUB_SHA | sed 's|^remotes/origin/||' | sed 's|^origin/||') echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV - name: Debug branch name run: echo "Releasing from branch: $BRANCH_NAME" # Checkout the main branch to update manifest.json - name: Checkout main branch to update manifest run: | git checkout main git pull origin main - name: Update manifest.json in main branch run: | VERSION=${GITHUB_REF#refs/tags/} jq --arg version "$VERSION" '.version = $version' manifest.json > manifest-temp.json mv manifest-temp.json manifest.json - name: Commit and push manifest.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.json git commit -m "Update manifest.json to version $VERSION" || echo "No changes to commit" git push origin main # Switch back to the original branch ONLY if not 'main' - name: Checkout original branch (if not main) run: | if [ "$BRANCH_NAME" != "main" ]; then git checkout "$BRANCH_NAME" git pull origin "$BRANCH_NAME" else echo "Already on main branch; skipping checkout." fi - name: npm build run: | npm install npm run fn-build --if-present - name: Create Plugin release uses: ncipollo/release-action@v1.12.0 with: artifacts: "main.js,manifest.json,styles.css" token: ${{ secrets.GITHUB_TOKEN }} tag: ${{ github.ref_name }}