Cloud
plybuild supports cloud configuration for some of its more advanced features. A cloud configuration is simply an available git repository referred to in the local config file ~/.plybuild/local-config.yaml
. An example is shipped with plybuild at https://github.com/plybuild/plybuild-config.
Requirements
The requirements for the cloud config repository is that there exists a template folder, and a deprecated.json
and services.json
,file on the root level.
Example - Deprecated.json
{
"type": "deprecated",
"data": {
"dependencies": [
{
"groupId": "log4j",
"artifactId": "log4j",
"files": ["src/main/resources/log4j.properties"],
"associated": {
"files": ["src/main/resources..."],
"dependencies": [
{
"groupId": "org.slf4j",
"artifactId": "slf4j-log4j12",
"files": ["src/main/resources..."]
}
]
},
"replacement_templates": ["logstash-logback"]
}
]
}
}
Example - Services.json
{
"type": "services",
"data": [
{
"groupId": "com.example",
"artifactId": "flyway-demo",
"defaultEnvironment": "prod",
"environments": [
{
"name": "prod",
"_links": {
"info": {
"href": "http://localhost:8080/actuator/info"
}
}
},
{
"name": "staging",
"_links": {
"info": {
"href": "http://localhost:8081/actuator/info"
}
}
}
]
}
]
}
Example - Project-defaults.json
This file is overriding the project settings for each working project. disableUpdatesFor
, and maxVersionForDependencies
adds to the existing plybuild.json file.
{
"type": "project-defaults",
"settings": {
"disableDependencySort": false,
"disableKotlinUpgrade": false,
"disableSpringBootUpgrade": false,
"disableUpgradesFor": [
{
"groupId": "com.example",
"artifactId": "artifactId"
}
],
"maxVersionForDependencies": [
{
"groupId": "com.example",
"artifactId": "artifactId",
"maxVersion": "0.0.1"
}
]
}
}