Skip to content

Commit

Permalink
Merge branch 'release/3.0.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
sbearcsiro committed Jul 28, 2022
2 parents c8e0dcc + f8ac92d commit 9a6b205
Show file tree
Hide file tree
Showing 142 changed files with 3,900 additions and 8,597 deletions.
5 changes: 4 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
language: groovy
jdk:
- openjdk8
- openjdk11
sudo: false
branches:
only:
- dev
- master
- hotfix
- grails3
- experimental_jwt
- /^feature.*$/
before_cache:
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
Expand All @@ -22,5 +24,6 @@ after_success:
- '[ "${TRAVIS_PULL_REQUEST}" = "false" ] && travis_retry ./gradlew publish'
env:
global:
- JAVA_TOOL_OPTIONS=-Dhttps.protocols=TLSv1.2
- secure: SXv/tzFEVilHYotkGZG7wSRM5fNSJmNaZX2x9o+AgLSZWFk2ZEqkgYP5utIMURghO+XW1i6GSBjpopcTttMvGC3+m5B6LLrmgSMiLRmzji34XfKpLysY3U7nU24F6aRDf+HvmyLtuj/tOXG+aD9odMjJ2rOONEEri6UcIP7bSOg=
- secure: bulQ1yxzUFsM/VO/B/AM6WLRQ0ni+UJbEGKuxRB/3GfEHAnY5NLYX60t1gZY1Mv8Rg0t0/dRttniw7dVytvuIYMbI+gsY+eq6FTSgRjUUP3Y0hJd4B6JKnEQWPzR10s8HLiWdYIBUx3jL66kUhfQavgFjRnJKQ4Ql8pgSmez/9k=
469 changes: 469 additions & 0 deletions LICENSE.txt

Large diffs are not rendered by default.

269 changes: 177 additions & 92 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,160 +1,245 @@
import static org.springframework.boot.gradle.SpringBootPluginExtension.LayoutType.*
//import static org.springframework.boot.gradle.SpringBootPluginExtension.LayoutType.*

buildscript {
repositories {
mavenLocal()
maven { url "https://nexus.ala.org.au/content/groups/public/" }
maven { url "https://repo.grails.org/grails/core" }
}
dependencies {
classpath "org.grails:grails-gradle-plugin:$grailsVersion"
classpath "com.bertramlabs.plugins:asset-pipeline-gradle:2.15.1"
classpath "org.grails.plugins:hibernate5:${gormVersion-".RELEASE"}"
classpath "org.grails:grails-gradle-plugin:$grailsGradlePluginVersion"
classpath "gradle.plugin.com.github.erdi.webdriver-binaries:webdriver-binaries-gradle-plugin:2.6"
classpath "org.grails.plugins:hibernate5:7.3.0"
classpath "com.bertramlabs.plugins:asset-pipeline-gradle:3.4.6"
}
}

plugins {
id "com.gorylenko.gradle-git-properties" version "1.4.17"
id "com.gorylenko.gradle-git-properties" version "2.4.1" // TODO
}

version "2.4.0"
version "3.0.0"
group "au.org.ala"

apply plugin:"eclipse"
apply plugin:"idea"
apply plugin:"war"
apply plugin:"org.grails.grails-web"
apply plugin:"asset-pipeline"
apply plugin:"com.github.erdi.webdriver-binaries"
apply plugin:"com.bertramlabs.asset-pipeline"
apply plugin:"org.grails.grails-gsp"
apply plugin:"maven-publish"

apply from: 'https://raw.githubusercontent.com/AtlasOfLivingAustralia/travis-build-configuration/master/travis_grails_publish.gradle'

sourceCompatibility = 1.8
targetCompatibility = 1.8

