Compare commits
10 Commits
sisyphus/c
...
785502f113
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
785502f113 | ||
|
|
c657a123df | ||
|
|
5c815c824a | ||
|
|
5e3968bd69 | ||
|
|
145c47a439 | ||
|
|
49466839a3 | ||
| 6a912412c6 | |||
|
|
01d5e1e330 | ||
| b4b9d23429 | |||
| 7d9e7d146e |
@@ -88,37 +88,38 @@ jobs:
|
|||||||
echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login ${{ env.REGISTRY_HOST }} \
|
echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login ${{ env.REGISTRY_HOST }} \
|
||||||
--username "${{ secrets.REGISTRY_USERNAME }}" --password-stdin
|
--username "${{ secrets.REGISTRY_USERNAME }}" --password-stdin
|
||||||
|
|
||||||
- name: Build backend image
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
with:
|
||||||
|
config-inline: |
|
||||||
|
[registry."192.168.241.13:8080"]
|
||||||
|
http = true
|
||||||
|
insecure = true
|
||||||
|
|
||||||
|
- name: Build and push backend multi-arch image
|
||||||
working-directory: ./backend
|
working-directory: ./backend
|
||||||
run: |
|
run: |
|
||||||
docker build \
|
docker buildx build \
|
||||||
-t ${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }} \
|
--platform linux/amd64,linux/arm64 \
|
||||||
|
--tag ${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }} \
|
||||||
|
--tag ${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:sha-${{ needs.prepare.outputs.image_sha }} \
|
||||||
|
--push \
|
||||||
-f Dockerfile \
|
-f Dockerfile \
|
||||||
.
|
.
|
||||||
|
|
||||||
- name: Tag with commit SHA
|
- name: Capture push evidence (multi-arch)
|
||||||
run: |
|
|
||||||
docker tag \
|
|
||||||
${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }} \
|
|
||||||
${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:sha-${{ needs.prepare.outputs.image_sha }}
|
|
||||||
|
|
||||||
- name: Push images to registry
|
|
||||||
run: |
|
|
||||||
docker push ${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }}
|
|
||||||
docker push ${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:sha-${{ needs.prepare.outputs.image_sha }}
|
|
||||||
|
|
||||||
- name: Capture push evidence
|
|
||||||
run: |
|
run: |
|
||||||
mkdir -p .sisyphus/evidence
|
mkdir -p .sisyphus/evidence
|
||||||
cat > .sisyphus/evidence/task-31-backend-push.json <<EOF
|
cat > .sisyphus/evidence/task-31-backend-push.json <<EOF
|
||||||
{
|
{
|
||||||
"scenario": "backend_image_push",
|
"scenario": "backend_image_push_multiarch",
|
||||||
"result": "success",
|
"result": "success",
|
||||||
"timestamp": "$(date -u +%Y-%m-%dT%H:%M:%SZ)",
|
"timestamp": "$(date -u +%Y-%m-%dT%H:%M:%SZ)",
|
||||||
"details": {
|
"details": {
|
||||||
"image": "${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}",
|
"image": "${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}",
|
||||||
"version_tag": "${{ needs.prepare.outputs.image_tag }}",
|
"version_tag": "${{ needs.prepare.outputs.image_tag }}",
|
||||||
"sha_tag": "sha-${{ needs.prepare.outputs.image_sha }}",
|
"sha_tag": "sha-${{ needs.prepare.outputs.image_sha }}",
|
||||||
|
"platforms": "linux/amd64,linux/arm64",
|
||||||
"registry": "${{ env.REGISTRY_HOST }}"
|
"registry": "${{ env.REGISTRY_HOST }}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -147,37 +148,38 @@ jobs:
|
|||||||
echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login ${{ env.REGISTRY_HOST }} \
|
echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login ${{ env.REGISTRY_HOST }} \
|
||||||
--username "${{ secrets.REGISTRY_USERNAME }}" --password-stdin
|
--username "${{ secrets.REGISTRY_USERNAME }}" --password-stdin
|
||||||
|
|
||||||
- name: Build frontend image
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
with:
|
||||||
|
config-inline: |
|
||||||
|
[registry."192.168.241.13:8080"]
|
||||||
|
http = true
|
||||||
|
insecure = true
|
||||||
|
|
||||||
|
- name: Build and push frontend multi-arch image
|
||||||
working-directory: ./frontend
|
working-directory: ./frontend
|
||||||
run: |
|
run: |
|
||||||
docker build \
|
docker buildx build \
|
||||||
-t ${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }} \
|
--platform linux/amd64,linux/arm64 \
|
||||||
|
--tag ${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }} \
|
||||||
|
--tag ${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:sha-${{ needs.prepare.outputs.image_sha }} \
|
||||||
|
--push \
|
||||||
-f Dockerfile \
|
-f Dockerfile \
|
||||||
.
|
.
|
||||||
|
|
||||||
- name: Tag with commit SHA
|
- name: Capture push evidence (multi-arch)
|
||||||
run: |
|
|
||||||
docker tag \
|
|
||||||
${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }} \
|
|
||||||
${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:sha-${{ needs.prepare.outputs.image_sha }}
|
|
||||||
|
|
||||||
- name: Push images to registry
|
|
||||||
run: |
|
|
||||||
docker push ${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }}
|
|
||||||
docker push ${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:sha-${{ needs.prepare.outputs.image_sha }}
|
|
||||||
|
|
||||||
- name: Capture push evidence
|
|
||||||
run: |
|
run: |
|
||||||
mkdir -p .sisyphus/evidence
|
mkdir -p .sisyphus/evidence
|
||||||
cat > .sisyphus/evidence/task-32-frontend-push.json <<EOF
|
cat > .sisyphus/evidence/task-32-frontend-push.json <<EOF
|
||||||
{
|
{
|
||||||
"scenario": "frontend_image_push",
|
"scenario": "frontend_image_push_multiarch",
|
||||||
"result": "success",
|
"result": "success",
|
||||||
"timestamp": "$(date -u +%Y-%m-%dT%H:%M:%SZ)",
|
"timestamp": "$(date -u +%Y-%m-%dT%H:%M:%SZ)",
|
||||||
"details": {
|
"details": {
|
||||||
"image": "${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}",
|
"image": "${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}",
|
||||||
"version_tag": "${{ needs.prepare.outputs.image_tag }}",
|
"version_tag": "${{ needs.prepare.outputs.image_tag }}",
|
||||||
"sha_tag": "sha-${{ needs.prepare.outputs.image_sha }}",
|
"sha_tag": "sha-${{ needs.prepare.outputs.image_sha }}",
|
||||||
|
"platforms": "linux/amd64,linux/arm64",
|
||||||
"registry": "${{ env.REGISTRY_HOST }}"
|
"registry": "${{ env.REGISTRY_HOST }}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -210,6 +212,7 @@ jobs:
|
|||||||
"frontend_image": "${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }}",
|
"frontend_image": "${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }}",
|
||||||
"backend_job_conclusion": "${{ needs.backend-image.result }}",
|
"backend_job_conclusion": "${{ needs.backend-image.result }}",
|
||||||
"frontend_job_conclusion": "${{ needs.frontend-image.result }}",
|
"frontend_job_conclusion": "${{ needs.frontend-image.result }}",
|
||||||
|
"build_platforms": "linux/amd64,linux/arm64",
|
||||||
"timestamp": "$(date -u +%Y-%m-%dT%H:%M:%SZ)"
|
"timestamp": "$(date -u +%Y-%m-%dT%H:%M:%SZ)"
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
@@ -228,10 +231,10 @@ jobs:
|
|||||||
echo "**Release Tag:** ${{ needs.prepare.outputs.image_tag }}" >> $GITHUB_STEP_SUMMARY
|
echo "**Release Tag:** ${{ needs.prepare.outputs.image_tag }}" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "**Commit SHA:** ${{ needs.prepare.outputs.image_sha }}" >> $GITHUB_STEP_SUMMARY
|
echo "**Commit SHA:** ${{ needs.prepare.outputs.image_sha }}" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "" >> $GITHUB_STEP_SUMMARY
|
echo "" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "### Published Images" >> $GITHUB_STEP_SUMMARY
|
echo "### Published Multi-Arch Images" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "- **Backend:** \`${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }}\`" >> $GITHUB_STEP_SUMMARY
|
echo "- **Backend:** \`${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }}\` (linux/amd64, linux/arm64)" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "- **Backend SHA:** \`${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:sha-${{ needs.prepare.outputs.image_sha }}\`" >> $GITHUB_STEP_SUMMARY
|
echo "- **Backend SHA:** \`${{ env.REGISTRY_HOST }}/${{ env.BACKEND_IMAGE }}:sha-${{ needs.prepare.outputs.image_sha }}\`" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "- **Frontend:** \`${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }}\`" >> $GITHUB_STEP_SUMMARY
|
echo "- **Frontend:** \`${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:${{ needs.prepare.outputs.image_tag }}\` (linux/amd64, linux/arm64)" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "- **Frontend SHA:** \`${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:sha-${{ needs.prepare.outputs.image_sha }}\`" >> $GITHUB_STEP_SUMMARY
|
echo "- **Frontend SHA:** \`${{ env.REGISTRY_HOST }}/${{ env.FRONTEND_IMAGE }}:sha-${{ needs.prepare.outputs.image_sha }}\`" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "" >> $GITHUB_STEP_SUMMARY
|
echo "" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "### Job Results" >> $GITHUB_STEP_SUMMARY
|
echo "### Job Results" >> $GITHUB_STEP_SUMMARY
|
||||||
|
|||||||
Reference in New Issue
Block a user