Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 1 | plugins { |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 2 | id 'java' |
| 3 | id 'io.quarkus' |
Matthias Andreas Benkard | f7bf7c4 | 2020-01-28 22:31:12 +0100 | [diff] [blame] | 4 | id "com.bmuschko.docker-remote-api" version "${dockerPluginVersion}" |
Matthias Andreas Benkard | f611d9e | 2020-01-13 05:04:52 +0100 | [diff] [blame] | 5 | id "com.diffplug.gradle.spotless" version "${spotlessPluginVersion}" |
| 6 | id "com.github.ben-manes.versions" version "${versionsPluginVersion}" |
| 7 | id "se.patrikerdes.use-latest-versions" version "${useLatestVersionsPluginVersion}" |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 8 | } |
| 9 | |
Matthias Andreas Benkard | 513deee | 2020-01-12 20:58:56 +0100 | [diff] [blame] | 10 | sourceCompatibility = 11 |
| 11 | targetCompatibility = 11 |
| 12 | |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 13 | repositories { |
| 14 | mavenLocal() |
| 15 | mavenCentral() |
| 16 | } |
| 17 | |
Matthias Andreas Benkard | f611d9e | 2020-01-13 05:04:52 +0100 | [diff] [blame] | 18 | tasks { |
| 19 | dependencyUpdates { |
| 20 | checkConstraints = true |
| 21 | gradleReleaseChannel = "current" |
| 22 | revision = "release" |
| 23 | } |
| 24 | } |
| 25 | |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 26 | dependencies { |
| 27 | implementation enforcedPlatform("${quarkusPlatformGroupId}:${quarkusPlatformArtifactId}:${quarkusPlatformVersion}") |
| 28 | |
| 29 | implementation 'io.quarkus:quarkus-agroal' |
Matthias Andreas Benkard | c27d1cb | 2020-01-26 11:11:24 +0100 | [diff] [blame] | 30 | implementation 'io.quarkus:quarkus-elytron-security-properties-file' |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 31 | implementation 'io.quarkus:quarkus-flyway' |
| 32 | implementation 'io.quarkus:quarkus-hibernate-orm-panache' |
| 33 | implementation 'io.quarkus:quarkus-hibernate-validator' |
| 34 | implementation 'io.quarkus:quarkus-jdbc-postgresql' |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 35 | implementation 'io.quarkus:quarkus-kubernetes' |
| 36 | implementation 'io.quarkus:quarkus-mailer' |
Matthias Andreas Benkard | 24a2514 | 2020-01-24 13:25:54 +0100 | [diff] [blame] | 37 | implementation 'io.quarkus:quarkus-oidc' |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 38 | implementation 'io.quarkus:quarkus-resteasy' |
| 39 | implementation 'io.quarkus:quarkus-resteasy-jsonb' |
| 40 | implementation 'io.quarkus:quarkus-resteasy-qute' |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 41 | implementation 'io.quarkus:quarkus-scheduler' |
Matthias Andreas Benkard | e5f81e5 | 2020-01-18 12:48:40 +0100 | [diff] [blame] | 42 | |
| 43 | //implementation 'io.quarkus:quarkus-elytron-security' |
| 44 | //implementation 'io.quarkus:quarkus-elytron-security-jdbc' |
| 45 | //implementation 'io.quarkus:quarkus-elytron-security-oauth2' |
| 46 | //implementation 'io.quarkus:quarkus-keycloak-authorization' |
Matthias Andreas Benkard | e5f81e5 | 2020-01-18 12:48:40 +0100 | [diff] [blame] | 47 | //implementation 'io.quarkus:quarkus-quartz' |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 48 | //implementation 'io.quarkus:quarkus-smallrye-fault-tolerance' |
| 49 | //implementation 'io.quarkus:quarkus-smallrye-health' |
| 50 | //implementation 'io.quarkus:quarkus-smallrye-metrics' |
| 51 | //implementation 'io.quarkus:quarkus-smallrye-openapi' |
| 52 | |
| 53 | //implementation 'jakarta.transaction:jakarta.transaction-api' |
| 54 | //implementation 'org.jboss.spec.javax.xml.bind:jboss-jaxb-api_2.3_spec' |
| 55 | //implementation 'jakarta.persistence:jakarta.persistence-api' |
| 56 | |
Matthias Andreas Benkard | 5d71a9e | 2020-01-18 12:31:26 +0100 | [diff] [blame] | 57 | implementation 'org.mapstruct:mapstruct' |
| 58 | compileOnly 'org.mapstruct:mapstruct-processor' |
| 59 | |
| 60 | compileOnly 'com.google.code.findbugs:jsr305' |
| 61 | |
Matthias Andreas Benkard | f611d9e | 2020-01-13 05:04:52 +0100 | [diff] [blame] | 62 | implementation 'com.vladmihalcea:hibernate-types-52' |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 63 | |
Matthias Andreas Benkard | 5d71a9e | 2020-01-18 12:31:26 +0100 | [diff] [blame] | 64 | implementation "jakarta.security.jacc:jakarta.security.jacc-api" |
| 65 | implementation "net.java.dev.jna:jna" |
| 66 | |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 67 | testImplementation 'io.quarkus:quarkus-junit5' |
| 68 | testImplementation 'io.rest-assured:rest-assured' |
Matthias Andreas Benkard | f611d9e | 2020-01-13 05:04:52 +0100 | [diff] [blame] | 69 | |
Matthias Andreas Benkard | 4e29a24 | 2020-01-25 05:38:27 +0100 | [diff] [blame] | 70 | implementation 'org.jsoup:jsoup:1.12.1' |
| 71 | |
Matthias Andreas Benkard | f611d9e | 2020-01-13 05:04:52 +0100 | [diff] [blame] | 72 | constraints { |
Matthias Andreas Benkard | f611d9e | 2020-01-13 05:04:52 +0100 | [diff] [blame] | 73 | implementation "com.vladmihalcea:hibernate-types-52:${hibernateTypesVersion}" |
Matthias Andreas Benkard | 5d71a9e | 2020-01-18 12:31:26 +0100 | [diff] [blame] | 74 | implementation "org.mapstruct:mapstruct:${mapstructVersion}" |
| 75 | compileOnly "org.mapstruct:mapstruct-processor:${mapstructVersion}" |
| 76 | compileOnly "com.google.code.findbugs:jsr305:${findbugsJsr305Version}" |
| 77 | implementation "jakarta.security.jacc:jakarta.security.jacc-api:${jakartaJaccVersion}" |
| 78 | implementation "net.java.dev.jna:jna:${jnaVersion}" |
Matthias Andreas Benkard | f611d9e | 2020-01-13 05:04:52 +0100 | [diff] [blame] | 79 | } |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 80 | } |
| 81 | |
| 82 | spotless { |
Matthias Andreas Benkard | 4be112f | 2020-01-12 20:29:38 +0100 | [diff] [blame] | 83 | java { |
| 84 | googleJavaFormat() |
| 85 | removeUnusedImports() |
| 86 | } |
Matthias Andreas Benkard | 4c5847b | 2020-01-12 15:42:02 +0100 | [diff] [blame] | 87 | } |
| 88 | |
Matthias Andreas Benkard | f7bf7c4 | 2020-01-28 22:31:12 +0100 | [diff] [blame] | 89 | group "eu.mulk" |
| 90 | version "${projectVersion}" |
Matthias Andreas Benkard | 2a10755 | 2020-01-23 10:47:52 +0100 | [diff] [blame] | 91 | |
| 92 | task yarnInstall(type:Exec) { |
| 93 | workingDir "src/main/resources/META-INF/resources" |
| 94 | commandLine "yarn", "install" |
| 95 | } |
| 96 | |
| 97 | task snowpack(type:Exec) { |
| 98 | dependsOn yarnInstall |
| 99 | |
| 100 | workingDir "src/main/resources/META-INF/resources" |
| 101 | commandLine "yarn", "run", "snowpack" |
| 102 | } |
| 103 | |
| 104 | task compileWeb { |
| 105 | dependsOn snowpack |
| 106 | |
| 107 | doLast {} |
| 108 | } |
| 109 | |
Matthias Andreas Benkard | b712a01 | 2020-01-26 08:10:49 +0100 | [diff] [blame] | 110 | processResources { |
| 111 | exclude("META-INF/resources/node_modules/**/*") |
Matthias Andreas Benkard | 97130f9 | 2020-01-27 21:03:39 +0100 | [diff] [blame] | 112 | exclude("META-INF/resources/package.json") |
| 113 | exclude("META-INF/resources/yarn.lock") |
Matthias Andreas Benkard | b712a01 | 2020-01-26 08:10:49 +0100 | [diff] [blame] | 114 | } |
| 115 | |
Matthias Andreas Benkard | b428e52 | 2020-01-26 08:13:04 +0100 | [diff] [blame] | 116 | quarkusBuild.dependsOn compileWeb |
Matthias Andreas Benkard | f7bf7c4 | 2020-01-28 22:31:12 +0100 | [diff] [blame] | 117 | |
| 118 | task buildDocker(type: com.bmuschko.gradle.docker.tasks.image.DockerBuildImage) { |
| 119 | inputDir = file(".") |
| 120 | dockerFile = file("src/main/docker/Dockerfile.jvm") |
| 121 | images.add("docker.benkard.de/mulk/mulkcms2:${projectVersion}") |
| 122 | } |
| 123 | |
| 124 | buildDocker.dependsOn quarkusBuild |
| 125 | assemble.dependsOn buildDocker |
| 126 | |
| 127 | task pushDocker(type: com.bmuschko.gradle.docker.tasks.image.DockerPushImage) { |
| 128 | images.add("docker.benkard.de/mulk/mulkcms2:${projectVersion}") |
| 129 | } |
| 130 | |
| 131 | pushDocker.dependsOn buildDocker |