configurations.all {
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
sourceCompatibility = 1.11
targetCompatibility = 1.11

repositories {
mavenLocal()
maven { url "https://nexus.ala.org.au/content/groups/public/" }
maven { url "https://repo.grails.org/grails/core" }
mavenCentral()
}

configurations {
developmentOnly
runtimeClasspath {
extendsFrom developmentOnly
}
}

//grails {
// plugins {
// compile project(':openapi-plugin')
// }
//}

configurations.all {
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}

dependencies {
compile "org.springframework.boot:spring-boot-starter-logging"
compile "org.springframework.boot:spring-boot-autoconfigure"
compile "org.grails:grails-core"
compile "org.springframework.boot:spring-boot-starter-actuator"
provided "org.springframework.boot:spring-boot-starter-tomcat"
compile "org.grails:grails-web-boot"
compile "org.grails:grails-logging"
compile "org.grails:grails-plugin-rest"
compile "org.grails:grails-plugin-databinding"
compile "org.grails:grails-plugin-i18n"
compile "org.grails:grails-plugin-services"
compile "org.grails:grails-plugin-url-mappings"
compile "org.grails:grails-plugin-interceptors"
compile "org.grails.plugins:cache"
compile "org.grails.plugins:async"
compile "org.grails.plugins:scaffolding"
compile "org.grails.plugins:hibernate5"
compile "org.hibernate:hibernate-core:5.1.16.Final"
// compile "org.hibernate:hibernate-ehcache:5.1.16.Final"
compile "org.grails.plugins:gsp"
developmentOnly("org.springframework.boot:spring-boot-devtools")
compileOnly "io.micronaut:micronaut-inject-groovy"
console "org.grails:grails-console"
implementation "org.springframework.boot:spring-boot-starter-logging"
implementation "org.springframework.boot:spring-boot-starter-validation"
implementation "org.springframework.boot:spring-boot-autoconfigure"
implementation "org.grails:grails-core"
implementation "org.springframework.boot:spring-boot-starter-actuator"
implementation "org.springframework.boot:spring-boot-starter-tomcat"
implementation "org.grails:grails-web-boot"
implementation "org.grails:grails-logging"
implementation "org.grails:grails-plugin-rest"
implementation "org.grails:grails-plugin-databinding"
implementation "org.grails:grails-plugin-i18n"
implementation "org.grails:grails-plugin-services"
implementation "org.grails:grails-plugin-url-mappings"
implementation "org.grails:grails-plugin-interceptors"
implementation "org.grails.plugins:cache"
implementation "org.grails.plugins:async"
implementation "org.grails.plugins:scaffolding"
implementation "org.grails.plugins:events"
implementation "org.grails.plugins:hibernate5"
implementation "org.hibernate:hibernate-core:5.6.9.Final"
implementation "org.hibernate:hibernate-jcache"
runtimeOnly 'org.ehcache:ehcache'
implementation "org.grails.plugins:gsp"
profile "org.grails.profiles:web"
runtime "org.glassfish.web:el-impl:2.1.2-b03"
runtime "org.apache.tomcat:tomcat-jdbc"
runtime "com.bertramlabs.plugins:asset-pipeline-grails:2.15.1"
testCompile "org.grails:grails-gorm-testing-support"
testCompile "org.grails.plugins:geb:1.1.2"
testCompile "org.grails:grails-web-testing-support"
testRuntime "org.seleniumhq.selenium:selenium-htmlunit-driver:2.47.1"
testRuntime "net.sourceforge.htmlunit:htmlunit:2.18"
testRuntime "org.seleniumhq.selenium:selenium-chrome-driver:2.47.1"
runtimeOnly "org.glassfish.web:el-impl:2.2.1-b05"
// runtimeOnly "com.h2database:h2"
// runtimeOnly "org.apache.tomcat:tomcat-jdbc"
runtimeOnly "javax.xml.bind:jaxb-api:2.3.1"
runtimeOnly "com.bertramlabs.plugins:asset-pipeline-grails:3.4.6"
testImplementation "io.micronaut:micronaut-inject-groovy"
testImplementation "org.grails:grails-gorm-testing-support"
testImplementation "org.mockito:mockito-core"
testImplementation "org.grails:grails-web-testing-support"
testImplementation "org.grails.plugins:geb"
testImplementation "org.seleniumhq.selenium:selenium-remote-driver:4.0.0"
testImplementation "org.seleniumhq.selenium:selenium-api:4.0.0"
testImplementation "org.seleniumhq.selenium:selenium-support:4.0.0"
testRuntimeOnly "org.seleniumhq.selenium:selenium-chrome-driver:4.0.0"
testRuntimeOnly "org.seleniumhq.selenium:selenium-firefox-driver:4.0.0"

// Groovy backwards compat
runtimeOnly 'org.codehaus.groovy:groovy-dateutil'

// Grails plugin dependencies

runtime "org.grails.plugins:ala-bootstrap3:3.2.4"
compile "org.grails.plugins:ala-ws-plugin:2.0"
compile "org.grails.plugins:ala-auth:3.1.3"
compile "org.grails.plugins:ala-admin-plugin:2.1"

compile 'org.grails.plugins:external-config:1.3.0'
compile 'org.grails.plugins:http-builder-helper:1.1.0'
compile "org.grails.plugins:csv:1.0.1"
compile 'org.grails.plugins:mail:2.0.0'
compile "org.grails.plugins:oauth:4.0.0"
compile "domurtag.plugins:grails-simple-captcha:1.0.0-grails3"
compile "org.grails.plugins:export:2.0.0"
compile 'org.grails.plugins:grails-markdown:3.0.0'
// compile 'org.grails.plugins:cache-ehcache:2.0.0.ALA'
// compile 'org.grails.plugins:cache:4.0.0.RC1'
// compile 'org.grails.plugins:cache-ehcache:3.0.0.M1'
implementation "org.grails.plugins:ala-bootstrap3:4.1.0"
implementation "org.grails.plugins:ala-ws-plugin:3.1.0"
implementation "org.grails.plugins:ala-ws-security-plugin:4.1.1"
implementation "org.grails.plugins:ala-auth:5.1.0"
implementation "org.grails.plugins:ala-admin-plugin:2.3.0"

// regular JAR dependencies
implementation 'dk.glasius:external-config:3.0.1'
implementation 'org.grails.plugins:http-builder-helper:1.1.0'
implementation "org.grails.plugins:csv:1.0.1"
implementation 'org.grails.plugins:mail:3.0.0'

implementation "org.grails.plugins:oauth:4.0.0"
// transitive oauth plugin deps used in code
implementation "com.github.scribejava:scribejava-core:4.0.0"
implementation "com.github.scribejava:scribejava-apis:4.0.0"

runtime 'com.zaxxer:HikariCP:3.3.1'
runtime 'mysql:mysql-connector-java:8.0.25'
testRuntime "com.h2database:h2"
compile 'com.google.guava:guava:21.0'
compile 'org.apache.httpcomponents:httpcore:4.3.3'
compile 'org.apache.httpcomponents:httpclient:4.3.3'
compile 'org.apache.httpcomponents:httpmime:4.3.3'
compile 'org.apache.commons:commons-lang3:3.1'
compile 'commons-io:commons-io:2.6'
compile 'commons-beanutils:commons-beanutils:1.8.3'
compile 'org.mindrot:jbcrypt:0.4'
compile 'com.opencsv:opencsv:5.5.2'
implementation "domurtag.plugins:grails-simple-captcha:1.0.0-grails3"
implementation "org.grails.plugins:export:2.0.0"
implementation 'org.grails.plugins:grails-markdown:3.0.0'

// regular JAR dependencies

compile 'org.grails.plugins:spring-session-helper:1.1'
compile 'org.springframework.boot:spring-boot-starter-data-redis'
compile 'org.springframework.session:spring-session-data-redis'
implementation 'com.zaxxer:HikariCP:5.0.1'
implementation 'mysql:mysql-connector-java:8.0.29'
testRuntimeOnly "com.h2database:h2"
implementation 'com.google.guava:guava:21.0'
implementation 'org.apache.httpcomponents:httpcore:4.3.3'
implementation 'org.apache.httpcomponents:httpclient:4.3.3'
implementation 'org.apache.httpcomponents:httpmime:4.3.3'
implementation 'org.apache.commons:commons-lang3:3.12.0'
implementation 'commons-io:commons-io:2.6'
implementation 'commons-beanutils:commons-beanutils:1.8.3'
implementation 'org.mindrot:jbcrypt:0.4'
implementation 'com.opencsv:opencsv:5.5.2'

implementation 'org.springframework.session:spring-session-data-mongodb'
implementation 'org.springframework.boot:spring-boot-starter-data-mongodb'
implementation 'org.grails.plugins:spring-session-helper:2.0.1'
implementation 'org.mongodb:mongodb-driver-sync:4.6.0' // versions mismatch as transitive deps for
implementation 'org.mongodb:mongodb-driver-core:4.6.0'
implementation 'org.mongodb:bson:4.6.0'

// implementation "com.auth0:java-jwt:3.18.2"
// implementation "com.auth0:jwks-rsa:0.20.0"

// Spring Security to secure actuator endpoints
compile 'de.codecentric:spring-boot-admin-starter-client:1.5.3'
compile 'org.springframework.boot:spring-boot-starter-security'
compile 'org.springframework.security:spring-security-web'
// TODO Upgrade or decommission boot admin
// compile 'de.codecentric:spring-boot-admin-starter-client:2.6.2'
// compile 'org.springframework.boot:spring-boot-starter-security'
// compile 'org.springframework.security:spring-security-web'

compile('org.webjars.bower:chosen:1.8.3')
compile('org.webjars.bower:chosen-bootstrap:1.1.0') {
implementation('org.webjars.bower:chosen:1.8.3')
implementation('org.webjars.bower:chosen-bootstrap:1.1.0') {
exclude module: 'jquery' // dependency from skin
exclude module: 'bootstrap' // dependency from skin
}

testCompile('com.squareup.retrofit2:retrofit-mock:2.4.0')
implementation('au.org.ala.plugins:openapi:1.0.0')

testImplementation('com.squareup.retrofit2:retrofit-mock:2.9.0')
}

springBoot {
buildInfo()
layout = WAR
}

bootRun {
jvmArgs('-Dspring.output.ansi.enabled=always')
addResources = true
ignoreExitValue true
jvmArgs(
'-Dspring.output.ansi.enabled=always',
'-noverify',
'-XX:TieredStopAtLevel=1',
'-Xmx1024m')
sourceResources sourceSets.main
String springProfilesActive = 'spring.profiles.active'
systemProperty springProfilesActive, System.getProperty(springProfilesActive)
}

bootRepackage {
enabled = true
executable = true
bootWar {
launchScript()
classifier = 'exec'
}

tasks.withType(GroovyCompile) {
configure(groovyOptions) {
forkOptions.jvmArgs = ['-Xmx1024m']
}
}

tasks.withType(Test) {
useJUnitPlatform()
}

webdriverBinaries {
if (!System.getenv().containsKey('GITHUB_ACTIONS')) {
chromedriver {
version = '2.45.0'
fallbackTo32Bit = true
}
geckodriver '0.30.0'
}
}

tasks.withType(Test) {
systemProperty "geb.env", System.getProperty('geb.env')
systemProperty "geb.build.reportsDir", reporting.file("geb/integrationTest")
systemProperty "webdriver.chrome.driver", System.getProperty('webdriver.chrome.driver')
systemProperty "webdriver.gecko.driver", System.getProperty('webdriver.gecko.driver')
if (!System.getenv().containsKey('GITHUB_ACTIONS')) {
systemProperty 'webdriver.chrome.driver', System.getProperty('webdriver.chrome.driver')
systemProperty 'webdriver.gecko.driver', System.getProperty('webdriver.gecko.driver')
} else {
systemProperty 'webdriver.chrome.driver', "${System.getenv('CHROMEWEBDRIVER')}/chromedriver"
systemProperty 'webdriver.gecko.driver', "${System.getenv('GECKOWEBDRIVER')}/geckodriver"
}
}


assets {
minifyJs = true
minifyCss = true
includes = ["fonts/*"]
}

publishing {
repositories {
maven {
name 'Nexus'
url "https://nexus.ala.org.au/content/repositories/${project.version.endsWith('-SNAPSHOT') ? 'snapshots' : 'releases' }"
credentials {
username = System.getenv('TRAVIS_DEPLOY_USERNAME')
password = System.getenv('TRAVIS_DEPLOY_PASSWORD')
}
}
}
publications {
mavenJar(MavenPublication) {
artifact bootWar
}
}
}
Loading

0 comments on commit 9a6b205

Please sign in to comment.