Skip to content

Commit

Permalink
ci: use repository dispatch and shared ui action
Browse files Browse the repository at this point in the history
  • Loading branch information
alexfreska committed Apr 3, 2024
1 parent 5dc0f18 commit 1e1be97
Showing 1 changed file with 8 additions and 61 deletions.
69 changes: 8 additions & 61 deletions .github/workflows/ui.yml
Original file line number Diff line number Diff line change
@@ -1,71 +1,18 @@
name: Update UI
name: Update UI and open PR

on:
# Run daily
schedule:
- cron: '0 0 * * *'
repository_dispatch:
types: [update-ui]
# Enable manual trigger
workflow_dispatch:

jobs:
update-ui:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.21'

- name: Check for new walletd tag in SiaFoundation/web
id: check-tag
env:
GH_TOKEN: ${{ github.token }}
run: |
# Fetch tags with pagination
TAGS_JSON=$(gh api --paginate repos/SiaFoundation/web/tags)
# Extract tags that start with "walletd/", sort them in version order, and pick the highest version
LATEST_WALLETD_GO_TAG=$(echo "$TAGS_JSON" | jq -r '.[] | select(.name | startswith("walletd/")).name' | sort -Vr | head -n 1)
LATEST_WALLETD_VERSION=$(echo "$LATEST_WALLETD_GO_TAG" | sed 's/walletd\///')

echo "Latest walletd tag is $LATEST_WALLETD_GO_TAG"
echo "GO_TAG=$LATEST_WALLETD_GO_TAG" >> $GITHUB_ENV
echo "VERSION=$LATEST_WALLETD_VERSION" >> $GITHUB_ENV

- name: Fetch release notes for the release
id: release-notes
env:
GH_TOKEN: ${{ github.token }}
if: env.GO_TAG != 'null'
run: |
RELEASE_TAG_FORMATTED=$(echo "$GO_TAG" | sed 's/\/v/@/')
RELEASES_JSON=$(gh api --paginate repos/SiaFoundation/web/releases)
RELEASE_NOTES=$(echo "$RELEASES_JSON" | jq -r --arg TAG_NAME "$RELEASE_TAG_FORMATTED" '.[] | select(.name == $TAG_NAME).body')
echo "Release notes for $RELEASE_TAG_FORMATTED: $RELEASE_NOTES"
echo "RELEASE_NOTES<<EOF" >> $GITHUB_ENV
echo "$RELEASE_NOTES" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
- name: Update go.mod with latest module
if: env.GO_TAG != 'null'
run: |
GO_MODULE_FORMATTED=$(echo "$GO_TAG" | sed 's/\//@/')
echo "Updating go.mod to use $GO_MODULE_FORMATTED"
go clean -modcache
go get go.sia.tech/web/$GO_MODULE_FORMATTED
go mod tidy
- name: Create Pull Request
uses: peter-evans/create-pull-request@v6
if: env.GO_TAG != 'null'
- name: Update UI and open PR
uses: SiaFoundation/workflows/.github/actions/ui-update@master
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: "ui: ${{ env.VERSION }}"
title: "ui: ${{ env.VERSION }}"
body: ${{ env.RELEASE_NOTES }}
branch: "ui/update"
delete-branch: true
moduleName: 'walletd'
goVersion: '1.21'
token: ${{ secrets.GITHUB_TOKEN }}

0 comments on commit 1e1be97

Please sign in to comment.