Admin - Use GraphQL to find PR, instead of commit msg (#3792)
This commit is contained in:
parent
0ab7362f8b
commit
5aa8d03a59
36
.github/workflows/build.yml
vendored
36
.github/workflows/build.yml
vendored
@ -193,10 +193,39 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
version=$(grep -oP '(?<=__version__ = ")[0-9.a-z]+(?=")' moto/__init__.py)
|
version=$(grep -oP '(?<=__version__ = ")[0-9.a-z]+(?=")' moto/__init__.py)
|
||||||
echo "moto_version=$version" >> $GITHUB_ENV
|
echo "moto_version=$version" >> $GITHUB_ENV
|
||||||
|
- uses: octokit/graphql-action@v2.x
|
||||||
|
name: Get PR info
|
||||||
|
id: get_pr
|
||||||
|
with:
|
||||||
|
query: |
|
||||||
|
query get_pr($owner:String!,$repo:String!,$commit:GitObjectID) {
|
||||||
|
repository(owner:$owner,name:$repo) {
|
||||||
|
object(oid:$commit) {
|
||||||
|
... on Commit {
|
||||||
|
associatedPullRequests(last: 1){
|
||||||
|
edges {
|
||||||
|
node {
|
||||||
|
baseRepository {
|
||||||
|
nameWithOwner
|
||||||
|
}
|
||||||
|
merged
|
||||||
|
number
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
owner: ${{ github.event.repository.owner.name }}
|
||||||
|
repo: ${{ github.event.repository.name }}
|
||||||
|
commit: "${{ github.sha }}"
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
- name: Get PR number
|
- name: Get PR number
|
||||||
run: |
|
run: |
|
||||||
msg="${{ github.event.commits[0].message }}"
|
nr="${{ fromJSON(steps.get_pr.outputs.data).repository.object.associatedPullRequests.edges[0].node.number }}"
|
||||||
nr=$(grep -oP '\(#\K[0-9]+' <<< "$msg" | head -n 1)
|
repo="${{ fromJSON(steps.get_pr.outputs.data).repository.object.associatedPullRequests.edges[0].node.baseRepository.nameWithOwner }}"
|
||||||
if [ -z "$nr" ]
|
if [ -z "$nr" ]
|
||||||
then
|
then
|
||||||
echo "PR nr not found in $msg"
|
echo "PR nr not found in $msg"
|
||||||
@ -204,11 +233,12 @@ jobs:
|
|||||||
else
|
else
|
||||||
echo "PR NR: $nr"
|
echo "PR NR: $nr"
|
||||||
echo "pr_nr=$nr" >> $GITHUB_ENV
|
echo "pr_nr=$nr" >> $GITHUB_ENV
|
||||||
|
echo "pr_repo=$repo" >> $GITHUB_ENV
|
||||||
echo "pr_found=true" >> $GITHUB_ENV
|
echo "pr_found=true" >> $GITHUB_ENV
|
||||||
fi
|
fi
|
||||||
- name: Leave PR comment with Moto version
|
- name: Leave PR comment with Moto version
|
||||||
uses: peter-evans/create-or-update-comment@v1
|
uses: peter-evans/create-or-update-comment@v1
|
||||||
if: env.pr_found == 'true'
|
if: env.pr_found == 'true' && env.pr_repo == 'spulec/moto'
|
||||||
with:
|
with:
|
||||||
issue-number: ${{ env.pr_nr }}
|
issue-number: ${{ env.pr_nr }}
|
||||||
body: |
|
body: |
|
||||||
|
@ -95,7 +95,7 @@ def prerelease_version():
|
|||||||
assert (
|
assert (
|
||||||
initpy_ver > ver
|
initpy_ver > ver
|
||||||
), "the moto/__init__.py version should be newer than the last tagged release."
|
), "the moto/__init__.py version should be newer than the last tagged release."
|
||||||
return "{initpy_ver}.{commits_since}".format(
|
return "{initpy_ver}{commits_since}".format(
|
||||||
initpy_ver=initpy_ver, commits_since=commits_since
|
initpy_ver=initpy_ver, commits_since=commits_since
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user