4 Commits

Author SHA1 Message Date
7fbf278fc4 [RELEASE] - release version: 0.2.0 2024-12-10 23:15:19 +01:00
0c657764db Add copyCertificates
- update README.md with certificate plugin
- add Ltd_hlaeja_plugin_hlaeja_common_plugin_certificate_gradle.kts
2024-12-10 18:42:43 +01:00
867b07575c update for core plugin v0.2.0
- update task ltd.hlaeja.plugin.hlaeja-common-plugin.service-container.gradle.kts
- update publishing ltd.hlaeja.plugin.hlaeja-common-plugin.library-publish.gradle.kts
- update publishing in build.gradle.kts
- update catalog version
2024-12-10 17:48:53 +01:00
9cae6198ad [RELEASE] - bump version 2024-11-12 16:37:21 +01:00
6 changed files with 41 additions and 34 deletions

View File

@@ -92,6 +92,12 @@ id `ltd.hlaeja.plugin.hlaeja-common-plugin.service-process-resource`
Assign values to `application.yml` from Gradle.
### Plugin Certificate
id `ltd.hlaeja.plugin.hlaeja-common-plugin.cetificat`
Copy certificate to build resources by placing one or more of `private_key.pem`, `public_key.pem`, or `keystore.p12` in `/cert` folder.
## Releasing plugin
Run `release.sh` script from `master` branch.

View File

@@ -1,6 +1,5 @@
import io.gitlab.arturbosch.detekt.Detekt
import io.gitlab.arturbosch.detekt.extensions.DetektExtension.Companion.DEFAULT_SRC_DIR_KOTLIN
import java.lang.System.getenv
plugins {
alias(hlaeja.plugins.io.gitlab.arturbosch.detekt)
@@ -39,18 +38,12 @@ kotlin.compilerOptions.freeCompilerArgs.addAll("-Xjsr305=strict")
publishing {
repositories {
fun retrieveConfiguration(
property: String,
environment: String,
): String? = project.findProperty(property)?.toString() ?: getenv(environment)
maven {
url = uri("https://maven.pkg.github.com/swordsteel/${project.name}")
name = "GitHubPackages"
credentials {
username = retrieveConfiguration("repository.user", "REPOSITORY_USER")
password = retrieveConfiguration("repository.token", "REPOSITORY_TOKEN")
username = config.find("repository.user", "REPOSITORY_USER")
password = config.find("repository.token", "REPOSITORY_TOKEN")
}
}
}

View File

@@ -1,3 +1,3 @@
kotlin.code.style=official
version=0.1.0
catalog=0.2.0
version=0.2.0
catalog=0.6.0

View File

@@ -0,0 +1,18 @@
val filesToCopy = listOf(
"private_key.pem",
"public_key.pem",
"keystore.p12",
)
tasks {
register<Copy>("copyCertificates") {
group = "hlaeja"
into("${layout.buildDirectory.get()}/resources/main/cert")
filesToCopy.filter { file("cert/$it").exists() }
.forEach { file ->
from("cert/$file") {
include(file)
}
}
}
}

View File

@@ -1,23 +1,16 @@
import java.lang.System.getenv
plugins {
id("ltd.hlaeja.plugin.hlaeja-core-plugin")
`maven-publish`
}
publishing {
repositories {
fun retrieveConfiguration(
property: String,
environment: String,
): String? = project.findProperty(property)?.toString() ?: getenv(environment)
maven {
url = uri("https://maven.pkg.github.com/swordsteel/${project.name}")
name = "GitHubPackages"
credentials {
username = retrieveConfiguration("repository.user", "REPOSITORY_USER")
password = retrieveConfiguration("repository.token", "REPOSITORY_TOKEN")
username = config.find("repository.user", "REPOSITORY_USER")
password = config.find("repository.token", "REPOSITORY_TOKEN")
}
}
}

View File

@@ -4,22 +4,16 @@ import com.bmuschko.gradle.docker.tasks.container.DockerStopContainer
import com.bmuschko.gradle.docker.tasks.network.DockerCreateNetwork
import com.bmuschko.gradle.docker.tasks.network.DockerInspectNetwork
import com.bmuschko.gradle.docker.tasks.network.DockerRemoveNetwork
import java.lang.System.getenv
plugins {
id("ltd.hlaeja.plugin.hlaeja-core-plugin")
id("com.bmuschko.docker-spring-boot-application")
}
fun configuration(
property: String,
environment: String,
default: String,
): String = project.findProperty(property)?.toString() ?: getenv(environment) ?: default
fun configurationPorts(
property: String,
environment: String,
): List<String> = configuration(property, environment, "8080").split(',')
): List<String> = config.findOrDefault(property, environment, "8080").split(',')
fun exposeDockerPorts(): List<Int> = configurationPorts("docker.port.expose", "DOCKER_PORT_EXPOSE")
.mapNotNull { it.toIntOrNull() }
@@ -40,9 +34,12 @@ tasks {
targetImageId("${project.name}:${project.version}")
containerName.set(project.name)
hostConfig.autoRemove.set(true)
hostConfig.network.set(configuration("container.network", "CONTAINER_NETWORK", "develop"))
hostConfig.network.set(config.findOrDefault("container.network", "CONTAINER_NETWORK", "develop"))
hostConfig.portBindings.set(exposeContainerPorts())
withEnvVar("SPRING_PROFILES_ACTIVE", configuration("container.profiles", "CONTAINER_PROFILES", "docker"))
withEnvVar(
"SPRING_PROFILES_ACTIVE",
config.findOrDefault("container.profiles", "CONTAINER_PROFILES", "docker")
)
}
register("containerStart", DockerStartContainer::class) {
group = "hlaeja"
@@ -55,15 +52,15 @@ tasks {
}
register("containerNetworkCheck", DockerInspectNetwork::class) {
group = "hlaeja"
targetNetworkId(configuration("container.network", "CONTAINER_NETWORK", "develop"))
targetNetworkId(config.findOrDefault("container.network", "CONTAINER_NETWORK", "develop"))
onError { println("Network does not exist.") }
}
register("containerNetworkCreate", DockerCreateNetwork::class) {
group = "hlaeja"
networkName.set(configuration("container.network", "CONTAINER_NETWORK", "develop"))
networkName.set(config.findOrDefault("container.network", "CONTAINER_NETWORK", "develop"))
}
register("containerNetworkRemove", DockerRemoveNetwork::class) {
group = "hlaeja"
targetNetworkId(configuration("container.network", "CONTAINER_NETWORK", "develop"))
targetNetworkId(config.findOrDefault("container.network", "CONTAINER_NETWORK", "develop"))
}
}