By default, the repository will publish:
- The api jar to the GitHub Packages’ Gradle Registry, to make it available to other aggregates. No other jars will be published, as these should be considered internal to the aggregate.
Each service’s Docker image to GitHub Packages’ Container Registry, to make it available for deployment.
Note: Deployment of the Docker images to an environment is outside the scope of this tutorial.
Jars are published by running the
publish Gradle task:
This is executed as part of the CI GitHub workflow when code is pushed into the
Customising jar publishing
Publishing is configured in the Creek publishing build convention, which can be customised as needed. For example, if you wanted to publish jars to a different location.
Publishing Docker images
Docker images are published by running the
pushAppImage Grade task, built using the com.bmuschko.docker-remote-api Gradle plugin:
Customising Docker image push
Takes for building and pushing Docker images are in each service’s
build.gradle.kts file, which can be customised as needed.
In addition, the Docker image name for each service is also defined in the service’s descriptor.
Note: The Docker image name in a service’s
build.gradle.kts and descriptor must be kept in sync.