Skip to content

Commit 3af582e

Browse files
initial commit
1 parent 2495c5f commit 3af582e

File tree

1 file changed

+18
-4
lines changed

1 file changed

+18
-4
lines changed

.github/workflows/pr-labels.yaml

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,16 +48,30 @@ jobs:
4848
fi
4949
5050
- name: List all ginkgo tests labels
51+
id: list-ginkgo-labels
52+
if: ${{ steps.check-all.outputs.run-all == 'false' }}
5153
run: |
5254
sudo apt-get install -y jq
5355
go install github.com/onsi/ginkgo/v2/ginkgo@latest
5456
ginkgo labels ./test/e2e | cut -c 5- > e2e_labels.txt
5557
ginkgo labels ./test/int | cut -c 5- > int_labels.txt
56-
labels=$(jq -s '.[0] + .[1] | unique' e2e_labels.txt int_labels.txt)
57-
echo "Available labels: $labels"
58-
echo "available-labels=$labels" >> $GITHUB_ENV
58+
jq -s '.[0] + .[1] | unique' e2e_labels.txt int_labels.txt > all_labels.json
59+
available_labels=$(jq -r '.[]' all_labels.json)
60+
echo "Available labels: $available_labels"
61+
echo "available-labels=$available_labels" >> $GITHUB_ENV
62+
63+
pr_labels="${{ steps.get-labels.outputs.labels }}"
64+
intersection=$(echo $pr_labels $available_labels | tr ' ' '\n' | sort | uniq -d)
65+
echo "Intersection of PR labels and available labels: $intersection"
66+
echo "intersection-labels=$intersection" >> $GITHUB_ENV
67+
68+
echo "${{ steps.get-labels.outputs.labels }}" | jq -R 'split(",")' > pr_labels.json
69+
jq -s '.[0] as $all | .[1] | map(select($all[] == .))' all_labels.json pr_labels.json > merged_labels.json
5970
60-
- name: Run e2e tests
71+
- name: Run all e2e tests
72+
if: ${{ steps.check-all.outputs.run-all == 'true' }}
73+
74+
- name: Run selected e2e tests
6175
if: ${{ steps.get-labels.outputs.labels != '' }}
6276
run: |
6377
echo "Labels from PR: ${{ steps.get-labels.outputs.labels }}"

0 commit comments

Comments
 (0)