|
32 | 32 | - name: Checkout repository |
33 | 33 | uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 |
34 | 34 | with: |
| 35 | + persist-credentials: false |
35 | 36 | ref: main |
36 | 37 |
|
37 | 38 | - name: Setup Go environment |
@@ -66,60 +67,60 @@ jobs: |
66 | 67 | run: | |
67 | 68 | CURRENT_UNIQUE_IMAGE=$(yq '.image.tag' helm/redis/values.yaml) |
68 | 69 | echo "Extracted Unique Tags: $CURRENT_UNIQUE_IMAGE" |
69 | | - echo "CURRENT_UNIQUE_TAG=$CURRENT_UNIQUE_IMAGE" >> $GITHUB_ENV |
| 70 | + echo "CURRENT_UNIQUE_TAG=$CURRENT_UNIQUE_IMAGE" >> "$GITHUB_ENV" |
70 | 71 |
|
71 | 72 | - name: Get latest unique tag |
72 | 73 | id: get_current_unique_tag |
73 | 74 | run: | |
74 | | - LATEST_UNIQUE_TAG=$(crane ls ${{ env.REDIS_IMAGE }} | grep -E '^[^ ]+-[0-9]{12}$' | grep -v '^latest' | grep -v '\-dev' | sort -Vr | head -n 1) |
75 | | - echo "LATEST_UNIQUE_TAG=${LATEST_UNIQUE_TAG}" >> $GITHUB_ENV |
| 75 | + LATEST_UNIQUE_TAG=$(crane ls "${REDIS_IMAGE}" | grep -E '^[^ ]+-[0-9]{12}$' | grep -v '^latest' | grep -v '\-dev' | sort -Vr | head -n 1) |
| 76 | + echo "LATEST_UNIQUE_TAG=${LATEST_UNIQUE_TAG}" >> "$GITHUB_ENV" |
76 | 77 |
|
77 | 78 | - name: Compare unique tags |
78 | 79 | id: compare_unique_tags |
79 | 80 | run: | |
80 | | - echo "CURRENT_UNIQUE_TAG=${{ env.CURRENT_UNIQUE_TAG }}" |
81 | | - echo "LATEST_UNIQUE_TAG=${{ env.LATEST_UNIQUE_TAG }}" |
82 | | - if [ "${{ env.CURRENT_UNIQUE_TAG }}" != "${{ env.LATEST_UNIQUE_TAG }}" ]; then |
83 | | - echo "UNIQUE_TAGS_CHANGED=true" >> $GITHUB_ENV |
| 81 | + echo "CURRENT_UNIQUE_TAG=${CURRENT_UNIQUE_TAG}" |
| 82 | + echo "LATEST_UNIQUE_TAG=${LATEST_UNIQUE_TAG}" |
| 83 | + if [ "${CURRENT_UNIQUE_TAG}" != "${LATEST_UNIQUE_TAG}" ]; then |
| 84 | + echo "UNIQUE_TAGS_CHANGED=true" >> "$GITHUB_ENV" |
84 | 85 | else |
85 | | - echo "UNIQUE_TAGS_CHANGED=false" >> $GITHUB_ENV |
| 86 | + echo "UNIQUE_TAGS_CHANGED=false" >> "$GITHUB_ENV" |
86 | 87 | fi |
87 | 88 |
|
88 | 89 | - name: Run chainctl images diff |
89 | 90 | if: env.UNIQUE_TAGS_CHANGED == 'true' |
90 | 91 | id: diff_vulnerabilities |
91 | 92 | run: | |
92 | | - OLD_IMAGE="${{ env.REDIS_IMAGE }}:${{ env.CURRENT_UNIQUE_TAG }}" |
93 | | - NEW_IMAGE="${{ env.REDIS_IMAGE }}:${{ env.LATEST_UNIQUE_TAG }}" |
| 93 | + OLD_IMAGE="${REDIS_IMAGE}:${CURRENT_UNIQUE_TAG}" |
| 94 | + NEW_IMAGE="${REDIS_IMAGE}:${LATEST_UNIQUE_TAG}" |
94 | 95 |
|
95 | | - CVE_LIST_JSON=$(chainctl images diff $OLD_IMAGE $NEW_IMAGE 2>/dev/null | jq -c '[.vulnerabilities.removed[] | select(.severity == "Critical" or .severity == "High") | .id]') |
96 | | - echo "CVE_LIST=$CVE_LIST_JSON" >> $GITHUB_ENV |
| 96 | + CVE_LIST_JSON=$(chainctl images diff "$OLD_IMAGE" "$NEW_IMAGE" 2>/dev/null | jq -c '[.vulnerabilities.removed[] | select(.severity == "Critical" or .severity == "High") | .id]') |
| 97 | + echo "CVE_LIST=$CVE_LIST_JSON" >> "$GITHUB_ENV" |
97 | 98 |
|
98 | 99 | if [ -n "$CVE_LIST_JSON" ]; then |
99 | 100 | echo "Found CVE fixes for the following CVES: $CVE_LIST_JSON" |
100 | | - echo "FIX_CVE=true" >> $GITHUB_ENV |
| 101 | + echo "FIX_CVE=true" >> "$GITHUB_ENV" |
101 | 102 | else |
102 | 103 | echo "No CVE fixes available" |
103 | | - echo "FIX_CVE=false" >> $GITHUB_ENV |
| 104 | + echo "FIX_CVE=false" >> "$GITHUB_ENV" |
104 | 105 | fi |
105 | | - |
| 106 | +
|
106 | 107 | - env: |
107 | 108 | GITHUB_TOKEN: ${{ steps.octo-sts.outputs.token }} |
108 | 109 | run: | |
109 | 110 | gh repo list |
110 | | - |
| 111 | +
|
111 | 112 | - name: Update Helm Values |
112 | 113 | shell: bash |
113 | | - run: yq -i ".image.tag = \"${{ env.LATEST_UNIQUE_TAG }}\"" helm/redis/values.yaml |
| 114 | + run: yq -i ".image.tag = strenv(LATEST_UNIQUE_TAG)" helm/redis/values.yaml |
114 | 115 |
|
115 | 116 | - name: Run git diff |
116 | 117 | id: create_pr_update |
117 | 118 | shell: bash |
118 | 119 | run: | |
119 | 120 | git diff --stat |
120 | | - echo "create_pr_update=false" >> $GITHUB_OUTPUT |
| 121 | + echo "create_pr_update=false" >> "$GITHUB_OUTPUT" |
121 | 122 | if [[ $(git diff --stat) != '' ]]; then |
122 | | - echo "create_pr_update=true" >> $GITHUB_OUTPUT |
| 123 | + echo "create_pr_update=true" >> "$GITHUB_OUTPUT" |
123 | 124 | echo "diff<<EOF" >> "${GITHUB_OUTPUT}" |
124 | 125 | git diff >> "${GITHUB_OUTPUT}" |
125 | 126 | echo "EOF" >> "${GITHUB_OUTPUT}" |
|
0 commit comments