@@ -35,33 +35,29 @@ jobs:
35
35
36
36
- uses : ./.github/workflows/git-identity
37
37
38
- - name : Check out or create vendor branch
38
+ - name : Vendor sources
39
39
id : vendor
40
40
run : |
41
- set -x
42
- if ! git checkout vendor; then
43
- git checkout -b vendor
44
- git push -u origin HEAD
41
+ git pull --rebase
42
+ ./vendor-one.sh .git/duckdb
43
+ rm -rf .git/duckdb
44
+ git push --dry-run
45
+ # Check if ahead of upstream branch
46
+ # If yes, set a step output
47
+ if [ $(git rev-list HEAD...origin/main --count) -gt 0 ]; then
48
+ # Avoid set-output, it's deprecated
49
+ echo "vendor=ok" >> "$GITHUB_OUTPUT"
45
50
fi
46
51
47
- - name : Vendor sources
52
+ - name : Create PR
53
+ if : steps.vendor.outputs.vendor != ''
48
54
env :
49
55
GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
50
56
run : |
51
- git push --dry-run
52
-
53
- # Repeat indefinitely until all commits have been vendored
54
- # https://stackoverflow.com/a/13252187/946850
55
- while :; do
56
- ./vendor-one.sh .git/duckdb
57
- # Check if ahead of upstream branch
58
- # If yes, push and run workflow
59
- if [ $(git rev-list HEAD...origin/vendor --count) -gt 0 ]; then
60
- git push -u origin HEAD
61
- gh workflow run rcc -f ref=vendor
62
- else
63
- break
64
- fi
65
- done
66
-
67
- rm -rf .git/duckdb
57
+ set -x
58
+ git checkout -b vendor
59
+ if git push -u origin HEAD; then
60
+ gh pr create --fill-first
61
+ gh workflow run rcc -f ref=vendor
62
+ gh pr merge --auto --squash
63
+ fi
0 commit comments