@@ -11,6 +11,11 @@ repositories {
11
11
jcenter()
12
12
}
13
13
14
+ configurations {
15
+ documentation
16
+ assets
17
+ }
18
+
14
19
dependencies {
15
20
compileOnly " org.apache.kafka:connect-api:2.1.0"
16
21
compile (" com.marklogic:ml-javaclient-util:3.10.0" ) {
@@ -29,6 +34,13 @@ dependencies {
29
34
testRuntime " ch.qos.logback:logback-classic:1.1.8"
30
35
testRuntime group : " org.slf4j" , name : " jcl-over-slf4j" , version : " 1.7.22"
31
36
testRuntime group : " org.slf4j" , name : " slf4j-api" , version : " 1.7.22"
37
+
38
+ documentation files(' LICENSE.txt' )
39
+ documentation files(' NOTICE.txt' )
40
+ documentation files(' README.md' )
41
+
42
+ assets files(' MarkLogic_logo.png' )
43
+ assets files(' apache_logo.png' )
32
44
}
33
45
34
46
// Needed by Gradle 4.6+ - see https://www.petrikainulainen.net/programming/testing/junit-5-tutorial-running-unit-tests-with-gradle/
@@ -57,4 +69,70 @@ task copyPropertyFilesToKafka(type: Copy) {
57
69
task deploy {
58
70
description = " Used for local development and testing; builds the jar and copies it and the properties files to your local Kafka install"
59
71
dependsOn = [" jar" , " copyJarToKafka" , " copyPropertyFilesToKafka" ]
72
+ }
73
+
74
+ // Tasks for building the archive required for submitting to the Confluence Connector Hub
75
+ task connectorArchive_CopyManifestToBuildDirectory (type : Copy ) {
76
+ description = " Copy the project manifest into the root folder"
77
+ group = ' connector archive'
78
+
79
+ from ' .'
80
+ include ' manifest.json'
81
+ into ' build/connectorArchive'
82
+ }
83
+
84
+ task connectorArchive_CopyAssetsToBuildDirectory (type : Copy ) {
85
+ description = " Copy the project assets into the assets folder"
86
+ group = ' connector archive'
87
+
88
+ from configurations. assets
89
+ into ' build/connectorArchive/assets'
90
+ }
91
+
92
+ task connectorArchive_CopyEtcToBuildDirectory (type : Copy ) {
93
+ description = " Copy the project support files into the etc folder"
94
+ group = ' connector archive'
95
+
96
+ from ' config'
97
+ include ' *'
98
+ into ' build/connectorArchive/etc'
99
+ }
100
+
101
+ task connectorArchive_CopyDocumentationToBuildDirectory (type : Copy ) {
102
+ description = " Copy the project documentation into the doc folder"
103
+ group = ' connector archive'
104
+
105
+ from configurations. documentation
106
+ into ' build/connectorArchive/doc'
107
+ }
108
+
109
+ task connectorArchive_CopyDependenciesToBuildDirectory (type : Copy ) {
110
+ description = " Copy the dependency jars into the lib folder"
111
+ group = ' connector archive'
112
+ dependsOn = [jar]
113
+
114
+ from jar
115
+ from configurations. compile
116
+ into ' build/connectorArchive/lib'
117
+ }
118
+
119
+ task connectorArchive_BuildDirectory () {
120
+ description = " Build the directory that will be used to create the Kafka Connector Archive"
121
+ dependsOn = [connectorArchive_CopyManifestToBuildDirectory,
122
+ connectorArchive_CopyDependenciesToBuildDirectory,
123
+ connectorArchive_CopyDocumentationToBuildDirectory,
124
+ connectorArchive_CopyEtcToBuildDirectory,
125
+ connectorArchive_CopyAssetsToBuildDirectory]
126
+ group = ' connector archive'
127
+ }
128
+
129
+ task connectorArchive (type : Zip , dependsOn : connectorArchive_BuildDirectory) {
130
+ description = ' Build a Connector Hub for the Confluent Connector Hub'
131
+ group = ' connector archive'
132
+
133
+ from ' build/connectorArchive'
134
+ include ' *'
135
+ include ' */*'
136
+ archiveName ' confluentinc-kafka-marklogic-connector-0.1.0.zip'
137
+ destinationDir(file(' build/distro' ))
60
138
}
0 commit comments