Common Plugin.
- Common Plugin.
Plugins.
Common.
Plugin Common.
id ltd.lulz.plugin.common-plugin.common
Set core Java and Kotlin settings and overweight project version with git version.
Plugin Common Build.
id ltd.lulz.plugin.common-plugin.common-build
Display name and version, add buildInfo to build task.
Plugin Common Detekt.
id ltd.lulz.plugin.common-plugin.common-detekt
Detect is a code smell analysis for your Kotlin projects.
Plugin Common Ktlint.
id ltd.lulz.plugin.common-plugin.common-ktlint
Ktlint enforces consistent code style and formatting across Kotlin codebases.
Plugin Common Project.
id ltd.lulz.plugin.common-plugin.common-project
Display project, Gradle, and Java information.
Library.
Plugin Library.
id ltd.lulz.plugin.common-plugin.library
Default setting and tasks for libraries.
Plugin Library Manifest.
id ltd.lulz.plugin.common-plugin.library-manifest
Extend manifest in library jar file.
Plugin Library publish.
id ltd.lulz.plugin.common-plugin.library-publish
Configuration for publishing project artifacts to a remote Maven repository.
Service
Plugin Service
id ltd.lulz.plugin.common-plugin.service
Default setting and tasks for services.
Plugin Service Container
id ltd.lulz.plugin.common-plugin.service-container
Configuration for running project in docker locally during development.
Configuration
- properties
container.network, environmentCONTAINER_NETWORK, or defaultdevelop - properties
container.port.expose, environmentCONTAINER_PORT_EXPOSE, or default8080 - properties
container.port.host, environmentCONTAINER_PORT_HOST, or default8080 - properties
container.profiles, environmentCONTAINER_PROFILES, or defaultdocker - properties
docker.port.expose, environmentDOCKER_PORT_EXPOSE, or default8080
container and docker ports can be a single port (e.g., 8080) or multiple ports separated by commas (e.g., 8080,8443)
Gradle Tasks
containerCreatecreate docker container with network and spring boot profile.containerStartstarts docker container.containerStopstops docker container.containerNetworkCheckcheck if network exist.containerNetworkCreatecreates network.containerNetworkRemoveremoves network.
Plugin Service Test Integration
id ltd.lulz.plugin.common-plugin.service-test-integration
Adding task testIntegration to run integration test, add to verification group and add to task check.
Adding intellij support src/test-integration/java, src/test-integration/kotlin, and src/test-integration/resources as test module in intellij.
Adding dependencies support testIntegrationImplementation(), and testIntegrationRuntimeOnly() as part of Gradle.
Plugin Service Process Resource
id ltd.lulz.plugin.common-plugin.service-process-resource
Assign values to application.yml from Gradle.
Publish gradle plugin locally.
./gradlew clean publishToMavenLocal
Releasing gradle plugin.
Run release pipeline from master branch.
Publish gradle plugin to repository.
./gradlew clean publishAllPublicationsToGiteaPackagesRepository
Global gradle properties.
To authenticate with Gradle to access repositories that require authentication, you can set your user and token in the gradle.properties file.
Here's how you can do it:
- Open or create the
gradle.propertiesfile in your Gradle user home directory:- On Unix-like systems (Linux, macOS), this directory is typically
~/.gradle/. - On Windows, this directory is typically
C:\Users\<YourUsername>\.gradle\.
- On Unix-like systems (Linux, macOS), this directory is typically
- Add the following lines to the
gradle.propertiesfile:or use environment variablesrepository.<name>.user=your_user repository.<name>.token=your_token_valueREPOSITORY_USERandREPOSITORY_TOKEN