Validating build configuration with GitHub Actions
Table des matières
Les
vérifications de construction vous permettent
de valider votre configuration docker build
sans réellement exécuter la
construction.
Exécuter des vérifications avec docker/build-push-action
Pour exécuter des vérifications de construction dans un workflow GitHub Actions
avec le build-push-action
, définissez le paramètre d'entrée call
sur check
.
Avec cette configuration, le workflow échoue si des avertissements de
vérification sont détectés pour la configuration de votre construction.
name: ci
on:
push:
jobs:
docker:
runs-on: ubuntu-latest
steps:
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Validate build configuration
uses: docker/build-push-action@v6
with:
call: check
- name: Build and push
uses: docker/build-push-action@v6
with:
push: true
tags: user/app:latest
Exécuter des vérifications avec docker/bake-action
Si vous utilisez Bake et docker/bake-action
pour exécuter vos constructions,
vous n'avez pas besoin de spécifier d'entrées spéciales dans votre configuration
de workflow GitHub Actions. Au lieu de cela, définissez une cible Bake qui
appelle la méthode check
, et invoquez cette cible dans votre CI.
target "build" {
dockerfile = "Dockerfile"
args = {
FOO = "bar"
}
}
target "validate-build" {
inherits = ["build"]
call = "check"
}
name: ci
on:
push:
env:
IMAGE_NAME: user/app
jobs:
docker:
runs-on: ubuntu-latest
steps:
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ vars.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Validate build configuration
uses: docker/bake-action@v6
with:
targets: validate-build
- name: Build
uses: docker/bake-action@v6
with:
targets: build
push: true