Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 0 additions & 69 deletions .github/actions/docker-build-and-push/action.yaml

This file was deleted.

40 changes: 0 additions & 40 deletions .github/actions/get-group-topic/action.yaml

This file was deleted.

69 changes: 0 additions & 69 deletions .github/actions/jfrog-build-publish/action.yaml

This file was deleted.

106 changes: 106 additions & 0 deletions .github/workflows/docker-build-push-dockerhub.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
on:
workflow_call:
inputs:
repo_name:
description: "Name of the repository to publish to"
type: string
required: false
default: "nethermindeth"
image_name:
description: "Name of the image to publish. Defaults to the repository name."
type: string
required: false
default: "${{ github.event.repository.name }}"
push:
description: "Whether or not to push to Artifactory"
type: boolean
default: true
required: false
context:
description: "Build's context is the set of files located in the specified PATH or URL"
type: string
default: "."
required: false
platforms:
description: "Platforms to build for (comma-separated)"
type: string
default: "linux/amd64,linux/arm64"
required: false
setup-qemu:
description: "Set up QEMU"
type: boolean
default: false
required: false
dockerfile_path:
description: "Path to Dockerfile"
type: string
default: "Dockerfile"
required: false
additional_tags:
description: "Additional tags to apply (comma-separated)"
type: string
default: ""
required: false
docker_secrets:
description: "List of secrets to expose to the build (e.g., key=string, GIT_AUTH_TOKEN=mytoken)"
type: string
required: false
docker_secret_envs:
description: "List of secret env vars to expose to the build (e.g., key=envname, MY_SECRET=MY_ENV_VAR)"
required: false
type: string
docker_secret_files:
description: "List of secret files to expose to the build (e.g., key=filename, MY_SECRET=./secret.txt)"
required: false
type: string
docker_ulimit:
description: "Ulimit options (e.g., nofile=1024:1024)"
required: false
type: string
docker_build_args:
description: "List of build-time variables"
required: false
type: string
secrets:
dockerhub_username:
description: "Docker Hub username"
required: true
dockerhub_password:
description: "Docker Hub password"
required: true

permissions:
id-token: write
attestations: write
contents: read

jobs:
publish:
name: Build and publish Docker image
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1

- name: Login to Docker Hub
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
with:
username: ${{ secrets.dockerhub_username }}
password: ${{ secrets.dockerhub_password }}

- name: Build and push
uses: NethermindEth/github-action-image-build-and-push@9d4a91878e15e6014e3d1f463999e169cadca825
with:
registry: "dockerhub"
image_name: ${{ inputs.repo_name }}/${{ inputs.image_name }}
image_tags: ${{ inputs.additional_tags }}
push-to-registry: ${{ inputs.push }}
platforms: ${{ inputs.platforms }}
context: ${{ inputs.context }}
dockerfile_path: ${{ inputs.dockerfile_path }}
setup-qemu: ${{ inputs.setup-qemu }}
secrets: ${{ inputs.docker_secrets }}
secret-envs: ${{ inputs.docker_secret_envs }}
secret-files: ${{ inputs.docker_secret_files }}
ulimit: ${{ inputs.docker_ulimit }}
build-args: ${{ inputs.docker_build_args }}
Loading