name: BuildKit Build and push - dev description: "Build and push images using remote Buildkit" inputs: registry_addr: description: registry address required: true registry_username: description: "registry username" required: true registry_password: description: "registry password" required: true buildkit_addr: description: "buildkit address" required: true tags: description: "image tags / buildctl image name" required: true context: description: "buildctl build context" required: false default: "." dockerfile: description: "buildctl build dockerfile/folder" required: true default: "." filename: description: "Docker file name (Default: Dockerfile)" required: true default: "Dockerfile" build_args: description: "Build arguments (multiline KEY=VALUE)" required: false default: "" runs: using: "composite" steps: - name: run buildctl build and push shell: bash run: | ############################################### # Create DOCKER_CONFIG for this pipeline ############################################### DOCKER_CONFIG_DIR="${RUNNER_TEMP}/.buildctl_docker" mkdir -p "$DOCKER_CONFIG_DIR" trap 'rm -rf "$DOCKER_CONFIG_DIR"' EXIT AUTH=$(printf "%s:%s" "${{ inputs.registry_username }}" "${{ inputs.registry_password }}" | base64 -w0) cat > "$DOCKER_CONFIG_DIR/config.json" <