This guide walks you through the steps to deploy our Kafka Connect plugins, release a new version of the plugins and how to update that version in kafka-ops.
- Ensure you have GitHub personal access token with full access to Culture Amp private repos
Run the following commands:
./gradlew test
./gradlew lintKotlin
./gradlew dependencyCheckAnalyze
Update this line in the aforementioned file
// Package version
version = "X.X.X"
This project is built using Gradle. To build the project run:
./gradlew build
This will create a jar:
./build/libs/kafka-connect-plugins-${version}.jar
Create md5sum hash by running:
md5sum kafka-connect-plugins-X.X.X.jar
Save that output because it will be used to update correspondent value in kafka-ops dockerfile further
After successful deployment, switch to main branch and tag the release using the following commands:
git tag -a vX.X.X -m "Release message"
Replace vX.X.X
with your version number and "Release message"
with your release message.
Push the tag to the remote repository:
git push origin vX.X.X
Again, replace vX.X.X
with your version number.
3. Create release in GitHub repo of kafka-connect-plugins
Prepare release notes summarizing the changes in this version. Please note if release contains any breaking changes.
As above.
Create new kafka-ops PR with changes in containers/connect/Dockerfile. Those changes should include: CA_PLUGINS_VERSION
env version bump and CA_PLUGINS_MD5SUM env should now include that md5sum hash we generated earlier
As above.
7. Deploy kafka-ops-platform-cluster and kafka-ops-platform-services in kafka-ops-infrastructure
Merge of the kafka-ops PR in the previous step will kick-off the pipeline, however you will need to manually deploy master in the following order:
- Find the branch for the kafka-ops PR and deploy it to
development-us
env - Deploy to
Production-US
- Deploy to
Production-EU
- Deploy to
Staging-US
Verify cluster health by looking at the Kafka Cluster and Connect Cluster Dashboards and announce the release in #kafka_announcements channel