Hi Kafka Devs, In Kafka 3.7 we added the JVM Docker images in the release process. Then, in 3.8 we added the Native ones. After having done 4 release candidates for 3.8 I collected some experience on the process and I want to start a discussion on how we can optimize this.
Currently, for each image we need to first build the image and then once it's finished, promote it as RC. This needs to be done independently for the JVM and for the Native images. The promotion workflow needs 3 different fields, 2 of which are really linked (type of the image and the name of it). An example run would be: - type: jvm - RC image: apache/kafka:3.8.0-rc3 - Kafka url: https://home.apache.org/~jlprat/kafka-3.8.0-rc3/kafka_2.13-3.8.0.tgz While for native it would be: - type: native - RC image: apache/kafka-native:3.8.0-rc3 - Kafka url: https://home.apache.org/~jlprat/kafka-3.8.0-rc3/kafka_2.13-3.8.0.tgz It is really easy to make a mistake and select a native one with the wrong image name (or vice versa). The changes that I think would make sense to perform to the workflows are: - Have a combined flow for generating both images at the same time (we always need to generate both) -- This should internally call the 2 workflows - Have a combined flow for promoting images to RC -- This should take then the RC number instead of the full name as the name of the image is fixed A note on the process as well, the generation of the Native image takes almost an hour, so for future release managers, take some time when you generate them. Any thoughts about it? Best, -- [image: Aiven] <https://www.aiven.io> *Josep Prat* Open Source Engineering Director, *Aiven* [email protected] | +491715557497 aiven.io <https://www.aiven.io> | <https://www.facebook.com/aivencloud> <https://www.linkedin.com/company/aiven/> <https://twitter.com/aiven_io> *Aiven Deutschland GmbH* Alexanderufer 3-7, 10117 Berlin Geschäftsführer: Oskari Saarenmaa, Hannu Valtonen, Anna Richardson, Kenneth Chen Amtsgericht Charlottenburg, HRB 209739 B
