summaryrefslogtreecommitdiffstats
path: root/hugoreleaser.toml
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2022-08-05 16:35:24 +0200
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2022-08-28 18:23:01 +0200
commit45e1084ff2d47efe0ae83a984a8723abd135ca48 (patch)
treec226bd12ff7af7a6414dc52fae4a66106792ad8e /hugoreleaser.toml
parentc98348416cfa90026ef8fba93d6c0babe0f41d52 (diff)
Add linux/arm64 extended to release setup
Fixes #8257
Diffstat (limited to 'hugoreleaser.toml')
-rw-r--r--hugoreleaser.toml232
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/deb@v0.5.0"
+ [archives.archive_settings.custom_settings]
+ vendor = "gohugo.io"
+ homepage = "https://github.com/gohugoio/hugoreleaser"
+ maintainer = "Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>"
+ 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 <bjorn.erik.pedersen@gmail.com>"
+ 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