11import com.github.breadmoirai.githubreleaseplugin.GithubReleaseTask
22import java.util.*
33
4- val libs = File (project.buildDir.absoluteFile, " libs" )
54val taskName = " releaseArtifactsToGithub"
6- val artifacts: DirectoryProperty = project.objects.directoryProperty()
7- artifacts.set(libs)
8-
9- // Temporary workaround for directory is not recognized by ReleaseAssets
10- gradle.taskGraph.whenReady {
11- beforeTask {
12- if (this is GithubReleaseTask ) {
13- this .setReleaseAssets(libs.listFiles())
14- }
15- }
16- }
175
186val tokenFromEnv: String? = System .getenv(" GH_DEV_TOKEN" )
197val token: String = if (! tokenFromEnv.isNullOrBlank()) {
@@ -31,31 +19,36 @@ val repo = "ScratchPaper"
3119val tagBranch = " master"
3220val version = BuildConfig .Versions .scratchPaperVersion
3321val releaseNotes = " "
34- createGithubReleaseTaskInternal(artifacts, token, repo, tagBranch, version, releaseNotes)
35-
36-
37- fun createGithubReleaseTaskInternal (artifacts : DirectoryProperty ,
38- token : String ,
39- repo : String ,
40- tagBranch : String ,
41- version : String ,
42- releaseNotes : String ): TaskProvider <GithubReleaseTask > {
43- // val id = version.replace(".", "")
44- return project.tasks.register<GithubReleaseTask >(" releaseArtifactsToGithub" ) {
45- setAuthorization(" Token $token " )
46- setOwner(" 2bab" )
47- setRepo(repo)
48- setTagName(version)
49- setTargetCommitish(tagBranch)
50- setReleaseName(version)
51- setBody(releaseNotes)
52- setDraft(false )
53- setPrerelease(false )
54- setReleaseAssets(artifacts)
55- setOverwrite(true )
56- setAllowUploadToExisting(true )
57- setApiEndpoint(" https://api.github.com" )
58- setDryRun(false )
22+ val task = createGithubReleaseTaskInternal(token, repo, tagBranch, version, releaseNotes)
23+
24+
25+ fun createGithubReleaseTaskInternal (
26+ token : String ,
27+ repo : String ,
28+ tagBranch : String ,
29+ version : String ,
30+ releaseNotes : String
31+ ): TaskProvider <GithubReleaseTask > {
32+ return project.tasks.register<GithubReleaseTask >(taskName) {
33+ authorization.set(" Token $token " )
34+ owner.set(" 2bab" )
35+ this .repo.set(repo)
36+ tagName.set(version)
37+ targetCommitish.set(tagBranch)
38+ releaseName.set(" v${version} " )
39+ body.set(releaseNotes)
40+ draft.set(false )
41+ prerelease.set(false )
42+ overwrite.set(true )
43+ allowUploadToExisting.set(true )
44+ apiEndpoint.set(" https://api.github.com" )
45+ dryRun.set(false )
46+ generateReleaseNotes.set(false )
47+ releaseAssets.from(
48+ tasks.getByName<Jar >(" jar" ).archiveFile, // seal-${version}.jar
49+ tasks.getByName<Jar >(" sourcesJar" ).archiveFile, // seal-${version}-sources.jar
50+ tasks.getByName<Jar >(" javadocJar" ).archiveFile, // seal-${version}-javadoc.jar
51+ // tasks.getByName<Sign>("signPluginMavenPublication").outputs, // seal-${version}-asc.jar, seal-${version}-sources-asc.jar, seal-${version}-sources-asc.jar,
52+ )
5953 }
60- }
61-
54+ }
0 commit comments