From 7e55f47ac64d9bf83e722a8f275f1705870e66cd Mon Sep 17 00:00:00 2001 From: xZero707 Date: Sat, 8 Apr 2023 16:39:12 +0200 Subject: [PATCH] Implement registry cache as additional cache for all builds --- build/docker-bake.hcl | 155 ++++++++++++++++++++++++++++++++---------- 1 file changed, 118 insertions(+), 37 deletions(-) diff --git a/build/docker-bake.hcl b/build/docker-bake.hcl index 5b3828a..55595e7 100644 --- a/build/docker-bake.hcl +++ b/build/docker-bake.hcl @@ -15,11 +15,19 @@ target "build-common" { } target "5_9_0" { - inherits = ["build-dockerfile", "build-platforms", "build-common"] - cache-from = ["type=gha,scope=5_9_0_${BAKE_LOCAL_PLATFORM}"] - cache-to = ["type=gha,mode=max,scope=5_9_0_${BAKE_LOCAL_PLATFORM}"] - tags = ["docker.io/nlss/wordpress:5.9.0", "ghcr.io/n0rthernl1ghts/wordpress:5.9.0"] + inherits = ["build-dockerfile", "build-platforms", "build-common"] + cache-from = [ + "type=gha,scope=5_9_0_${BAKE_LOCAL_PLATFORM}", + "type=registry,ref=docker.io/nlss/wordpress-cache:${md5("5.9.0-${BAKE_LOCAL_PLATFORM}")}" + ] + + cache-to = [ + "type=gha,mode=max,scope=5_9_0_${BAKE_LOCAL_PLATFORM}", + "type=registry,mode=max,ref=docker.io/nlss/wordpress-cache:${md5("5.9.0-${BAKE_LOCAL_PLATFORM}")}" + ] + + tags = ["docker.io/nlss/wordpress:5.9.0", "ghcr.io/n0rthernl1ghts/wordpress:5.9.0"] args = { WP_VERSION = "5.9.0" } @@ -27,30 +35,54 @@ target "5_9_0" { target "5_9_1" { inherits = ["build-dockerfile", "build-platforms", "build-common"] - cache-from = ["type=gha,scope=5_9_1_${BAKE_LOCAL_PLATFORM}"] - cache-to = ["type=gha,mode=max,scope=5_9_1_${BAKE_LOCAL_PLATFORM}"] - tags = ["docker.io/nlss/wordpress:5.9.1", "ghcr.io/n0rthernl1ghts/wordpress:5.9.1"] + cache-from = [ + "type=gha,scope=5_9_1_${BAKE_LOCAL_PLATFORM}", + "type=registry,ref=docker.io/nlss/wordpress-cache:${md5("5.9.1-${BAKE_LOCAL_PLATFORM}")}" + ] + + cache-to = [ + "type=gha,mode=max,scope=5_9_1_${BAKE_LOCAL_PLATFORM}", + "type=registry,mode=max,ref=docker.io/nlss/wordpress-cache:${md5("5.9.1-${BAKE_LOCAL_PLATFORM}")}" + ] + + tags = ["docker.io/nlss/wordpress:5.9.1", "ghcr.io/n0rthernl1ghts/wordpress:5.9.1"] args = { WP_VERSION = "5.9.1" } } target "5_9_2" { - inherits = ["build-dockerfile", "build-platforms", "build-common"] - cache-from = ["type=gha,scope=5_9_2_${BAKE_LOCAL_PLATFORM}"] - cache-to = ["type=gha,mode=max,scope=5_9_2_${BAKE_LOCAL_PLATFORM}"] - tags = ["docker.io/nlss/wordpress:5.9.2", "ghcr.io/n0rthernl1ghts/wordpress:5.9.2"] + inherits = ["build-dockerfile", "build-platforms", "build-common"] + cache-from = [ + "type=gha,scope=5_9_2_${BAKE_LOCAL_PLATFORM}", + "type=registry,ref=docker.io/nlss/wordpress-cache:${md5("5.9.2-${BAKE_LOCAL_PLATFORM}")}" + ] + + cache-to = [ + "type=gha,mode=max,scope=5_9_2_${BAKE_LOCAL_PLATFORM}", + "type=registry,mode=max,ref=docker.io/nlss/wordpress-cache:${md5("5.9.2-${BAKE_LOCAL_PLATFORM}")}" + ] + + tags = ["docker.io/nlss/wordpress:5.9.2", "ghcr.io/n0rthernl1ghts/wordpress:5.9.2"] args = { WP_VERSION = "5.9.2" } } target "5_9_3" { - inherits = ["build-dockerfile", "build-platforms", "build-common"] - cache-from = ["type=gha,scope=5_9_3_${BAKE_LOCAL_PLATFORM}"] - cache-to = ["type=gha,mode=max,scope=5_9_3_${BAKE_LOCAL_PLATFORM}"] + inherits = ["build-dockerfile", "build-platforms", "build-common"] + + cache-from = [ + "type=gha,scope=5_9_3_${BAKE_LOCAL_PLATFORM}", + "type=registry,ref=docker.io/nlss/wordpress-cache:${md5("5.9.3-${BAKE_LOCAL_PLATFORM}")}" + ] + + cache-to = [ + "type=gha,mode=max,scope=5_9_3_${BAKE_LOCAL_PLATFORM}", + "type=registry,mode=max,ref=docker.io/nlss/wordpress-cache:${md5("5.9.3-${BAKE_LOCAL_PLATFORM}")}" + ] tags = [ "docker.io/nlss/wordpress:5", "docker.io/nlss/wordpress:5.9", "docker.io/nlss/wordpress:5.9.3", @@ -64,54 +96,95 @@ target "5_9_3" { } target "6_0_0" { - inherits = ["build-dockerfile", "build-platforms", "build-common"] - cache-from = ["type=gha,scope=6_0_0_${BAKE_LOCAL_PLATFORM}"] - cache-to = ["type=gha,mode=max,scope=6_0_0_${BAKE_LOCAL_PLATFORM}"] - tags = ["docker.io/nlss/wordpress:6.0.0", "ghcr.io/n0rthernl1ghts/wordpress:6.0.0"] + inherits = ["build-dockerfile", "build-platforms", "build-common"] + + cache-from = [ + "type=gha,scope=6_0_0_${BAKE_LOCAL_PLATFORM}", + "type=registry,ref=docker.io/nlss/wordpress-cache:${md5("6.0.0-${BAKE_LOCAL_PLATFORM}")}" + ] + + cache-to = [ + "type=gha,mode=max,scope=6_0_0_${BAKE_LOCAL_PLATFORM}", + "type=registry,mode=max,ref=docker.io/nlss/wordpress-cache:${md5("6.0.0-${BAKE_LOCAL_PLATFORM}")}" + ] + + tags = ["docker.io/nlss/wordpress:6.0.0", "ghcr.io/n0rthernl1ghts/wordpress:6.0.0"] args = { WP_VERSION = "6.0.0" } } target "6_0_1" { - inherits = ["build-dockerfile", "build-platforms", "build-common"] - cache-from = ["type=gha,scope=6_0_1_${BAKE_LOCAL_PLATFORM}"] - cache-to = ["type=gha,mode=max,scope=6_0_1_${BAKE_LOCAL_PLATFORM}"] - tags = ["docker.io/nlss/wordpress:6.0.1", "ghcr.io/n0rthernl1ghts/wordpress:6.0.1"] + inherits = ["build-dockerfile", "build-platforms", "build-common"] + cache-from = [ + "type=gha,scope=6_0_1_${BAKE_LOCAL_PLATFORM}", + "type=registry,ref=docker.io/nlss/wordpress-cache:${md5("6.0.1-${BAKE_LOCAL_PLATFORM}")}" + ] + + cache-to = [ + "type=gha,mode=max,scope=6_0_1_${BAKE_LOCAL_PLATFORM}", + "type=registry,mode=max,ref=docker.io/nlss/wordpress-cache:${md5("6.0.1-${BAKE_LOCAL_PLATFORM}")}" + ] + + tags = ["docker.io/nlss/wordpress:6.0.1", "ghcr.io/n0rthernl1ghts/wordpress:6.0.1"] args = { WP_VERSION = "6.0.1" } } target "6_0_2" { - inherits = ["build-dockerfile", "build-platforms", "build-common"] - cache-from = ["type=gha,scope=6_0_2_${BAKE_LOCAL_PLATFORM}"] - cache-to = ["type=gha,mode=max,scope=6_0_2_${BAKE_LOCAL_PLATFORM}"] - tags = ["docker.io/nlss/wordpress:6.0.2", "ghcr.io/n0rthernl1ghts/wordpress:6.0.2"] + inherits = ["build-dockerfile", "build-platforms", "build-common"] + cache-from = [ + "type=gha,scope=6_0_2_${BAKE_LOCAL_PLATFORM}", + "type=registry,ref=docker.io/nlss/wordpress-cache:${md5("6.0.2-${BAKE_LOCAL_PLATFORM}")}" + ] + + cache-to = [ + "type=gha,mode=max,scope=6_0_2_${BAKE_LOCAL_PLATFORM}", + "type=registry,mode=max,ref=docker.io/nlss/wordpress-cache:${md5("6.0.2-${BAKE_LOCAL_PLATFORM}")}" + ] + + tags = ["docker.io/nlss/wordpress:6.0.2", "ghcr.io/n0rthernl1ghts/wordpress:6.0.2"] args = { WP_VERSION = "6.0.2" } } target "6_0_3" { - inherits = ["build-dockerfile", "build-platforms", "build-common"] - cache-from = ["type=gha,scope=6_0_3_${BAKE_LOCAL_PLATFORM}"] - cache-to = ["type=gha,mode=max,scope=6_0_3_${BAKE_LOCAL_PLATFORM}"] - tags = ["docker.io/nlss/wordpress:6.0.3", "ghcr.io/n0rthernl1ghts/wordpress:6.0.3"] + inherits = ["build-dockerfile", "build-platforms", "build-common"] + cache-from = [ + "type=gha,scope=6_0_3_${BAKE_LOCAL_PLATFORM}", + "type=registry,ref=docker.io/nlss/wordpress-cache:${md5("6.0.3-${BAKE_LOCAL_PLATFORM}")}" + ] + + cache-to = [ + "type=gha,mode=max,scope=6_0_3_${BAKE_LOCAL_PLATFORM}", + "type=registry,mode=max,ref=docker.io/nlss/wordpress-cache:${md5("6.0.3-${BAKE_LOCAL_PLATFORM}")}" + ] + + tags = ["docker.io/nlss/wordpress:6.0.3", "ghcr.io/n0rthernl1ghts/wordpress:6.0.3"] args = { WP_VERSION = "6.0.3" } } target "6_1_0" { - inherits = ["build-dockerfile", "build-platforms", "build-common"] - cache-from = ["type=gha,scope=6_1_0_${BAKE_LOCAL_PLATFORM}"] - cache-to = ["type=gha,mode=max,scope=6_1_0_${BAKE_LOCAL_PLATFORM}"] - tags = ["docker.io/nlss/wordpress:6.1.0", "ghcr.io/n0rthernl1ghts/wordpress:6.1.0"] + inherits = ["build-dockerfile", "build-platforms", "build-common"] + cache-from = [ + "type=gha,scope=6_1_0_${BAKE_LOCAL_PLATFORM}", + "type=registry,ref=docker.io/nlss/wordpress-cache:${md5("6.1.0-${BAKE_LOCAL_PLATFORM}")}" + ] + + cache-to = [ + "type=gha,mode=max,scope=6_1_0_${BAKE_LOCAL_PLATFORM}", + "type=registry,mode=max,ref=docker.io/nlss/wordpress-cache:${md5("6.1.0-${BAKE_LOCAL_PLATFORM}")}" + ] + + tags = ["docker.io/nlss/wordpress:6.1.0", "ghcr.io/n0rthernl1ghts/wordpress:6.1.0"] args = { WP_VERSION = "6.1.0" } @@ -141,9 +214,17 @@ target "6_1_1" { } target "6_2_0" { - inherits = ["build-dockerfile", "build-platforms", "build-common"] - cache-from = ["type=gha,scope=6_2_0_${BAKE_LOCAL_PLATFORM}"] - cache-to = ["type=gha,mode=max,scope=6_2_0_${BAKE_LOCAL_PLATFORM}"] + inherits = ["build-dockerfile", "build-platforms", "build-common"] + + cache-from = [ + "type=gha,scope=6_2_0_${BAKE_LOCAL_PLATFORM}", + "type=registry,ref=docker.io/nlss/wordpress-cache:${md5("6.2.0-${BAKE_LOCAL_PLATFORM}")}" + ] + + cache-to = [ + "type=gha,mode=max,scope=6_2_0_${BAKE_LOCAL_PLATFORM}", + "type=registry,mode=max,ref=docker.io/nlss/wordpress-cache:${md5("6.2.0-${BAKE_LOCAL_PLATFORM}")}" + ] tags = [ "docker.io/nlss/wordpress:6", "docker.io/nlss/wordpress:6.2", "docker.io/nlss/wordpress:6.2.0",