diff --git a/Release.toml b/Release.toml index 1098a437e51..95aae94ddfa 100644 --- a/Release.toml +++ b/Release.toml @@ -1,4 +1,4 @@ -version = "1.65.0" +version = "1.66.0" [migrations] "(0.3.1, 0.3.2)" = ["migrate_v0.3.2_admin-container-v0-5-0.lz4"] @@ -480,3 +480,6 @@ version = "1.65.0" "migrate_v1.64.0_hugepages-settings.lz4" ] "(1.64.0, 1.65.0)" = [] +"(1.65.0, 1.66.0)" = [ + "migrate_v1.66.0_nvidia-driver-branch-setting.lz4" +] diff --git a/Twoliter.toml b/Twoliter.toml index 200ddc44edf..2ca1158e45b 100644 --- a/Twoliter.toml +++ b/Twoliter.toml @@ -1,5 +1,5 @@ schema-version = 2 -release-version = "1.65.0" +release-version = "1.66.0" project-vendor = "Bottlerocket" [vendor.bottlerocket] diff --git a/sources/Cargo.toml b/sources/Cargo.toml index 04d5695a8ce..a98e7a84335 100644 --- a/sources/Cargo.toml +++ b/sources/Cargo.toml @@ -69,6 +69,7 @@ members = [ "settings-migrations/v1.63.0/nvidia-k8s-device-plugin-enabled", "settings-migrations/v1.64.0/kubernetes-container-runtime-endpoint", "settings-migrations/v1.64.0/hugepages-settings", + "settings-migrations/v1.66.0/nvidia-driver-branch-setting", "settings-plugins/aws-dev", "settings-plugins/aws-ecs-2", diff --git a/sources/settings-defaults/aws-ecs-2-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml b/sources/settings-defaults/aws-ecs-2-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml new file mode 120000 index 00000000000..b3652b7d460 --- /dev/null +++ b/sources/settings-defaults/aws-ecs-2-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml @@ -0,0 +1 @@ +../../../shared-defaults/nvidia-driver-branch-deprecation.toml \ No newline at end of file diff --git a/sources/settings-defaults/aws-ecs-3-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml b/sources/settings-defaults/aws-ecs-3-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml new file mode 120000 index 00000000000..b3652b7d460 --- /dev/null +++ b/sources/settings-defaults/aws-ecs-3-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml @@ -0,0 +1 @@ +../../../shared-defaults/nvidia-driver-branch-deprecation.toml \ No newline at end of file diff --git a/sources/settings-defaults/aws-ecs-4-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml b/sources/settings-defaults/aws-ecs-4-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml new file mode 120000 index 00000000000..b3652b7d460 --- /dev/null +++ b/sources/settings-defaults/aws-ecs-4-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml @@ -0,0 +1 @@ +../../../shared-defaults/nvidia-driver-branch-deprecation.toml \ No newline at end of file diff --git a/sources/settings-defaults/aws-k8s-1.31-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml b/sources/settings-defaults/aws-k8s-1.31-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml new file mode 120000 index 00000000000..b3652b7d460 --- /dev/null +++ b/sources/settings-defaults/aws-k8s-1.31-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml @@ -0,0 +1 @@ +../../../shared-defaults/nvidia-driver-branch-deprecation.toml \ No newline at end of file diff --git a/sources/settings-defaults/aws-k8s-1.32-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml b/sources/settings-defaults/aws-k8s-1.32-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml new file mode 120000 index 00000000000..b3652b7d460 --- /dev/null +++ b/sources/settings-defaults/aws-k8s-1.32-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml @@ -0,0 +1 @@ +../../../shared-defaults/nvidia-driver-branch-deprecation.toml \ No newline at end of file diff --git a/sources/settings-defaults/aws-k8s-1.33-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml b/sources/settings-defaults/aws-k8s-1.33-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml new file mode 120000 index 00000000000..b3652b7d460 --- /dev/null +++ b/sources/settings-defaults/aws-k8s-1.33-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml @@ -0,0 +1 @@ +../../../shared-defaults/nvidia-driver-branch-deprecation.toml \ No newline at end of file diff --git a/sources/settings-defaults/aws-k8s-1.34-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml b/sources/settings-defaults/aws-k8s-1.34-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml new file mode 120000 index 00000000000..b3652b7d460 --- /dev/null +++ b/sources/settings-defaults/aws-k8s-1.34-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml @@ -0,0 +1 @@ +../../../shared-defaults/nvidia-driver-branch-deprecation.toml \ No newline at end of file diff --git a/sources/settings-defaults/aws-k8s-1.35-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml b/sources/settings-defaults/aws-k8s-1.35-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml new file mode 120000 index 00000000000..b3652b7d460 --- /dev/null +++ b/sources/settings-defaults/aws-k8s-1.35-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml @@ -0,0 +1 @@ +../../../shared-defaults/nvidia-driver-branch-deprecation.toml \ No newline at end of file diff --git a/sources/settings-defaults/aws-mantle-1-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml b/sources/settings-defaults/aws-mantle-1-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml new file mode 120000 index 00000000000..b3652b7d460 --- /dev/null +++ b/sources/settings-defaults/aws-mantle-1-nvidia/defaults.d/84-nvidia-driver-branch-deprecation.toml @@ -0,0 +1 @@ +../../../shared-defaults/nvidia-driver-branch-deprecation.toml \ No newline at end of file diff --git a/sources/settings-migrations/v1.66.0/nvidia-driver-branch-setting/Cargo.toml b/sources/settings-migrations/v1.66.0/nvidia-driver-branch-setting/Cargo.toml new file mode 100644 index 00000000000..112ee27fe36 --- /dev/null +++ b/sources/settings-migrations/v1.66.0/nvidia-driver-branch-setting/Cargo.toml @@ -0,0 +1,10 @@ +[package] +name = "nvidia-driver-branch-setting" +version = "0.1.0" +license = "Apache-2.0 OR MIT" +edition = "2021" +publish = false +exclude = ["README.md"] + +[dependencies] +migration-helpers.workspace = true diff --git a/sources/settings-migrations/v1.66.0/nvidia-driver-branch-setting/src/main.rs b/sources/settings-migrations/v1.66.0/nvidia-driver-branch-setting/src/main.rs new file mode 100644 index 00000000000..1a7c04afce2 --- /dev/null +++ b/sources/settings-migrations/v1.66.0/nvidia-driver-branch-setting/src/main.rs @@ -0,0 +1,22 @@ +use migration_helpers::common_migrations::AddSettingsMigration; +use migration_helpers::{migrate, Result}; +use std::process; + +/// We added a new setting for pinning the NVIDIA driver branch (lts/pb) on +/// dual-branch images: +/// - settings.kernel.drivers.nvidia.branch +fn run() -> Result<()> { + migrate(AddSettingsMigration(&[ + "settings.kernel.drivers.nvidia.branch", + ])) +} + +// Returning a Result from main makes it print a Debug representation of the error, but with Snafu +// we have nice Display representations of the error, so we wrap "main" (run) and print any error. +// https://github.com/shepmaster/snafu/issues/110 +fn main() { + if let Err(e) = run() { + eprintln!("{e}"); + process::exit(1); + } +} diff --git a/sources/shared-defaults/nvidia-driver-branch-deprecation.toml b/sources/shared-defaults/nvidia-driver-branch-deprecation.toml new file mode 100644 index 00000000000..a2ea4ccd9c7 --- /dev/null +++ b/sources/shared-defaults/nvidia-driver-branch-deprecation.toml @@ -0,0 +1,13 @@ +# On NVIDIA variants that do not support multi-driver (no nvidia-dual-branch +# image feature), settings.kernel.drivers.nvidia.branch has no effect. Emit a +# deprecation warning when it is set, via the templated deprecation-warning timer. +[metadata.settings.kernel.drivers.nvidia.branch] +affected-services = ["nvidia-driver-branch-deprecation"] + +[services.nvidia-driver-branch-deprecation] +configuration-files = ["nvidia-driver-branch-deprecation"] +restart-commands = ["systemctl restart deprecation-warning@nvidia-driver-branch.timer"] + +[configuration-files.nvidia-driver-branch-deprecation] +path = "/etc/deprecated-settings/nvidia-driver-branch" +template-path = "/usr/share/templates/nvidia-driver-branch-deprecation"