erlang / docker-erlang-otp

the Official Erlang OTP image on Docker Hub
https://hub.docker.com/_/erlang/
Apache License 2.0
183 stars 78 forks source link

Allow erlang/otp release to trigger images' build flow #454

Open paulo-ferraz-oliveira opened 10 months ago

paulo-ferraz-oliveira commented 10 months ago

Motivation

To automate Erlang/OTP release -based Docker image building next to erlang/docker-erlang-otp (these days I understand it's a manual process), originating from erlang/otp.

Ref: https://github.com/erlang/otp/pull/7813

Description

As per what's been recently discussed in the #build-and-packaging EEF Slack channel, and since erlang/otp accepts triggering builds next to erlang/docker-erlang-otp, I'm pushing this to make that happen.

I attempted (and tested in that sense) to have a completely isolated flow that stimulates the other existing one (erlang.yaml).

erlang/otp, after release, will dispatch this new workflow (with and OTP version and SHA256 checksum string), which will:

  1. update the Dockerfile for the base image and variants slim and alpine
  2. create a pull request, and merge it (deleting the created branch)
  3. trigger (via dispatch, already supported) erlang.yml

(⚠️ is this the expected follow up? I don't actually see any place where the images are pushed from GitHub, only built and tested)

Full automation

I can imagine concerns around this "full automation", but I can also e.g. remove some of the steps (e.g. after pull request creation do nothing else) for us to gain confidence in the process. On the other hand if, at the end of erlang.yml we include a step to upload the images this'd be full automation 😄.

Authentication

In my tests, I used a custom GitHub App I created for that purpose, but I'm not sure how you intend to do integration between these two repositories. Lemme know what changes I should discuss/require next to erlang/otp.

Further considerations

Something very similar (albeit maybe more complicated, because it'd require more rules) can be done for rebar3's integration in the images.

I left some # Requires comments in the workflow that I might take out once I understand the general direction for this.

paulo-ferraz-oliveira commented 8 months ago

Hi, @getong. Do you think this pr will get any attention? Thanks.

getong commented 8 months ago

I have no idea of this pr. @tsloughter What do you think about this ?

csrl commented 6 months ago

Looking forward to 26.2.3 release, if this automation was in place, it would already be available.

paulo-ferraz-oliveira commented 6 months ago

Unfortunately it's taking some time. And after this, for the automation to be "complete", there's the other erlang/otp pull request that needs to be reviewed and/or tweaked.

paulo-ferraz-oliveira commented 3 months ago

👋 Can I do something to help move this forward?

paulo-ferraz-oliveira commented 1 month ago

@tsloughter 😄