diff options
| author | Michal Nasiadka <mnasiadka@gmail.com> | 2026-06-18 17:16:08 +0200 |
|---|---|---|
| committer | Michal Nasiadka <mnasiadka@gmail.com> | 2026-06-24 15:00:26 +0200 |
| commit | a1a3fdc1b54baf62f234ddc9dac4906e30eb5d11 (patch) | |
| tree | a4f88789a9ac039db65f9491751c75ca59cebb74 /docker/nova | |
| parent | a437f0bd5f406bf1f82dfdf05c4dac16c02573ff (diff) | |
| download | kolla-a1a3fdc1b54baf62f234ddc9dac4906e30eb5d11.tar.gz kolla-a1a3fdc1b54baf62f234ddc9dac4906e30eb5d11.zip | |
kolla-build: fix build-date LABEL invalidating Docker layer cache
The build-date label was rendered into a LABEL instruction on line
3 of every Dockerfile template, immediately after FROM.
Because Docker invalidates the cache for a changed instruction and
all subsequent layers, a date change caused a full rebuild of every
image on each new calendar day, even when nothing else had changed.
Fix this by removing build-date from the Dockerfile templates and
applying it as a --label argument at build time via image.labels.
Labels passed on the build command line are not part of the
Dockerfile cache key, so the date is still recorded in the image
metadata without affecting layer caching.
Change-Id: I8ef0d85bab1a999a4d09f7cbf0c088ca00fdcf77
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
Diffstat (limited to 'docker/nova')
| -rw-r--r-- | docker/nova/nova-api/Dockerfile.j2 | 2 | ||||
| -rw-r--r-- | docker/nova/nova-base/Dockerfile.j2 | 2 | ||||
| -rw-r--r-- | docker/nova/nova-compute-ironic/Dockerfile.j2 | 2 | ||||
| -rw-r--r-- | docker/nova/nova-compute/Dockerfile.j2 | 2 | ||||
| -rw-r--r-- | docker/nova/nova-conductor/Dockerfile.j2 | 2 | ||||
| -rw-r--r-- | docker/nova/nova-libvirt/Dockerfile.j2 | 2 | ||||
| -rw-r--r-- | docker/nova/nova-novncproxy/Dockerfile.j2 | 2 | ||||
| -rw-r--r-- | docker/nova/nova-scheduler/Dockerfile.j2 | 2 | ||||
| -rw-r--r-- | docker/nova/nova-serialproxy/Dockerfile.j2 | 2 | ||||
| -rw-r--r-- | docker/nova/nova-spicehtml5proxy/Dockerfile.j2 | 2 | ||||
| -rw-r--r-- | docker/nova/nova-ssh/Dockerfile.j2 | 2 |
11 files changed, 11 insertions, 11 deletions
diff --git a/docker/nova/nova-api/Dockerfile.j2 b/docker/nova/nova-api/Dockerfile.j2 index 01399edca..57846af79 100644 --- a/docker/nova/nova-api/Dockerfile.j2 +++ b/docker/nova/nova-api/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}nova-base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_api_header %}{% endblock %} diff --git a/docker/nova/nova-base/Dockerfile.j2 b/docker/nova/nova-base/Dockerfile.j2 index f7ad8f0ad..423a9760a 100644 --- a/docker/nova/nova-base/Dockerfile.j2 +++ b/docker/nova/nova-base/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_base_header %}{% endblock %} diff --git a/docker/nova/nova-compute-ironic/Dockerfile.j2 b/docker/nova/nova-compute-ironic/Dockerfile.j2 index c849dc18f..3c455e2ec 100644 --- a/docker/nova/nova-compute-ironic/Dockerfile.j2 +++ b/docker/nova/nova-compute-ironic/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}nova-base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_compute_ironic_header %}{% endblock %} diff --git a/docker/nova/nova-compute/Dockerfile.j2 b/docker/nova/nova-compute/Dockerfile.j2 index 8c31461f3..8b3c1bcfe 100644 --- a/docker/nova/nova-compute/Dockerfile.j2 +++ b/docker/nova/nova-compute/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}nova-base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_compute_header %}{% endblock %} diff --git a/docker/nova/nova-conductor/Dockerfile.j2 b/docker/nova/nova-conductor/Dockerfile.j2 index f91cc76c6..b14000400 100644 --- a/docker/nova/nova-conductor/Dockerfile.j2 +++ b/docker/nova/nova-conductor/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}nova-base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_conductor_header %}{% endblock %} diff --git a/docker/nova/nova-libvirt/Dockerfile.j2 b/docker/nova/nova-libvirt/Dockerfile.j2 index b866917ea..fb82401b3 100644 --- a/docker/nova/nova-libvirt/Dockerfile.j2 +++ b/docker/nova/nova-libvirt/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_libvirt_header %}{% endblock %} diff --git a/docker/nova/nova-novncproxy/Dockerfile.j2 b/docker/nova/nova-novncproxy/Dockerfile.j2 index 208637b9a..4952ed734 100644 --- a/docker/nova/nova-novncproxy/Dockerfile.j2 +++ b/docker/nova/nova-novncproxy/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}nova-base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_novncproxy_header %}{% endblock %} diff --git a/docker/nova/nova-scheduler/Dockerfile.j2 b/docker/nova/nova-scheduler/Dockerfile.j2 index 16d8aba10..5b0b0b98e 100644 --- a/docker/nova/nova-scheduler/Dockerfile.j2 +++ b/docker/nova/nova-scheduler/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}nova-base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_scheduler_header %}{% endblock %} diff --git a/docker/nova/nova-serialproxy/Dockerfile.j2 b/docker/nova/nova-serialproxy/Dockerfile.j2 index 62e859efa..c63e925d5 100644 --- a/docker/nova/nova-serialproxy/Dockerfile.j2 +++ b/docker/nova/nova-serialproxy/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}nova-base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_serialproxy_header %}{% endblock %} diff --git a/docker/nova/nova-spicehtml5proxy/Dockerfile.j2 b/docker/nova/nova-spicehtml5proxy/Dockerfile.j2 index fe7a671b4..f3a90b0c5 100644 --- a/docker/nova/nova-spicehtml5proxy/Dockerfile.j2 +++ b/docker/nova/nova-spicehtml5proxy/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}nova-base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_spicehtml5proxy_header %}{% endblock %} diff --git a/docker/nova/nova-ssh/Dockerfile.j2 b/docker/nova/nova-ssh/Dockerfile.j2 index a17df28cb..0d9e36b65 100644 --- a/docker/nova/nova-ssh/Dockerfile.j2 +++ b/docker/nova/nova-ssh/Dockerfile.j2 @@ -1,6 +1,6 @@ FROM {{ namespace }}/{{ image_prefix }}nova-base:{{ tag }} {% block labels %} -LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" +LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" {% endblock %} {% block nova_ssh_header %}{% endblock %} |
