0
0
Fork 0
mirror of https://github.com/crazy-max/diun.git synced 2025-03-16 20:33:30 +00:00
crazy-max_diun/docker-bake.hcl

149 lines
2.7 KiB
HCL
Raw Permalink Normal View History

variable "GO_VERSION" {
2023-05-04 21:26:58 +00:00
default = null
}
2022-10-22 19:19:59 +00:00
variable "DESTDIR" {
default = "./bin"
}
# GITHUB_REF is the actual ref that triggers the workflow and used as version
# when tag is pushed: https://docs.github.com/en/actions/learn-github-actions/environment-variables#default-environment-variables
variable "GITHUB_REF" {
default = ""
}
2021-09-10 09:19:42 +00:00
target "_common" {
args = {
GO_VERSION = GO_VERSION
GIT_REF = GITHUB_REF
2021-09-10 09:19:42 +00:00
}
}
2022-10-22 19:10:55 +00:00
# Special target: https://github.com/docker/metadata-action#bake-definition
target "docker-metadata-action" {
tags = ["diun:local"]
}
group "default" {
targets = ["image-local"]
}
target "binary" {
inherits = ["_common"]
target = "binary"
2022-10-22 19:19:59 +00:00
output = ["${DESTDIR}/build"]
}
target "artifact" {
2021-09-10 09:19:42 +00:00
inherits = ["_common"]
target = "artifact"
2022-10-22 19:19:59 +00:00
output = ["${DESTDIR}/artifact"]
}
target "artifact-all" {
inherits = ["artifact"]
2021-02-09 17:21:34 +00:00
platforms = [
"darwin/amd64",
"darwin/arm64",
"linux/386",
"linux/amd64",
2021-02-09 17:21:34 +00:00
"linux/arm/v5",
"linux/arm/v6",
"linux/arm/v7",
"linux/arm64",
"linux/ppc64le",
"linux/riscv64",
2021-02-09 17:21:34 +00:00
"linux/s390x",
"windows/386",
"windows/amd64",
"windows/arm64"
2021-02-09 17:21:34 +00:00
]
}
target "release" {
target = "release"
2022-10-22 19:19:59 +00:00
output = ["${DESTDIR}/release"]
contexts = {
2022-10-22 19:19:59 +00:00
artifacts = "${DESTDIR}/artifact"
}
}
target "image" {
2021-09-10 09:19:42 +00:00
inherits = ["_common", "docker-metadata-action"]
}
target "image-local" {
inherits = ["image"]
output = ["type=docker"]
}
target "image-all" {
inherits = ["image"]
2021-02-09 17:21:34 +00:00
platforms = [
"linux/386",
"linux/amd64",
2021-02-09 17:21:34 +00:00
"linux/arm/v6",
"linux/arm/v7",
"linux/arm64",
"linux/ppc64le"
]
}
target "test" {
inherits = ["_common"]
target = "test-coverage"
2022-10-22 19:19:59 +00:00
output = ["${DESTDIR}/coverage"]
}
target "vendor" {
inherits = ["_common"]
dockerfile = "./hack/vendor.Dockerfile"
target = "update"
output = ["."]
}
target "gen" {
inherits = ["_common"]
dockerfile = "./hack/gen.Dockerfile"
target = "update"
output = ["."]
}
target "docs" {
dockerfile = "./hack/docs.Dockerfile"
target = "release"
2022-10-22 19:19:59 +00:00
output = ["${DESTDIR}/site"]
}
target "gomod-outdated" {
inherits = ["_common"]
dockerfile = "./hack/vendor.Dockerfile"
target = "outdated"
output = ["type=cacheonly"]
}
group "validate" {
targets = ["lint", "vendor-validate", "gen-validate"]
}
target "lint" {
inherits = ["_common"]
dockerfile = "./hack/lint.Dockerfile"
target = "lint"
output = ["type=cacheonly"]
}
target "vendor-validate" {
inherits = ["_common"]
dockerfile = "./hack/vendor.Dockerfile"
target = "validate"
output = ["type=cacheonly"]
}
target "gen-validate" {
inherits = ["_common"]
dockerfile = "./hack/gen.Dockerfile"
target = "validate"
output = ["type=cacheonly"]
}