actions / actions/runner-container-hooks

Allow BUILDKIT_HOST to build Docker Container Actions in Kubernetes mode

Open
#281 0 comments 24 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
153
Forks
112
Avg merge
6m
Merged PRs (30d)
1

Description

What would you like added?

Allow the kubernetes mode GHA runner to run a remote build for Docker Container Actions if a BUILDKIT_HOST and image registry is provided.

Why is this needed?

Today, when passing a Docker Container Actions such as this one to a self hosting GHA in kubernetes mode, there will be a hardcoded error:

Error: Error: Building container actions is not currently supported
Error: Process completed with exit code 1.
Error: Executing the custom container implementation failed. Please contact your self hosted runner administrator.

It makes sense as in this case, by default there is no privilege to run docker build in local without dind.
But in the case the user already has configured a proper remote buildkit, buildx could simply execute the build and override the container when creating the pod.

Additional context

This is based on this community discussion
https://github.com/orgs/community/discussions/172177

I also had created the ticket https://github.com/actions/actions-runner-controller/issues/4236 it case it would be there

On this answer, it was mentioned the problem could be in action container hooks, hence the current issue
https://github.com/orgs/community/discussions/172177#discussioncomment-15015195

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the linked community discussion and locating the Kubernetes-mode handling for Docker Container Actions in this repository. Reproduce the reported unsupported-build error, then verify that providing BUILDKIT_HOST and an image registry enables the remote build and pod override without requiring local Docker privileges.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, github-actions, kubernetes, typescript
Domain
ci-cd, devops, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.