generate-sdk #31
Workflow file for this run
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: generate-sdk | |
on: | |
workflow_dispatch: | |
workflow_call: | |
inputs: | |
pr-base: | |
required: true | |
type: string | |
outputs: | |
pr-number: | |
description: pr number | |
value: ${{ jobs.generate-sdk.outputs.pr-number }} | |
permissions: | |
actions: read | |
contents: write | |
pull-requests: write | |
defaults: | |
run: | |
shell: bash | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
generate-sdk: | |
runs-on: ubuntu-latest | |
outputs: | |
pr-number: ${{ steps.create-pr.outputs.pull-request-number }} | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Determine base branch name | |
id: pr-base | |
run: | | |
if [[ "${{ github.event_name }}" = "issue_comment" ]]; then | |
echo "name=${{ inputs.pr-base }}" | tee -a "$GITHUB_OUTPUT" | |
else | |
echo "name=${{ github.ref_name }}" | tee -a "$GITHUB_OUTPUT" | |
fi | |
- name: Determine head branch name | |
id: pr-head | |
env: | |
BASE: ${{ steps.pr-base.outputs.name }} | |
run: | | |
DATE=$(date '+%s') | |
echo "name=gen/$BASE/$DATE" | tee -a "$GITHUB_OUTPUT" | |
- name: Re-generate isp | |
run: ./run.sh isp | |
- name: Re-generate isp-slate | |
run: ./run.sh isp-slate | |
- name: Detect generated changes | |
id: changes | |
run: | | |
git add isp isp-slate | |
git status | |
if [ -n "$(git status -s)" ]; then | |
echo "should-commit=true" | tee -a "$GITHUB_OUTPUT" | |
else | |
echo "should-commit=false" | tee -a "$GITHUB_OUTPUT" | |
fi | |
- name: Create Pull Request | |
id: create-pr | |
if: steps.changes.outputs.should-commit == 'true' | |
uses: peter-evans/create-pull-request@v6 | |
with: | |
commit-message: "re-generate sdk" | |
branch: ${{ steps.pr-head.outputs.name }} | |
base: ${{ steps.pr-base.outputs.name }} | |
title: 'chore: bump sdk version' | |
body: | | |
Generated by [${{ github.workflow }}](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) | |
Comment `recreate-me` on this pull request to have it closed and re-created | |
- name: Print summary | |
if: steps.changes.outputs.should-commit == 'true' | |
env: | |
PR_NUMBER: ${{ steps.create-pr.outputs.pull-request-number }} | |
PR_URL: ${{ steps.create-pr.outputs.pull-request-url }} | |
run: | | |
echo "Created [#${PR_NUMBER}](${PR_URL})" > "$GITHUB_STEP_SUMMARY" |