Skip to content

Commit 0c3374d

Browse files
committed
add JReleaser configuration for github release and runtimes
1 parent 1c8befc commit 0c3374d

File tree

1 file changed

+79
-14
lines changed

1 file changed

+79
-14
lines changed

build.gradle

+79-14
Original file line numberDiff line numberDiff line change
@@ -261,31 +261,96 @@ runtime {
261261
imageZip = layout.buildDirectory.file("image/smithy-language-server.zip")
262262
}
263263

264+
tasks["assembleDist"].dependsOn("publish")
265+
tasks["assembleDist"].dependsOn("runtimeZip")
266+
264267
jreleaser {
265268
dryrun = false
266269

267-
// Used for creating a tagged release, uploading files and generating changelog.
268-
// In the future we can set this up to push release tags to GitHub, but for now it's
269-
// set up to do nothing.
270-
// https://jreleaser.org/guide/latest/reference/release/index.html
270+
project {
271+
website = 'https://smithy.io'
272+
authors = ['Smithy']
273+
vendor = "Smithy"
274+
license = 'Apache-2.0'
275+
description = "Smithy Language Server - A Language Server Protocol implementation for the Smithy IDL."
276+
copyright = "2019"
277+
}
278+
271279
release {
272-
generic {
273-
enabled = true
274-
skipRelease = true
280+
github {
281+
overwrite = true
282+
tagName = '{{projectVersion}}'
283+
releaseName = 'Smithy Language Server v{{{projectVersion}}}'
284+
changelog {
285+
enabled = false
286+
}
287+
commitAuthor {
288+
name = "smithy-automation"
289+
290+
}
291+
}
292+
}
293+
294+
files {
295+
active = "ALWAYS"
296+
artifact {
297+
// We'll include the VERSION file in the release artifacts so that the version can be easily
298+
// retrieving by hitting the GitHub `releases/latest` url
299+
path = "VERSION"
300+
extraProperties.put('skipSigning', true)
301+
}
302+
}
303+
304+
platform {
305+
// These replacements are for the names of files that are released, *not* for names within this build config
306+
replacements = [
307+
'osx': 'darwin',
308+
'aarch_64': 'aarch64',
309+
'windows_x86_64': 'windows_x64'
310+
]
311+
}
312+
313+
distributions {
314+
'smithy-language-server' {
315+
distributionType = 'JLINK'
316+
stereotype = 'CLI'
317+
318+
artifact {
319+
path = "build/image/smithy-language-server-linux-x86_64.zip"
320+
platform = "linux-x86_64"
321+
}
322+
323+
artifact {
324+
path = "build/image/smithy-language-server-linux-aarch64.zip"
325+
platform = "linux-aarch_64"
326+
}
327+
328+
artifact {
329+
path = "build/image/smithy-language-server-darwin-x86_64.zip"
330+
platform = "osx-x86_64"
331+
}
332+
333+
artifact {
334+
path = "build/image/smithy-language-server-darwin-aarch64.zip"
335+
platform = "osx-aarch_64"
336+
}
337+
338+
artifact {
339+
path = "build/image/smithy-language-server-windows-x64.zip"
340+
platform = "windows-x86_64"
341+
}
275342
}
276343
}
277344

278-
// Used to announce a release to configured announcers.
279-
// https://jreleaser.org/guide/latest/reference/announce/index.html
280-
announce {
281-
active = "NEVER"
345+
checksum {
346+
individual = true
347+
files = false
282348
}
283349

284-
// Signing configuration.
285-
// https://jreleaser.org/guide/latest/reference/signing.html
286350
signing {
287-
active = "ALWAYS"
351+
active = "RELEASE"
288352
armored = true
353+
verify = true
289354
}
290355

291356
// Configuration for deploying to Maven Central.

0 commit comments

Comments
 (0)