|
11 | 11 | web: ${{ steps.changes.outputs.web }} |
12 | 12 | server: ${{ steps.changes.outputs.server }} |
13 | 13 | tag: ${{ steps.meta.outputs.tag }} |
14 | | - env_name: ${{ steps.meta.outputs.env_name }} |
15 | 14 | steps: |
16 | 15 | - uses: actions/checkout@v6 |
17 | 16 | with: |
@@ -45,19 +44,17 @@ jobs: |
45 | 44 |
|
46 | 45 | - id: meta |
47 | 46 | run: | |
48 | | - # Определяем Docker-тег и окружение деплоя |
49 | | - # develop → :latest + env=beta |
50 | | - # main → :stable + env=prod |
51 | | - # v* → :version + env= (no deploy) |
| 47 | + # Определяем Docker-тег |
| 48 | + # develop → :latest |
| 49 | + # main → :stable |
| 50 | + # v* → :version |
| 51 | + # Деплой через ArgoCD Image Updater (отслеживает digest) |
52 | 52 | if [[ "$GITHUB_REF" == refs/tags/v* ]]; then |
53 | 53 | echo "tag=${GITHUB_REF#refs/tags/v}" >> "$GITHUB_OUTPUT" |
54 | | - echo "env_name=" >> "$GITHUB_OUTPUT" |
55 | 54 | elif [[ "$GITHUB_REF" == refs/heads/main ]]; then |
56 | 55 | echo "tag=stable" >> "$GITHUB_OUTPUT" |
57 | | - echo "env_name=prod" >> "$GITHUB_OUTPUT" |
58 | 56 | elif [[ "$GITHUB_REF" == refs/heads/develop ]]; then |
59 | 57 | echo "tag=latest" >> "$GITHUB_OUTPUT" |
60 | | - echo "env_name=beta" >> "$GITHUB_OUTPUT" |
61 | 58 | fi |
62 | 59 |
|
63 | 60 | lint: |
@@ -128,26 +125,6 @@ jobs: |
128 | 125 | echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin |
129 | 126 | docker tag sdsandbox-web:$TAG khorost/sdsandbox-web:$TAG |
130 | 127 | docker push khorost/sdsandbox-web:$TAG |
131 | | - - name: Deploy to prod |
132 | | - if: needs.detect-changes.outputs.env_name == 'prod' |
133 | | - run: | |
134 | | - RESPONSE=$(curl -s "${{ secrets.UPDATER_URL }}/update/sdsandbox-web-live/${{ secrets.UPDATER_KEY }}?async=1") |
135 | | - echo "Response: $RESPONSE" |
136 | | - SUBMITTED=$(echo "$RESPONSE" | jq -r '.submitted') |
137 | | - if [ "$SUBMITTED" != "ok" ]; then |
138 | | - echo "Updater call failed, submitted=$SUBMITTED" |
139 | | - exit 1 |
140 | | - fi |
141 | | - - name: Deploy to beta |
142 | | - if: needs.detect-changes.outputs.env_name == 'beta' |
143 | | - run: | |
144 | | - RESPONSE=$(curl -s "${{ secrets.UPDATER_URL }}/update/sdsandbox-web-beta/${{ secrets.UPDATER_KEY }}?async=1") |
145 | | - echo "Response: $RESPONSE" |
146 | | - SUBMITTED=$(echo "$RESPONSE" | jq -r '.submitted') |
147 | | - if [ "$SUBMITTED" != "ok" ]; then |
148 | | - echo "Updater call failed, submitted=$SUBMITTED" |
149 | | - exit 1 |
150 | | - fi |
151 | 128 |
|
152 | 129 | build-server: |
153 | 130 | needs: [detect-changes, lint-server, test-server] |
@@ -176,23 +153,3 @@ jobs: |
176 | 153 | echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin |
177 | 154 | docker tag sdsandbox-server:$TAG khorost/sdsandbox-server:$TAG |
178 | 155 | docker push khorost/sdsandbox-server:$TAG |
179 | | - - name: Deploy to prod |
180 | | - if: needs.detect-changes.outputs.env_name == 'prod' |
181 | | - run: | |
182 | | - RESPONSE=$(curl -s "${{ secrets.UPDATER_URL }}/update/sdsandbox-api-live/${{ secrets.UPDATER_KEY }}?async=1") |
183 | | - echo "Response: $RESPONSE" |
184 | | - SUBMITTED=$(echo "$RESPONSE" | jq -r '.submitted') |
185 | | - if [ "$SUBMITTED" != "ok" ]; then |
186 | | - echo "Updater call failed, submitted=$SUBMITTED" |
187 | | - exit 1 |
188 | | - fi |
189 | | - - name: Deploy to beta |
190 | | - if: needs.detect-changes.outputs.env_name == 'beta' |
191 | | - run: | |
192 | | - RESPONSE=$(curl -s "${{ secrets.UPDATER_URL }}/update/sdsandbox-api-beta/${{ secrets.UPDATER_KEY }}?async=1") |
193 | | - echo "Response: $RESPONSE" |
194 | | - SUBMITTED=$(echo "$RESPONSE" | jq -r '.submitted') |
195 | | - if [ "$SUBMITTED" != "ok" ]; then |
196 | | - echo "Updater call failed, submitted=$SUBMITTED" |
197 | | - exit 1 |
198 | | - fi |
0 commit comments