From d82ff04a39d588c1410fe00ae667bc1657c15ce9 Mon Sep 17 00:00:00 2001
From: David Li
Date: Thu, 16 Nov 2023 09:38:23 -0500
Subject: [PATCH] Use if always(), and skip PRs with a milestone
---
.github/workflows/dev_pr.yml | 3 +--
.github/workflows/dev_pr/milestone.sh | 10 ++++++++++
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/dev_pr.yml b/.github/workflows/dev_pr.yml
index dbba617f10..ed9852b8e0 100644
--- a/.github/workflows/dev_pr.yml
+++ b/.github/workflows/dev_pr.yml
@@ -38,7 +38,6 @@ jobs:
persist-credentials: false
- name: Check title for Conventional Commits format
- continue-on-error: true
if: |
github.event_name == 'pull_request_target' &&
(github.event.action == 'opened' ||
@@ -51,7 +50,7 @@ jobs:
await script({github, context});
- name: Assign milestone
- continue-on-error: true
+ if: always()
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
diff --git a/.github/workflows/dev_pr/milestone.sh b/.github/workflows/dev_pr/milestone.sh
index 6f5643701c..cc9fe62155 100755
--- a/.github/workflows/dev_pr/milestone.sh
+++ b/.github/workflows/dev_pr/milestone.sh
@@ -26,10 +26,20 @@ main() {
local -r pr_number="${2}"
echo "On ${repo} pull ${pr_number}"
+ local -r existing_milestone=$(gh pr view "${pr_number}" \
+ --json milestone \
+ -t '{{if .milestone}}{{.milestone.title}}{{else}}{{end}}')
+
+ if [[ ! -z "${existing_milestone}" ]]; then
+ echo "PR has milestone: ${existing_milestone}"
+ return 0
+ fi
+
local -r latest_version=$(git ls-remote --heads origin |
grep -o '[0-9.]*$' |
sort --version-sort |
tail -n1)
+
local -r milestone=$(gh api "/repos/${repo}/milestones" |
jq -r '.[] | .title' |
grep -E '^ADBC Libraries' |