Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mono action #87

Merged
merged 37 commits into from
Aug 14, 2020
Merged

Mono action #87

merged 37 commits into from
Aug 14, 2020

Conversation

crazy-max
Copy link
Member

@crazy-max crazy-max commented Aug 11, 2020

Ref. #71

setup-buildx

This actions allows to set up Docker Buildx. It's written as a typescript-action to be as closed as possible of the GitHub Runner during its execution.

  • Allow to choose buildx version (default to the one installed on the runner)
  • Allow to install buildx by default
  • Set builder name to allow isolated builder instances
  • Add driver input. Default to docker-container
  • Add driver-opt input.
  • Add use input. Default true
  • Output available platforms
  • Documentation with examples
  • Tests and/or CI workflows

setup-qemu

This action allows to install QEMU static binaries. It's written as a typescript-action to be as closed as possible of the GitHub Runner during its execution.

  • QEMU static binaries Docker image. Default to tonistiigi/binfmt:latest for now.
  • Platforms to install. Default to all.
  • Output available platforms
  • Use it with setup-buildx action
  • Documentation with examples
  • Tests and/or CI workflows

build-push

Will be made in a further PR

@crazy-max crazy-max self-assigned this Aug 11, 2020
This was referenced Aug 11, 2020
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
@crazy-max
Copy link
Member Author

@tonistiigi Wonder if "Opt-in to buildkit for all docker build commands" is really necessary because buildx will always build using the BuildKit engine and does not require DOCKER_BUILDKIT=1 environment variable for starting builds.

setup-buildx/.editorconfig Outdated Show resolved Hide resolved
setup-buildx/README.md Outdated Show resolved Hide resolved
setup-buildx/README.md Show resolved Hide resolved
setup-buildx/README.md Show resolved Hide resolved
setup-buildx/src/main.ts Outdated Show resolved Hide resolved
setup-qemu/src/main.ts Outdated Show resolved Hide resolved
setup-qemu/README.md Outdated Show resolved Hide resolved
setup-buildx/src/installer.ts Outdated Show resolved Hide resolved
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Add platforms input to choose what platforms to install

Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Use default buildx on runner

Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
@crazy-max crazy-max requested a review from tonistiigi August 12, 2020 18:33
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
setup-buildx/src/main.ts Outdated Show resolved Hide resolved
async function run(): Promise<void> {
try {
if (os.platform() !== 'linux') {
core.setFailed('Only supported on linux platform');
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure if this is a good idea but we do have mac and windows releases of buildx. It would not work by default though but with a remote endpoint. Thinking about that, maybe we should support remote endpoint, but don't have a good flow in mind atm. Maybe option that allows skipping "create" step so create can be run inside workflow with custom endpoint configuration.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think that adding support for platforms other than Linux is paramount as it stands, especially since Docker is not installed on MacOS virtual environments.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, not that important. Buildx does work without a docker binary as well though.

setup-qemu/.gitattributes Show resolved Hide resolved
setup-qemu/README.md Show resolved Hide resolved
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
@crazy-max crazy-max requested a review from tonistiigi August 13, 2020 08:58
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
@crazy-max crazy-max changed the base branch from master to mig August 14, 2020 17:56
@crazy-max crazy-max changed the base branch from mig to v2-working-branch August 14, 2020 17:59
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
@crazy-max crazy-max requested a review from tonistiigi August 14, 2020 18:02
@tonistiigi tonistiigi merged commit 3f08c86 into v2-working-branch Aug 14, 2020
@crazy-max crazy-max deleted the mono-action branch August 14, 2020 18:03
crazy-max added a commit to docker/setup-buildx-action that referenced this pull request Aug 18, 2020
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
crazy-max added a commit to docker/setup-qemu-action that referenced this pull request Aug 18, 2020
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
@crazy-max crazy-max added this to the v2 milestone Sep 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants