|
75 | 75 | type=schedule,pattern=nightly
|
76 | 76 | type=raw,value=${{ inputs.image_tag || 'trunk' }}
|
77 | 77 |
|
78 |
| - - name: Build and push docker image |
| 78 | + - name: Build docker image |
79 | 79 | uses: docker/build-push-action@v4
|
80 | 80 | with:
|
81 |
| - push: true |
82 | 81 | context: .
|
83 | 82 | file: main/.github/docker/Dockerfile
|
84 | 83 | tags: ${{ steps.meta.outputs.tags }}
|
|
87 | 86 | provenance: false
|
88 | 87 | cache-from: type=s3,name=local_ydb,region=ru-central1,bucket=${{ vars.AWS_BUCKET }},endpoint_url=${{ vars.AWS_ENDPOINT }},access_key_id=${{ secrets.AWS_KEY_ID }},secret_access_key=${{ secrets.AWS_KEY_VALUE }}
|
89 | 88 | cache-to: type=s3,name=local_ydb,region=ru-central1,bucket=${{ vars.AWS_BUCKET }},endpoint_url=${{ vars.AWS_ENDPOINT }},access_key_id=${{ secrets.AWS_KEY_ID }},secret_access_key=${{ secrets.AWS_KEY_VALUE }},mode=max
|
| 89 | + |
| 90 | + - name: Test docker image |
| 91 | + continue-on-error: false |
| 92 | + run: | |
| 93 | + docker run -d --name local-ydb-test ghcr.io/${{ github.repository_owner }}/local-ydb:nightly |
| 94 | + sleep 61 # Wait for the health check to run (--start-period=60s --interval=1s) |
| 95 | + if [ "$(docker inspect --format='{{json .State.Health.Status}}' local-ydb-test)" != "\"healthy\"" ]; then |
| 96 | + echo "Container is not healthy" |
| 97 | + docker logs local-ydb-test |
| 98 | + exit 1 |
| 99 | + fi |
| 100 | + docker stop local-ydb-test |
| 101 | + docker rm local-ydb-test |
| 102 | +
|
| 103 | + - name: Push docker image |
| 104 | + uses: docker/build-push-action@v4 |
| 105 | + with: |
| 106 | + context: . |
| 107 | + push: true |
| 108 | + tags: ${{ steps.meta.outputs.tags }} |
| 109 | + cache-to: type=s3,name=local_ydb,region=ru-central1,bucket=${{ vars.AWS_BUCKET }},endpoint_url=${{ vars.AWS_ENDPOINT }},access_key_id=${{ secrets.AWS_KEY_ID }},secret_access_key=${{ secrets.AWS_KEY_VALUE }},mode=max |
0 commit comments