3434 AGENT_VERSION=$(docker run --rm temp-version cat /tmp/agent_version.txt)
3535 echo "agent-version=$AGENT_VERSION" >> $GITHUB_OUTPUT
3636 echo "Azure DevOps Agent Version: $AGENT_VERSION"
37+
38+ - name : Generate Build Version
39+ id : build-version
40+ run : |
41+ # Générer version de build: 1.0.GITHUB_RUN_NUMBER
42+ BUILD_VERSION="1.0.${{ github.run_number }}"
43+ echo "build-version=$BUILD_VERSION" >> $GITHUB_OUTPUT
44+ echo "Build Version: $BUILD_VERSION"
45+
46+ # Version combinée: agent-version-build-version
47+ COMBINED_VERSION="${{ steps.agent-version.outputs.agent-version }}-$BUILD_VERSION"
48+ echo "combined-version=$COMBINED_VERSION" >> $GITHUB_OUTPUT
49+ echo "Combined Version: $COMBINED_VERSION"
3750
3851 - name : Log in to Docker Hub
39- if : github.event_name != 'pull_request'
52+ if : startsWith( github.ref, 'refs/tags/')
4053 uses : docker/login-action@v3
4154 with :
4255 registry : ${{ env.REGISTRY }}
5467 type=semver,pattern={{version}}
5568 type=semver,pattern={{major}}.{{minor}}
5669 type=sha,prefix=sha-
70+ type=raw,value=${{ steps.build-version.outputs.combined-version }}
5771 type=raw,value=${{ steps.agent-version.outputs.agent-version }}
5872 type=raw,value=agent-${{ steps.agent-version.outputs.agent-version }}
5973 type=raw,value=latest,enable={{is_default_branch}}
@@ -63,14 +77,23 @@ jobs:
6377 with :
6478 context : .
6579 platforms : linux/amd64,linux/arm64,linux/arm/v7
66- push : ${{ github.event_name != 'pull_request' }}
80+ push : ${{ startsWith( github.ref, 'refs/tags/') }}
6781 tags : ${{ steps.meta.outputs.tags }}
6882 labels : ${{ steps.meta.outputs.labels }}
6983 build-args : |
7084 INSTALL_AWS_SSM=true
7185 cache-from : type=gha
7286 cache-to : type=gha,mode=max
7387
88+ - name : Build Info
89+ run : |
90+ if [[ "${{ github.ref }}" == refs/tags/* ]]; then
91+ echo "✅ Images will be pushed to Docker Hub (Tag detected: ${{ github.ref }})"
92+ else
93+ echo "ℹ️ Images built but NOT pushed to Docker Hub (Branch: ${{ github.ref }})"
94+ echo "💡 Create a tag (git tag v1.0.0 && git push --tags) to publish to Docker Hub"
95+ fi
96+
7497 - name : Test Docker image
7598 if : github.event_name == 'pull_request'
7699 run : |
@@ -92,15 +115,34 @@ jobs:
92115 echo "| Image | \`${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}\` |" >> $GITHUB_STEP_SUMMARY
93116 echo "| Tags | \`${{ steps.meta.outputs.tags }}\` |" >> $GITHUB_STEP_SUMMARY
94117 echo "| Azure DevOps Agent | \`${{ steps.agent-version.outputs.agent-version }}\` |" >> $GITHUB_STEP_SUMMARY
118+ echo "| Build Version | \`${{ steps.build-version.outputs.build-version }}\` |" >> $GITHUB_STEP_SUMMARY
119+ echo "| Combined Version | \`${{ steps.build-version.outputs.combined-version }}\` |" >> $GITHUB_STEP_SUMMARY
95120 echo "| Platforms | linux/amd64, linux/arm64, linux/arm/v7 |" >> $GITHUB_STEP_SUMMARY
96121 echo "| AWS SSM | ✅ Enabled |" >> $GITHUB_STEP_SUMMARY
97122 echo "| Registry | Docker Hub (docker.io) |" >> $GITHUB_STEP_SUMMARY
123+ if [[ "${{ github.ref }}" == refs/tags/* ]]; then
124+ echo "| Published | ✅ **Published to Docker Hub** |" >> $GITHUB_STEP_SUMMARY
125+ else
126+ echo "| Published | ⚠️ **Built only (not published)** |" >> $GITHUB_STEP_SUMMARY
127+ fi
98128 echo "" >> $GITHUB_STEP_SUMMARY
99- echo "### 📦 Usage" >> $GITHUB_STEP_SUMMARY
100- echo "\`\`\`bash" >> $GITHUB_STEP_SUMMARY
101- echo "# Latest image" >> $GITHUB_STEP_SUMMARY
102- echo "docker pull ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest" >> $GITHUB_STEP_SUMMARY
103- echo "" >> $GITHUB_STEP_SUMMARY
104- echo "# Specific agent version" >> $GITHUB_STEP_SUMMARY
105- echo "docker pull ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.agent-version.outputs.agent-version }}" >> $GITHUB_STEP_SUMMARY
106- echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
129+ if [[ "${{ github.ref }}" == refs/tags/* ]]; then
130+ echo "### 📦 Usage" >> $GITHUB_STEP_SUMMARY
131+ echo "\`\`\`bash" >> $GITHUB_STEP_SUMMARY
132+ echo "# Latest image" >> $GITHUB_STEP_SUMMARY
133+ echo "docker pull ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest" >> $GITHUB_STEP_SUMMARY
134+ echo "" >> $GITHUB_STEP_SUMMARY
135+ echo "# Specific combined version (agent-build)" >> $GITHUB_STEP_SUMMARY
136+ echo "docker pull ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.build-version.outputs.combined-version }}" >> $GITHUB_STEP_SUMMARY
137+ echo "" >> $GITHUB_STEP_SUMMARY
138+ echo "# Specific agent version" >> $GITHUB_STEP_SUMMARY
139+ echo "docker pull ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.agent-version.outputs.agent-version }}" >> $GITHUB_STEP_SUMMARY
140+ echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
141+ else
142+ echo "### 🏷️ To Publish" >> $GITHUB_STEP_SUMMARY
143+ echo "Create a tag to publish to Docker Hub:" >> $GITHUB_STEP_SUMMARY
144+ echo "\`\`\`bash" >> $GITHUB_STEP_SUMMARY
145+ echo "git tag v1.0.0" >> $GITHUB_STEP_SUMMARY
146+ echo "git push --tags" >> $GITHUB_STEP_SUMMARY
147+ echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
148+ fi
0 commit comments