15
15
*/
16
16
17
17
plugins {
18
- // Apply the groovy plugin to add support for Groovy
19
- id ' io.nextflow.groovy-library-conventions'
20
- id ' idea'
18
+ id ' io.nextflow.nextflow-plugin' version ' 1.0.0-beta.6'
21
19
id ' de.undercouch.download' version ' 4.1.2'
22
20
}
23
21
24
- group = ' io.nextflow'
25
- // DO NOT SET THE VERSION HERE
26
- // THE VERSION FOR PLUGINS IS DEFINED IN THE `/resources/META-INF/MANIFEST.NF` file
27
-
28
- idea {
29
- module. inheritOutputDirs = true
30
- }
22
+ // Plugin version (from latest MANIFEST.MF)
23
+ version = ' 0.7.1'
31
24
32
25
repositories {
33
26
mavenCentral()
@@ -36,29 +29,8 @@ repositories {
36
29
maven { url = ' https://s3-eu-west-1.amazonaws.com/maven.seqera.io/snapshots' }
37
30
}
38
31
39
- configurations {
40
- // see https://docs.gradle.org/4.1/userguide/dependency_management.html#sub:exclude_transitive_dependencies
41
- runtimeClasspath. exclude group : ' org.slf4j' , module : ' slf4j-api'
42
- }
43
-
44
- sourceSets {
45
- main. java. srcDirs = []
46
- main. groovy. srcDirs = [' src/main' ]
47
- main. resources. srcDirs = [' src/resources' ]
48
- test. groovy. srcDirs = [' src/test' ]
49
- test. java. srcDirs = []
50
- test. resources. srcDirs = []
51
- }
52
-
53
- ext {
54
- nextflowVersion = ' 25.04.0'
55
- }
56
-
57
32
dependencies {
58
- compileOnly " io.nextflow:nextflow:$nextflowVersion "
59
- compileOnly ' org.slf4j:slf4j-api:2.0.16'
60
- compileOnly ' org.pf4j:pf4j:3.12.0'
61
-
33
+ // Latest database dependencies from master branch
62
34
api(" org.apache.groovy:groovy-sql:4.0.26" ) { transitive = false }
63
35
api ' com.h2database:h2:1.4.200'
64
36
api ' mysql:mysql-connector-java:8.0.33'
@@ -77,25 +49,29 @@ dependencies {
77
49
// test configuration
78
50
testImplementation " org.apache.groovy:groovy:4.0.26"
79
51
testImplementation " org.apache.groovy:groovy-nio:4.0.26"
80
- testImplementation " io.nextflow:nextflow:$nextflowVersion "
81
52
testImplementation (" org.apache.groovy:groovy-test:4.0.26" ) { exclude group : ' org.apache.groovy' }
82
53
testImplementation (" cglib:cglib-nodep:3.3.0" )
83
54
testImplementation (" org.objenesis:objenesis:3.1" )
84
55
testImplementation (" org.spockframework:spock-core:2.3-groovy-4.0" ) { exclude group : ' org.apache.groovy' ; exclude group : ' net.bytebuddy' }
85
56
testImplementation (' org.spockframework:spock-junit4:2.3-groovy-4.0' ) { exclude group : ' org.apache.groovy' ; exclude group : ' net.bytebuddy' }
86
57
testImplementation (' com.google.jimfs:jimfs:1.1' )
87
58
88
- testImplementation(testFixtures(" io.nextflow:nextflow:$nextflowVersion " ))
89
- testImplementation(testFixtures(" io.nextflow:nf-commons:$nextflowVersion " ))
90
-
91
59
// see https://docs.gradle.org/4.1/userguide/dependency_management.html#sec:module_replacement
92
60
modules {
93
61
module(" commons-logging:commons-logging" ) { replacedBy(" org.slf4j:jcl-over-slf4j" ) }
94
62
}
95
63
}
96
64
97
- test {
98
- useJUnitPlatform()
65
+ nextflowPlugin {
66
+ // Minimum Nextflow version
67
+ nextflowVersion = ' 25.04.0'
68
+
69
+ // Plugin metadata
70
+ provider = ' Seqera Labs'
71
+ className = ' nextflow.sql.SqlPlugin'
72
+ extensionPoints = [
73
+ ' nextflow.sql.ChannelSqlExtension'
74
+ ]
99
75
}
100
76
101
77
/**
@@ -127,5 +103,10 @@ task copyAthenDep(dependsOn: unzipAthenDep, type: Copy) {
127
103
from file(new File (buildDir, ' /downloads/unzip/awsathena/SimbaAthenaJDBC-2.0.25.1001/AthenaJDBC42_2.0.25.1001.jar' ))
128
104
into " src/dist/lib"
129
105
}
130
- project. copyPluginLibs. dependsOn(' copyAthenDep' )
131
- project. compileGroovy. dependsOn(' copyAthenDep' )
106
+
107
+ // Hook into the new plugin's build process
108
+ compileGroovy. dependsOn(' copyAthenDep' )
109
+
110
+ test {
111
+ useJUnitPlatform()
112
+ }
0 commit comments