Update Bindings #161
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: Update Bindings | |
on: | |
schedule: | |
- cron: '0 15 * * 1-4' # Run every Monday through Thursday at 10:00 am Cayman time (15:00 UTC) | |
workflow_dispatch: | |
push: | |
pull_request: | |
branches: | |
- 'staging' | |
- 'main' | |
permissions: | |
contents: write | |
pull-requests: write | |
jobs: | |
build-test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up Go | |
uses: actions/setup-go@v4 | |
with: | |
go-version: 1.20 | |
# - name: Use Node.js 19.x | |
# uses: actions/setup-node@v3 | |
# with: | |
# node-version: 19 | |
# cache: 'yarn' | |
- name: Install OpenAPI Generator | |
run: yarn global add @openapitools/openapi-generator-cli | |
- name: Generate API bindings | |
run: | | |
rm -r test/ | |
openapi-generator-cli generate | |
- name: Commit and push changes | |
run: | | |
git config --local user.email "[email protected]" | |
git config --local user.name "modabot" | |
# Check if there are any changes | |
git add -A | |
if git status | grep -q "Changes to be committed"; then | |
# Create a new branch with a timestamp | |
branch_name="update-bindings-$(TZ='UTC' date --iso-8601=seconds | sed s/:/-/g)" | |
git checkout -b "$branch_name" | |
git commit -m "Update Go API bindings" | |
git push --set-upstream origin "$branch_name" | |
pr_title="Update Go API bindings" | |
pr_body="This PR updates the Go API bindings with the latest changes." | |
base_branch="main" | |
gh pr create --title "$pr_title" --body "$pr_body" --base "$base_branch" --head "$branch_name" | |
fi | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |