diff options
author | Bjørn Erik Pedersen <[email protected]> | 2022-08-05 16:35:24 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <[email protected]> | 2022-08-28 18:23:01 +0200 |
commit | 45e1084ff2d47efe0ae83a984a8723abd135ca48 (patch) | |
tree | c226bd12ff7af7a6414dc52fae4a66106792ad8e /hugoreleaser.toml | |
parent | c98348416cfa90026ef8fba93d6c0babe0f41d52 (diff) | |
download | hugo-45e1084ff2d47efe0ae83a984a8723abd135ca48.tar.gz hugo-45e1084ff2d47efe0ae83a984a8723abd135ca48.zip |
Add linux/arm64 extended to release setup
Fixes #8257
Diffstat (limited to 'hugoreleaser.toml')
-rw-r--r-- | hugoreleaser.toml | 232 |
1 files changed, 232 insertions, 0 deletions
diff --git a/hugoreleaser.toml b/hugoreleaser.toml new file mode 100644 index 000000000..e9bf8b6f1 --- /dev/null +++ b/hugoreleaser.toml @@ -0,0 +1,232 @@ +project = "hugo" + +[go_settings] + go_proxy = "https://proxy.golang.org" + go_exe = "go" + +[build_settings] + binary = "hugo" + flags = ["-buildmode", "exe"] + env = ["CGO_ENABLED=0"] + ldflags = "-s -w -X github.com/gohugoio/hugo/common/hugo.vendorInfo=gohugoio" + +[archive_settings] + name_template = "{{ .Project }}_{{ .Tag | trimPrefix `v` }}_{{ .Goos }}-{{ .Goarch }}" + extra_files = [ + { source_path = "README.md", target_path = "README.md" }, + { source_path = "LICENSE", target_path = "LICENSE" }, + ] + [archive_settings.type] + format = "tar.gz" + extension = ".tar.gz" + [archive_settings.replacements] + amd64 = "64bit" + 386 = "32bit" + arm = "ARM" + arm64 = "ARM64" + darwin = "macOS" + linux = "Linux" + windows = "Windows" + openbsd = "OpenBSD" + netbsd = "NetBSD" + freebsd = "FreeBSD" + dragonfly = "DragonFlyBSD" + +[release_settings] + name = "${HUGO_RELEASE_NAME}" + type = "github" + repository = "hugo" + repository_owner = "gohugoio" + draft = true + prerelease = false + + [release_settings.release_notes_settings] + # Use Hugoreleaser's autogenerated release notes. + generate = true + + # Collapse relases with < 10 changes below one title. + short_threshold = 10 + short_title = "What's Changed" + + groups = [ + # Group the changes in the release notes by title. + # You need at least one. + # The groups will be tested in order until a match is found. + # The titles will so be listed in the given order in the release note. + # Any match with ignore=true title will be dropped. + { regexp = "Merge commit|Squashed", ignore = true }, + { title = "Bug fixes", regexp = "fix", ordinal = 10 }, + { title = "Dependency Updates", regexp = "deps", ordinal = 30 }, + { title = "Build Setup", regexp = "(snap|release|update to)", ordinal = 40 }, + { title = "Documentation", regexp = "(doc|readme)", ordinal = 40 }, + { title = "Improvements", regexp = ".*", ordinal = 20 }, + ] + +[[builds]] + path = "container1/unix/regular" + + [[builds.os]] + goos = "darwin" + [[builds.os.archs]] + goarch = "universal" + [[builds.os]] + goos = "linux" + [[builds.os.archs]] + goarch = "amd64" + [[builds.os.archs]] + goarch = "arm64" + [[builds.os.archs]] + goarch = "arm" + [builds.os.archs.build_settings] + env = ["CGO_ENABLED=0", "GOARM=7"] + + # Unix BSD variants + [[builds.os]] + goos = "dragonfly" + [[builds.os.archs]] + goarch = "amd64" + [[builds.os]] + goos = "freebsd" + [[builds.os.archs]] + goarch = "amd64" + [[builds.os]] + goos = "netbsd" + [[builds.os.archs]] + goarch = "amd64" + [[builds.os]] + goos = "openbsd" + [[builds.os.archs]] + goarch = "amd64" + +[[builds]] + path = "container1/unix/extended" + + [builds.build_settings] + flags = ["-buildmode", "exe", "-tags", "extended"] + env = ["CGO_ENABLED=1"] + + [[builds.os]] + goos = "darwin" + [builds.os.build_settings] + env = ["CGO_ENABLED=1", "CC=o64-clang", "CXX=o64-clang++"] + [[builds.os.archs]] + goarch = "universal" + [[builds.os]] + goos = "linux" + [[builds.os.archs]] + goarch = "amd64" + +[[builds]] + path = "container2/linux/extended" + + [builds.build_settings] + flags = ["-buildmode", "exe", "-tags", "extended"] + + [[builds.os]] + goos = "linux" + [builds.os.build_settings] + env = [ + "CGO_ENABLED=1", + "CC=aarch64-linux-gnu-gcc", + "CXX=aarch64-linux-gnu-g++", + ] + [[builds.os.archs]] + goarch = "arm64" + +[[builds]] + path = "container1/windows/regular" + + [[builds.os]] + goos = "windows" + [builds.os.build_settings] + binary = "hugo.exe" + [[builds.os.archs]] + goarch = "amd64" + [[builds.os.archs]] + goarch = "arm64" + +[[builds]] + path = "container1/windows/extended" + + [builds.build_settings] + flags = ["-buildmode", "exe", "-tags", "extended"] + env = [ + "CGO_ENABLED=1", + "CC=x86_64-w64-mingw32-gcc", + "CXX=x86_64-w64-mingw32-g++", + ] + ldflags = "-s -w -X github.com/gohugoio/hugo/common/hugo.vendorInfo=gohugoio -extldflags '-static'" + + [[builds.os]] + goos = "windows" + [builds.os.build_settings] + binary = "hugo.exe" + [[builds.os.archs]] + goarch = "amd64" + +[[archives]] + paths = ["builds/container1/unix/regular/**"] +[[archives]] + paths = ["builds/container1/unix/extended/**"] + [archives.archive_settings] + name_template = "{{ .Project }}_extended_{{ .Tag | trimPrefix `v` }}_{{ .Goos }}-{{ .Goarch }}" +[[archives]] + # Only extended builds in container2. + paths = ["builds/container2/**"] + [archives.archive_settings] + name_template = "{{ .Project }}_extended_{{ .Tag | trimPrefix `v` }}_{{ .Goos }}-{{ .Goarch }}" +[[archives]] + paths = ["builds/**/windows/regular/**"] + [archives.archive_settings.type] + format = "zip" + extension = ".zip" +[[archives]] + paths = ["builds/**/windows/extended/**"] + [archives.archive_settings] + name_template = "{{ .Project }}_extended_{{ .Tag | trimPrefix `v` }}_{{ .Goos }}-{{ .Goarch }}" + [archives.archive_settings.type] + format = "zip" + extension = ".zip" +[[archives]] + paths = ["builds/**/regular/linux/{arm64,amd64}"] + [archives.archive_settings] + [archives.archive_settings.type] + format = "_plugin" + extension = ".deb" + [archives.archive_settings.plugin] + id = "deb" + type = "gorun" + command = "github.com/gohugoio/hugoreleaser-archive-plugins/[email protected]" + [archives.archive_settings.custom_settings] + vendor = "gohugo.io" + homepage = "https://github.com/gohugoio/hugoreleaser" + maintainer = "Bjørn Erik Pedersen <[email protected]>" + description = "Build, archive and release Go programs." + license = "Apache-2.0" +[[archives]] + paths = ["builds/**/extended/linux/{arm64,amd64}"] + [archives.archive_settings] + name_template = "{{ .Project }}_extended_{{ .Tag | trimPrefix `v` }}_{{ .Goos }}-{{ .Goarch }}" + [archives.archive_settings.type] + format = "_plugin" + extension = ".deb" + [archives.archive_settings.plugin] + id = "deb" + type = "gorun" + command = "github.com/gohugoio/hugoreleaser-archive-plugins/deb@latest" + [archives.archive_settings.custom_settings] + vendor = "gohugo.io" + homepage = "https://github.com/gohugoio/hugoreleaser" + maintainer = "Bjørn Erik Pedersen <[email protected]>" + description = "Build, archive and release Go programs." + license = "Apache-2.0" + +[[releases]] + paths = ["archives/**"] + path = "r1" + + # The above should allow the following build commands: + # hugoreleaser build -paths "builds/container1/**" + # hugoreleaser build -paths "builds/container2/**" + # hugoreleaser archive + # hugoreleaser release |