1
0
mirror of https://github.com/joaquinjsb/gitea-release-please-action synced 2026-05-09 00:41:14 +02:00
Files
gitea-release-please-action/.github/workflows/release-please.yaml
Jeff Ching eb6e95104a build: temporarily allow manual triggering to debug (#887)
<!--
Thank you for proposing a pull request! Please note that SOME TESTS WILL
LIKELY FAIL due to how GitHub exposes secrets in Pull Requests from
forks.
Someone from the team will review your Pull Request and respond.

Please describe your change and any implementation details below.
-->
2023-12-01 14:15:15 -05:00

114 lines
4.3 KiB
YAML

on:
push:
branches:
- main
workflow_dispatch:
name: release-please
env:
ACTION_NAME: release-please-action
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v3
with:
node-version: 20
- name: install
run: npm ci
- name: build
run: npm run build
- name: commit
run: |-
set -e
# get current commit hash
CURRENT_HASH=$(git rev-parse HEAD)
# get last commit hash of last build dist
LAST_BUILD_HASH=$(git log --author=google-github-actions-bot -1 --pretty=format:"%H")
DIFF=""
# build and commit dist if diff
git config --global user.name "actions-bot"
git config user.email 'github-actions-bot@google.com'
git add dist/
git diff-index --quiet HEAD || git commit -m "chore: build dist ${ACTION_NAME}"
# if last commit hash of last build dist was found, get logs of commits in btw for PR body
if [ -z "$LAST_BUILD_HASH" ]
then
echo "Unable to find last commit by bot, skipping diff gen"
else
DIFF=$(git log ${LAST_BUILD_HASH}...${CURRENT_HASH} --oneline)
echo $DIFF
fi
# set env vars
echo "CURRENT_HASH=${CURRENT_HASH}" >> $GITHUB_ENV
echo "LAST_BUILD_HASH=${LAST_BUILD_HASH}" >> $GITHUB_ENV
echo 'DIFF<<EOF' >> $GITHUB_ENV
echo "${DIFF}" >> $GITHUB_ENV
echo 'EOF' >> $GITHUB_ENV
- name: Create PR with dist
uses: peter-evans/create-pull-request@v3
with:
token: ${{ secrets.ACTIONS_BOT_TOKEN }}
commit-message: Build dist
author: "actions-bot <github-actions-bot@google.com>"
title: "chore: build dist"
body: |
Build dist PR
${{env.DIFF}}
labels: automated pr
branch: create-pull-request/build-dist
delete-branch: true
push-to-fork: google-github-actions-bot/${{env.ACTION_NAME}}
release-please-release:
runs-on: ubuntu-latest
needs: [build]
steps:
- uses: google-github-actions/release-please-action@main
id: release
with:
token: ${{ secrets.GITHUB_TOKEN }}
release-type: node
skip-github-pull-request: true
- uses: actions/checkout@v2
- name: tag major and patch versions
run: |
git config user.name github-actions[bot]
git config user.email 41898282+github-actions[bot]@users.noreply.github.com
git remote add gh-token "https://${{ secrets.GITHUB_TOKEN}}@github.com/google-github-actions/release-please-action.git"
git tag -d v${{ steps.release.outputs.major }} || true
git tag -d v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }} || true
git push origin :v${{ steps.release.outputs.major }} || true
git push origin :v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }} || true
git tag -a v${{ steps.release.outputs.major }} -m "Release v${{ steps.release.outputs.major }}"
git tag -a v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }} -m "Release v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}"
git push origin v${{ steps.release.outputs.major }}
git push origin v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}
if: ${{ steps.release.outputs.release_created }}
release-please-pr:
runs-on: ubuntu-latest
needs:
- build
- release-please-release
steps:
- id: release-pr
uses: google-github-actions/release-please-action@main
with:
token: ${{ secrets.ACTIONS_BOT_TOKEN }}
release-type: node
fork: true
skip-github-release: true
- id: label
if: ${{ steps.release-pr.outputs.pr }}
uses: actions/github-script@v3
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
const [owner, repo] = process.env.GITHUB_REPOSITORY.split('/');
await github.issues.addLabels({
owner,
repo,
issue_number: ${{steps.release-pr.outputs.pr}},
labels: ['autorelease: pending']
});
console.log(`Tagged ${{steps.release-pr.outputs.pr}}`)