-
Notifications
You must be signed in to change notification settings - Fork 20
72 lines (66 loc) · 3.32 KB
/
kommander-revert-kapps-ref.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
name: "Revert k-apps ref"
on:
pull_request:
types: [closed]
workflow_dispatch: {}
permissions:
pull-requests: write
contents: write
jobs:
get-kapps-branch-name:
runs-on: ubuntu-latest
if: github.event.pull_request.merged == true && contains(github.event.pull_request.labels.*.name, 'open-kommander-pr')
outputs:
branch_name: ${{ steps.branch-name.outputs.branch_name }}
escaped_branch_name: ${{ steps.escaped-branch-name.outputs.escaped_branch_name }}
base_branch_name: ${{ steps.base-branch-name.outputs.base_branch_name }}
steps:
- id: branch-name
run: echo "branch_name=${{ github.head_ref }}" >> $GITHUB_OUTPUT
- id: escaped-branch-name
run: echo "escaped_branch_name=$(echo ${{ github.head_ref }} | sed -e 's/\//\\\//g')" >> $GITHUB_OUTPUT
- id: base-branch-name
run: echo "base_branch_name=${{ github.base_ref }}" >> $GITHUB_OUTPUT
- name: Check output branch-name
run: echo ${{ steps.branch-name.outputs.branch_name }}
- name: Check output escaped-branch-name
run: echo ${{ steps.escaped-branch-name.outputs.escaped_branch_name }}
- name: Check output base-branch-name
run: echo ${{ steps.base-branch-name.outputs.base_branch_name }}
update-kommander-branch:
runs-on: ubuntu-latest
needs: get-kapps-branch-name
if: success()
steps:
- uses: actions/checkout@v3
with:
repository: 'mesosphere/kommander'
ssh-key: ${{ secrets.KOMM_PRIVATE_SSH_KEY }}
path: 'kommander'
fetch-depth: '0'
- name: Import GPG key
uses: crazy-max/ghaction-import-gpg@v4
with:
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
passphrase: ${{ secrets.GPG_PASSPHRASE }}
git_user_signingkey: true
git_commit_gpgsign: true
git_tag_gpgsign: true
workdir: 'kommander'
- name: Revert kommander-applications ref back to ${{ needs.get-kapps-branch-name.outputs.base_branch_name }} on kommander branch
run: |
cd kommander
git config user.name d2iq-mergebot
git config user.email ci-mergebot@d2iq.com
git config user.signingKey ${{ secrets.GPG_KEY_ID }}
# If branch does not exist, do nothing
git show-ref --quiet --verify -- refs/remotes/origin/kapps/${{ needs.get-kapps-branch-name.outputs.base_branch_name }}/${{ needs.get-kapps-branch-name.outputs.branch_name }} && {
git checkout kapps/${{ needs.get-kapps-branch-name.outputs.base_branch_name }}/${{ needs.get-kapps-branch-name.outputs.branch_name }}
# Point the kommander-applications ref to the k-apps branch
sed -i 's/KOMMANDER_APPLICATIONS_REF ?= ${{ needs.get-kapps-branch-name.outputs.escaped_branch_name }}/KOMMANDER_APPLICATIONS_REF ?= ${{ needs.get-kapps-branch-name.outputs.base_branch_name }}/' Makefile
git add Makefile
if output=$(git status --porcelain) && [ ! -z "$output" ]; then
git commit -v -m "build: Point kommander-applications ref back to ${{ needs.get-kapps-branch-name.outputs.base_branch_name }}"
git push --force-with-lease --set-upstream origin kapps/${{ needs.get-kapps-branch-name.outputs.base_branch_name }}/${{ needs.get-kapps-branch-name.outputs.branch_name }}
fi
}