Compare commits

...

3 Commits

Author SHA1 Message Date
Donal McBreen
46ea88a056 Bump version for 1.9.1 2024-09-30 08:49:47 +01:00
Donal McBreen
fa05270cac Merge pull request #997 from basecamp/traefik-2.11
Traefik 2.11 default to address CVE-2024-45410
2024-09-30 03:14:08 -04:00
Jeremy Daer
b058c45973 Traefik 2.11 default to address CVE-2024-45410
Fixes #968
2024-09-28 11:28:50 -04:00
10 changed files with 12 additions and 12 deletions

View File

@@ -1,7 +1,7 @@
PATH PATH
remote: . remote: .
specs: specs:
kamal (1.9.0) kamal (1.9.1)
activesupport (>= 7.0) activesupport (>= 7.0)
base64 (~> 0.2) base64 (~> 0.2)
bcrypt_pbkdf (~> 1.0) bcrypt_pbkdf (~> 1.0)

View File

@@ -17,8 +17,8 @@ traefik:
# Image # Image
# #
# The Traefik image to use, defaults to `traefik:v2.10` # The Traefik image to use, defaults to `traefik:v2.11`
image: traefik:v2.9 image: traefik:v2.11
# Host port # Host port
# #

View File

@@ -1,5 +1,5 @@
class Kamal::Configuration::Traefik class Kamal::Configuration::Traefik
DEFAULT_IMAGE = "traefik:v2.10" DEFAULT_IMAGE = "traefik:v2.11"
CONTAINER_PORT = 80 CONTAINER_PORT = 80
DEFAULT_ARGS = { DEFAULT_ARGS = {
"log.level" => "DEBUG" "log.level" => "DEBUG"

View File

@@ -1,3 +1,3 @@
module Kamal module Kamal
VERSION = "1.9.0" VERSION = "1.9.1"
end end

View File

@@ -139,7 +139,7 @@ class CliTraefikTest < CliTestCase
assert_match "docker image prune --all --force --filter label=org.opencontainers.image.title=Traefik", output assert_match "docker image prune --all --force --filter label=org.opencontainers.image.title=Traefik", output
assert_match "/usr/bin/env mkdir -p .kamal", output assert_match "/usr/bin/env mkdir -p .kamal", output
assert_match "docker login -u [REDACTED] -p [REDACTED]", output assert_match "docker login -u [REDACTED] -p [REDACTED]", output
assert_match "docker container start traefik || docker run --name traefik --detach --restart unless-stopped --publish 80:80 --volume /var/run/docker.sock:/var/run/docker.sock --env-file .kamal/env/traefik/traefik.env --log-opt max-size=\"10m\" --label traefik.http.routers.catchall.entryPoints=\"http\" --label traefik.http.routers.catchall.rule=\"PathPrefix(\\`/\\`)\" --label traefik.http.routers.catchall.service=\"unavailable\" --label traefik.http.routers.catchall.priority=\"1\" --label traefik.http.services.unavailable.loadbalancer.server.port=\"0\" traefik:v2.10 --providers.docker --log.level=\"DEBUG\"", output assert_match "docker container start traefik || docker run --name traefik --detach --restart unless-stopped --publish 80:80 --volume /var/run/docker.sock:/var/run/docker.sock --env-file .kamal/env/traefik/traefik.env --log-opt max-size=\"10m\" --label traefik.http.routers.catchall.entryPoints=\"http\" --label traefik.http.routers.catchall.rule=\"PathPrefix(\\`/\\`)\" --label traefik.http.routers.catchall.service=\"unavailable\" --label traefik.http.routers.catchall.priority=\"1\" --label traefik.http.services.unavailable.loadbalancer.server.port=\"0\" traefik:v2.11 --providers.docker --log.level=\"DEBUG\"", output
assert_match "/usr/bin/env mkdir -p .kamal", output assert_match "/usr/bin/env mkdir -p .kamal", output
assert_match %r{docker rename app-web-latest app-web-latest_replaced_.*}, output assert_match %r{docker rename app-web-latest app-web-latest_replaced_.*}, output
assert_match %r{docker run --detach --restart unless-stopped --name app-web-latest --hostname 1.1.1.1-.* -e KAMAL_CONTAINER_NAME="app-web-latest" -e KAMAL_VERSION="latest" --env-file .kamal/env/roles/app-web.env --health-cmd}, output assert_match %r{docker run --detach --restart unless-stopped --name app-web-latest --hostname 1.1.1.1-.* -e KAMAL_CONTAINER_NAME="app-web-latest" -e KAMAL_VERSION="latest" --env-file .kamal/env/roles/app-web.env --health-cmd}, output

View File

@@ -33,7 +33,7 @@ traefik:
args: args:
accesslog: true accesslog: true
accesslog.format: json accesslog.format: json
image: registry:4443/traefik:v2.10 image: registry:4443/traefik:v2.11
accessories: accessories:
busybox: busybox:
service: custom-busybox service: custom-busybox

View File

@@ -27,7 +27,7 @@ traefik:
args: args:
accesslog: true accesslog: true
accesslog.format: json accesslog.format: json
image: registry:4443/traefik:v2.10 image: registry:4443/traefik:v2.11
accessories: accessories:
busybox: busybox:
service: custom-busybox service: custom-busybox

View File

@@ -19,7 +19,7 @@ push_image_to_registry_4443() {
install_kamal install_kamal
push_image_to_registry_4443 nginx 1-alpine-slim push_image_to_registry_4443 nginx 1-alpine-slim
push_image_to_registry_4443 traefik v2.10 push_image_to_registry_4443 traefik v2.11
push_image_to_registry_4443 busybox 1.36.0 push_image_to_registry_4443 busybox 1.36.0
# .ssh is on a shared volume that persists between runs. Clean it up as the # .ssh is on a shared volume that persists between runs. Clean it up as the

View File

@@ -32,7 +32,7 @@ class MainTest < IntegrationTest
assert_match /Traefik Host: vm2/, details assert_match /Traefik Host: vm2/, details
assert_match /App Host: vm1/, details assert_match /App Host: vm1/, details
assert_match /App Host: vm2/, details assert_match /App Host: vm2/, details
assert_match /traefik:v2.10/, details assert_match /traefik:v2.11/, details
assert_match /registry:4443\/app:#{first_version}/, details assert_match /registry:4443\/app:#{first_version}/, details
audit = kamal :audit, capture: true audit = kamal :audit, capture: true

View File

@@ -52,11 +52,11 @@ class TraefikTest < IntegrationTest
private private
def assert_traefik_running def assert_traefik_running
assert_match /traefik:v2.10 "\/entrypoint.sh/, traefik_details assert_match /traefik:v2.11 "\/entrypoint.sh/, traefik_details
end end
def assert_traefik_not_running def assert_traefik_not_running
assert_no_match /traefik:v2.10 "\/entrypoint.sh/, traefik_details assert_no_match /traefik:v2.11 "\/entrypoint.sh/, traefik_details
end end
def traefik_details def traefik_details