set env var instead of for a command #36
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build-Torchinductor | |
| on: | |
| push: | |
| branches: | |
| - main | |
| paths: | |
| - 'torchinductor_cudagraph_memory/**' | |
| - 'common_utils/**' | |
| - '.github/workflows/build-torchinductor-cudagraph.yml' | |
| pull_request: | |
| branches: | |
| - main | |
| paths: | |
| - 'torchinductor_cudagraph_memory/**' | |
| - 'common_utils/**' | |
| - '.github/workflows/build-torchinductor-cudagraph.yml' | |
| env: | |
| REGISTRY: ghcr.io | |
| NAMESPACE: ${{ github.repository }} | |
| IMAGE_NAME: torchinductor-cudagraph-memory | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| packages: write | |
| id-token: write | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| with: | |
| persist-credentials: false | |
| - name: Install cosign | |
| if: github.event_name != 'pull_request' | |
| uses: sigstore/cosign-installer@59acb6260d9c0ba8f4a2f9d9b48431a222b68e20 #v3.5.0 | |
| with: | |
| cosign-release: 'v2.2.4' | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| with: | |
| install: true | |
| - name: cleanup space on github vm | |
| run: | | |
| rm -rf /usr/share/dotnet \ | |
| /opt/ghc \ | |
| "$AGENT_TOOLSDIRECTORY" | |
| docker system prune -af || true | |
| df -h | |
| - name: Log into registry ${{ env.REGISTRY }} | |
| uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v3.0.0 | |
| with: | |
| registry: ${{ env.REGISTRY }} | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Extract Docker metadata | |
| id: meta | |
| uses: docker/metadata-action@96383f45573cb7f253c731d3b3ab81c87ef81934 # v5.0.0 | |
| with: | |
| images: ${{ env.REGISTRY }}/${{ env.NAMESPACE }}/${{ env.IMAGE_NAME }} | |
| - name: Build Docker image | |
| id: build-and-push | |
| uses: docker/build-push-action@v6 | |
| with: | |
| context: . | |
| file: torchinductor_cudagraph_memory/Dockerfile | |
| push: ${{ github.event_name != 'pull_request' }} | |
| tags: ${{ steps.meta.outputs.tags }} | |
| labels: ${{ steps.meta.outputs.labels }} | |
| build-args: | | |
| GIT_REPO=https://github.com/${{ github.repository }}.git | |
| GIT_COMMIT=${{ github.sha }} | |
| - name: Sign the published Docker image | |
| if: ${{ github.event_name != 'pull_request' }} | |
| env: | |
| TAGS: ${{ steps.meta.outputs.tags }} | |
| DIGEST: ${{ steps.build-and-push.outputs.digest }} | |
| run: echo "${TAGS}" | xargs -I {} cosign sign --yes {}@${DIGEST} | |
| - name: Clean up Docker resources | |
| if: always() | |
| run: | | |
| docker system prune -af --volumes | |
| df -h |