Skip to content
play

GitHub Action

container-build-push

1.1.2 Latest version

container-build-push

play

container-build-push

Simple github action that uses various docker actions to build and publish multiarch container images with meaningful tags

Installation

Copy and paste the following snippet into your .yml file.

              

- name: container-build-push

uses: infinite-automations/full-build-push-action@1.1.2

Learn more about this action in infinite-automations/full-build-push-action

Choose a version

full-build-push-action

Simple github action that uses various docker actions to build and publish multiarch container images with meaningful tags.

full-build-push-action just act like a wrapper to include one action instead of 4 or 5. There's no special code included with some additional content.

Included actions:

configuration / inputs

key description default required
context build's context is the set of files located in the specified path "." no
file path to the Dockerfile ./Dockerfile no
checkout-deploy-key "" "" no
registry container registry ghcr.io yes
user container registry user ${{ github.actor }} yes
token container registry token none yes
platforms container target platforms linux/amd64,linux/arm/v7,linux/arm64 no

examples

without semantic release

name: container build
on:
  push:
    tags:
      - '**'
    branches:
      - '**'
  schedule:
    - cron: '0 0 * * *'
jobs:
  container-build:
    runs-on: ubuntu-latest
    permissions:
      packages: write
    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: container-build
        uses: infinite-automations/full-build-push-action@main
        with:
          token: "${{ secrets.GITHUB_TOKEN }}"

with semantic release

container-build.yml

name: container build
on:
  push:
    tags:
      - '**'
    branches:
      - '**'
      - '!master'
  schedule:
    - cron: '0 0 * * *'
jobs:
  container-build:
    runs-on: ubuntu-latest
    permissions:
      packages: write
    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: container-build
        uses: infinite-automations/full-build-push-action@main
        with:
          token: "${{ secrets.GITHUB_TOKEN }}"
          checkout-deploy-key: "${{ secrets.COMMIT_KEY }}"

release.yml

name: release
on:
  push:
    branches:
      - master
      - main
jobs:
  release:
    runs-on: ubuntu-latest
    permissions:
      contents: write
      issues: write
      pull-requests: write
    steps:
      - name: checkout
        uses: actions/checkout@v4
        with:
          ssh-key: "${{ secrets.COMMIT_KEY }}"
      - name: Semantic Release
        uses: cycjimmy/semantic-release-action@v4
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}