docker: Fix rebuilding for image targets.
Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
@@ -116,9 +116,12 @@ variable "package_last_modified" {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Compression options
|
# Compression options
|
||||||
variable "image_compress_level" {
|
variable "zstd_image_compress_level" {
|
||||||
default = 11
|
default = 11
|
||||||
}
|
}
|
||||||
|
variable "gz_image_compress_level" {
|
||||||
|
default = 7
|
||||||
|
}
|
||||||
variable "cache_compress_level" {
|
variable "cache_compress_level" {
|
||||||
default = 7
|
default = 7
|
||||||
}
|
}
|
||||||
@@ -270,7 +273,7 @@ target "github" {
|
|||||||
docker_tag_preview? "ghcr.io/${repo}:preview": "",
|
docker_tag_preview? "ghcr.io/${repo}:preview": "",
|
||||||
docker_tag_latest? "ghcr.io/${repo}:latest": "",
|
docker_tag_latest? "ghcr.io/${repo}:latest": "",
|
||||||
]
|
]
|
||||||
output = ["type=registry,compression=zstd,mode=min,compression-level=${image_compress_level}"]
|
output = ["type=registry,compression=zstd,mode=min,compression-level=${zstd_image_compress_level}"]
|
||||||
matrix = cargo_rust_feat_sys
|
matrix = cargo_rust_feat_sys
|
||||||
inherits = [
|
inherits = [
|
||||||
elem("docker", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
elem("docker", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
||||||
@@ -284,7 +287,7 @@ target "dockerhub" {
|
|||||||
docker_tag_preview? "${docker_repo}:preview": "",
|
docker_tag_preview? "${docker_repo}:preview": "",
|
||||||
docker_tag_latest? "${docker_repo}:latest": "",
|
docker_tag_latest? "${docker_repo}:latest": "",
|
||||||
]
|
]
|
||||||
output = ["type=registry,compression=zstd,mode=min,compression-level=${image_compress_level}"]
|
output = ["type=registry,compression=zstd,mode=min,compression-level=${zstd_image_compress_level}"]
|
||||||
matrix = cargo_rust_feat_sys
|
matrix = cargo_rust_feat_sys
|
||||||
inherits = [
|
inherits = [
|
||||||
elem("docker", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
elem("docker", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
||||||
@@ -375,7 +378,7 @@ target "complement-tester" {
|
|||||||
elem_tag("complement-tester", [sys_name, sys_version, sys_target], "latest"),
|
elem_tag("complement-tester", [sys_name, sys_version, sys_target], "latest"),
|
||||||
]
|
]
|
||||||
target = "complement-tester"
|
target = "complement-tester"
|
||||||
output = ["type=docker,compression=zstd,mode=min,compression-level=${image_compress_level}"]
|
output = ["type=docker,compression=zstd,mode=min,compression-level=${zstd_image_compress_level}"]
|
||||||
entitlements = ["network.host"]
|
entitlements = ["network.host"]
|
||||||
matrix = sys
|
matrix = sys
|
||||||
inherits = [
|
inherits = [
|
||||||
@@ -538,7 +541,7 @@ target "oci" {
|
|||||||
tags = [
|
tags = [
|
||||||
elem_tag("oci", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
elem_tag("oci", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
||||||
]
|
]
|
||||||
output = ["type=oci,dest=tuwunel-oci.tar.zst,mode=min,compression=zstd,compression-level=${image_compress_level}"]
|
output = ["type=oci,dest=tuwunel-oci.tar.zst,mode=min,compression=zstd,compression-level=${zstd_image_compress_level}"]
|
||||||
matrix = cargo_rust_feat_sys
|
matrix = cargo_rust_feat_sys
|
||||||
inherits = [
|
inherits = [
|
||||||
elem("docker", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
elem("docker", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
||||||
@@ -550,6 +553,7 @@ target "docker" {
|
|||||||
tags = [
|
tags = [
|
||||||
elem_tag("docker", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
elem_tag("docker", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
||||||
]
|
]
|
||||||
|
output = ["type=docker,compression=gzip,mode=min,compression-level=${gz_image_compress_level}"]
|
||||||
matrix = cargo_rust_feat_sys
|
matrix = cargo_rust_feat_sys
|
||||||
inherits = [
|
inherits = [
|
||||||
elem("static", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
elem("static", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
||||||
@@ -565,9 +569,9 @@ target "docker" {
|
|||||||
elem("target:install", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target])
|
elem("target:install", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target])
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
target = "image"
|
|
||||||
dockerfile-inline =<<EOF
|
dockerfile-inline =<<EOF
|
||||||
FROM input AS image
|
FROM scratch AS install
|
||||||
|
COPY --from=input . .
|
||||||
EXPOSE 8008 8448
|
EXPOSE 8008 8448
|
||||||
ENTRYPOINT ["tuwunel"]
|
ENTRYPOINT ["tuwunel"]
|
||||||
EOF
|
EOF
|
||||||
@@ -578,6 +582,7 @@ target "static" {
|
|||||||
tags = [
|
tags = [
|
||||||
elem_tag("static", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
elem_tag("static", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
||||||
]
|
]
|
||||||
|
output = ["type=docker,compression=zstd,mode=min,compression-level=${zstd_image_compress_level}"]
|
||||||
matrix = cargo_rust_feat_sys
|
matrix = cargo_rust_feat_sys
|
||||||
inherits = [
|
inherits = [
|
||||||
elem("install", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
elem("install", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
||||||
@@ -585,9 +590,8 @@ target "static" {
|
|||||||
contexts = {
|
contexts = {
|
||||||
input = elem("target:install", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
input = elem("target:install", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
||||||
}
|
}
|
||||||
target = "static"
|
|
||||||
dockerfile-inline =<<EOF
|
dockerfile-inline =<<EOF
|
||||||
FROM scratch AS static
|
FROM scratch AS install
|
||||||
COPY --from=input /usr/bin/tuwunel /usr/bin/tuwunel
|
COPY --from=input /usr/bin/tuwunel /usr/bin/tuwunel
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
@@ -598,7 +602,7 @@ target "install" {
|
|||||||
elem_tag("install", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
elem_tag("install", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
||||||
]
|
]
|
||||||
labels = install_labels
|
labels = install_labels
|
||||||
output = ["type=docker,compression=zstd,mode=min,compression-level=${image_compress_level}"]
|
output = ["type=docker,compression=zstd,mode=min,compression-level=${zstd_image_compress_level}"]
|
||||||
cache_to = ["type=local,compression=zstd,mode=min,compression-level=${cache_compress_level}"]
|
cache_to = ["type=local,compression=zstd,mode=min,compression-level=${cache_compress_level}"]
|
||||||
dockerfile = "${docker_dir}/Dockerfile.install"
|
dockerfile = "${docker_dir}/Dockerfile.install"
|
||||||
target = "install"
|
target = "install"
|
||||||
@@ -769,7 +773,7 @@ target "book" {
|
|||||||
elem_tag("book", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
elem_tag("book", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
||||||
]
|
]
|
||||||
target = "book"
|
target = "book"
|
||||||
output = ["type=docker,compression=zstd,mode=min,compression-level=${image_compress_level}"]
|
output = ["type=docker,compression=zstd,mode=min,compression-level=${zstd_image_compress_level}"]
|
||||||
matrix = cargo_rust_feat_sys
|
matrix = cargo_rust_feat_sys
|
||||||
inherits = [
|
inherits = [
|
||||||
elem("deps-base", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
elem("deps-base", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
||||||
|
|||||||
Reference in New Issue
Block a user