You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
2.1 KiB
60 lines
2.1 KiB
apply plugin: 'com.github.johnrengelman.shadow' |
|
apply plugin: 'application' |
|
apply plugin: 'com.palantir.docker' |
|
|
|
description = "Web app that compares different JsonPath implementations." |
|
|
|
mainClassName = 'com.jayway.jsonpath.web.boot.Main' |
|
|
|
task createBuildInfoFile { |
|
dependsOn compileJava |
|
doLast { |
|
def buildInfoFile = new File("$buildDir/classes/java/main/build-info.properties") |
|
Properties props = new Properties() |
|
props.setProperty('version', project.version.toString()) |
|
props.setProperty('timestamp', project.buildTimestamp) |
|
props.store(buildInfoFile.newWriter(), null) |
|
} |
|
} |
|
|
|
jar { |
|
dependsOn createBuildInfoFile |
|
baseName 'json-path-web-test' |
|
bnd ( |
|
'Implementation-Title': 'json-path-web-test', |
|
'Implementation-Version': version, |
|
'Main-Class': mainClassName |
|
) |
|
} |
|
|
|
docker { |
|
name "registry.fly.io/jsonpath:" + project.version.toString() |
|
files tasks.distTar.outputs |
|
buildArgs([VERSION: project.version.toString(), SLF4J_VERSION: libs.slf4jApi.substring(libs.slf4jApi.lastIndexOf(":") + 1)]) |
|
buildx true |
|
platform "linux/amd64" |
|
} |
|
|
|
task flyDeploy(type: Exec) { |
|
//dependsOn "dockerPush" + project.version.toString() |
|
commandLine 'fly', 'deploy', '--image=registry.fly.io/jsonpath:' + project.version.toString() |
|
} |
|
|
|
|
|
dependencies { |
|
implementation project(':json-path') |
|
implementation 'commons-io:commons-io:2.4' |
|
implementation libs.slf4jApi |
|
implementation libs.jacksonDatabind |
|
implementation libs.jsonSmart |
|
implementation 'io.fastjson:boon:0.33' |
|
implementation 'com.nebhale.jsonpath:jsonpath:1.2' |
|
implementation 'io.gatling:jsonpath_2.10:0.6.4' |
|
implementation 'org.eclipse.jetty:jetty-server:9.4.51.v20230217' |
|
implementation 'org.eclipse.jetty:jetty-webapp:9.4.51.v20230217' |
|
implementation 'org.glassfish.jersey.containers:jersey-container-servlet:2.20' |
|
implementation('org.glassfish.jersey.media:jersey-media-json-jackson:2.20'){ |
|
exclude module: 'jackson-annotations:com.fasterxml.jackson.core' |
|
exclude module: 'jackson-core:com.fasterxml.jackson.core' |
|
} |
|
}
|
|
|