plugins { id 'org.springframework.boot' version '2.6.7' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' id 'groovy' id 'org.liquibase.gradle' version '2.0.4' } def versionObj = new Version(major: 0, minor: 2, revision: 0) group = "net.broken" archivesBaseName = "ClaptrapBot" version = "$versionObj" sourceCompatibility = '17' repositories { mavenCentral() maven { url 'https://m2.dv8tion.net/releases' } } jar { enabled(false) } configurations.implementation { exclude group: "org.springframework.boot", module: "spring-boot-starter-logging" } dependencies { implementation("org.springframework.boot:spring-boot-starter-web") implementation("org.springframework.boot:spring-boot-starter-security") implementation("org.springframework.boot:spring-boot-starter-data-jpa") implementation("org.springframework.boot:spring-boot-starter-thymeleaf") implementation("org.springframework.boot:spring-boot-starter-log4j2") implementation("org.springframework.boot:spring-boot-starter-oauth2-client") implementation('org.liquibase:liquibase-core') implementation('io.jsonwebtoken:jjwt-api:0.11.5') implementation('io.jsonwebtoken:jjwt-impl:0.11.5') implementation('io.jsonwebtoken:jjwt-gson:0.11.5') implementation 'org.codehaus.groovy:groovy-all:3.0.8' implementation 'com.sedmelluq:lavaplayer:1.3.77' implementation 'net.dv8tion:JDA:4.4.0_350' implementation group: 'org.json', name: 'json', version: '20210307' // JPA Data (We are going to use Repositories, Entities, Hibernate, etc...) implementation(platform("org.apache.logging.log4j:log4j-bom:2.17.1")) implementation group: 'org.hibernate', name: 'hibernate-validator', version: '7.0.4.Final' // Use MySQL Connector-J implementation 'mysql:mysql-connector-java' implementation 'org.reflections:reflections:0.9.12' implementation 'org.apache.commons:commons-lang3:3.12.0' implementation 'com.google.api-client:google-api-client:1.31.5' implementation 'com.google.apis:google-api-services-youtube:v3-rev20210410-1.31.0' implementation group: 'org.jsoup', name: 'jsoup', version: '1.13.1' liquibaseRuntime 'org.liquibase:liquibase-core:4.2.2' liquibaseRuntime 'org.liquibase:liquibase-groovy-dsl:2.1.1' liquibaseRuntime 'mysql:mysql-connector-java:5.1.34' liquibaseRuntime group: 'javax.xml.bind', name: 'jaxb-api', version: '2.3.1' liquibaseRuntime group: 'org.liquibase.ext', name: 'liquibase-hibernate5', version: '4.10.0' liquibaseRuntime 'org.springframework.boot:spring-boot-starter-data-jpa' liquibaseRuntime 'org.springframework.data:spring-data-jpa' liquibaseRuntime 'org.springframework:spring-beans' liquibaseRuntime 'net.dv8tion:JDA:4.4.0_350' liquibaseRuntime 'com.sedmelluq:lavaplayer:1.3.77' liquibaseRuntime sourceSets.main.output } apply plugin: "org.liquibase.gradle" configurations { liquibaseRuntime.extendsFrom runtime } liquibase { activities { main { changeLogFile "src/main/resources/db/changelog/db.changelog-master.yml" url System.getenv("DB_URL") referenceUrl 'hibernate:spring:net.Broken?dialect=org.hibernate.dialect.MySQL5Dialect&hibernate.physical_naming_strategy=org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy&hibernate.implicit_naming_strategy=org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy' username System.getenv("DB_USER") password System.getenv("DB_PWD") } } } class Version { String major, minor, revision static String getBuild() { System.getenv("GITHUB_RUN_NUMBER") ?: System.getProperty("BUILD_NUMBER") ?: System.getenv("GIT_COMMIT")?.substring(0, 7) ?: System.getProperty("GIT_COMMIT")?.substring(0, 7) ?: "DEV" } String toString() { "${major}.${minor}.${revision}_$build" } }