Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Testing the functionality of the Apache Kafka packaged in the image

    • The image will consist of the official tarball released by Apache Kafka.

    • The above tarball is pre tested as the part of Apache Kafka release.

    • Hence no extra testing is required for the Apache Kafka packaged in the image.

  • Testing the Docker Image - Integration of the Apache Kafka with the Docker

    • Dockerizing Apache Kafka requires additional steps like, passing the configs from the user to the properties file in the container, passing credentials etc.

    • Sanity tests will be added to test the proper functionality of the docker image.

Release Process

Following are is the 2 scenarios plan to introduce release the Docker image(combination of 1 and 2):

  1. Docker image release during AK release

    1. RM would have generated and pushed Apache Kafka's Release Candidate artifacts to apache sftp server hosted in home.apache.org by release.py script
    2. Run the script to build the docker image(using the above Release Candidate tarball URL) and test the image locally.
    3. The docker image needs to be pushed to some Dockerhub repo(eg. Release Manager's) for the evaluation of RC Docker image.

    4. Start the Voting for RC, which will include the Docker image as well as docker sanity tests report.

    5. In case any docker image specific issue is detected, that will be evaluated by the community, if it’s a release blocker or not.

    6. Once the vote passes, the image will be pushed to apache/kafka with the version as tag.

    7. Steps for the Docker image release will be included in the Release Process doc of Apache Kafka

    8. eg. for AK release 3.7.0 and image released will be apache/kafka:3.7.0 (=> image contains AK 3.7.0)
  2. Docker Image release post AK Release(eg CVE in the base image)

    1. [Preferred Approach] Approach 1: Only Docker Image Release
      1. This step will be followed in case only Docker Image need to be released(eg CVE in the base image).
      2. Execute the script to build the docker image(using the already publicly released AK tarball URL) and test the image locally.

      3. Once the Docker image artifact is ready, it will get reviewed by the community and voting will be conducted, just for the Docker image release.

      4. This image will then be pushed to apache/kafka  with proper tagging to communicate kafka version.

      5. No AK release and image released will be apache/kafka:3.7.0-1 (=> image contains AK 3.7.0)
    2. Approach 2: Complete Apache Kafka release along with Docker Image release
      1. Here we will release do the minor release of AK artifacts as well
      2. Steps followed will be same as normal AK release.
      3. We will have a 3.7.1 release. AK release 3.7.1 and image released will be apache/kafka:3.7.1 (=> image contains AK 3.7.1)

...