diff --git a/Release.toml b/Release.toml index 6d664dae326..1a7b8c2ca9e 100644 --- a/Release.toml +++ b/Release.toml @@ -218,5 +218,7 @@ version = "1.15.0" "(1.14.2, 1.14.3)" = [ "migrate_v1.14.3_aws-admin-container-v0-10-2.lz4", "migrate_v1.14.3_public-admin-container-v0-10-2.lz4", + "migrate_v1.14.3_aws-control-container-v0-7-3.lz4", + "migrate_v1.14.3_public-control-container-v0-7-3.lz4", ] "(1.14.3, 1.15.0)" = [] diff --git a/sources/Cargo.lock b/sources/Cargo.lock index 257ed562d16..6c04bacedfb 100644 --- a/sources/Cargo.lock +++ b/sources/Cargo.lock @@ -565,6 +565,13 @@ dependencies = [ "migration-helpers", ] +[[package]] +name = "aws-control-container-v0-7-3" +version = "0.1.0" +dependencies = [ + "migration-helpers", +] + [[package]] name = "aws-credential-types" version = "0.54.1" @@ -3040,6 +3047,13 @@ dependencies = [ "migration-helpers", ] +[[package]] +name = "public-control-container-v0-7-3" +version = "0.1.0" +dependencies = [ + "migration-helpers", +] + [[package]] name = "quick-xml" version = "0.26.0" diff --git a/sources/Cargo.toml b/sources/Cargo.toml index 4a838a4dc4b..3198c5efb6d 100644 --- a/sources/Cargo.toml +++ b/sources/Cargo.toml @@ -55,6 +55,8 @@ members = [ "api/migration/migrations/v1.14.2/ecs-images-cleanup", "api/migration/migrations/v1.14.3/aws-admin-container-v0-10-2", "api/migration/migrations/v1.14.3/public-admin-container-v0-10-2", + "api/migration/migrations/v1.14.3/aws-control-container-v0-7-3", + "api/migration/migrations/v1.14.3/public-control-container-v0-7-3", "bloodhound", diff --git a/sources/api/migration/migrations/v1.14.3/aws-control-container-v0-7-3/Cargo.toml b/sources/api/migration/migrations/v1.14.3/aws-control-container-v0-7-3/Cargo.toml new file mode 100644 index 00000000000..29b768fcdea --- /dev/null +++ b/sources/api/migration/migrations/v1.14.3/aws-control-container-v0-7-3/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "aws-control-container-v0-7-3" +version = "0.1.0" +authors = ["Markus Boehme "] +license = "Apache-2.0 OR MIT" +edition = "2021" +publish = false +# Don't rebuild crate just because of changes to README. +exclude = ["README.md"] + +[dependencies] +migration-helpers = { path = "../../../migration-helpers", version = "0.1.0"} diff --git a/sources/api/migration/migrations/v1.14.3/aws-control-container-v0-7-3/src/main.rs b/sources/api/migration/migrations/v1.14.3/aws-control-container-v0-7-3/src/main.rs new file mode 100644 index 00000000000..0483cb51c1f --- /dev/null +++ b/sources/api/migration/migrations/v1.14.3/aws-control-container-v0-7-3/src/main.rs @@ -0,0 +1,27 @@ +use migration_helpers::common_migrations::ReplaceTemplateMigration; +use migration_helpers::{migrate, Result}; +use std::process; + +const OLD_CONTROL_CTR_TEMPLATE: &str = + "{{ ecr-prefix settings.aws.region }}/bottlerocket-control:v0.7.2"; +const NEW_CONTROL_CTR_TEMPLATE: &str = + "{{ ecr-prefix settings.aws.region }}/bottlerocket-control:v0.7.3"; + +/// We bumped the version of the default control container +fn run() -> Result<()> { + migrate(ReplaceTemplateMigration { + setting: "settings.host-containers.control.source", + old_template: OLD_CONTROL_CTR_TEMPLATE, + new_template: NEW_CONTROL_CTR_TEMPLATE, + }) +} + +// 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/api/migration/migrations/v1.14.3/public-control-container-v0-7-3/Cargo.toml b/sources/api/migration/migrations/v1.14.3/public-control-container-v0-7-3/Cargo.toml new file mode 100644 index 00000000000..59d6818ab9e --- /dev/null +++ b/sources/api/migration/migrations/v1.14.3/public-control-container-v0-7-3/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "public-control-container-v0-7-3" +version = "0.1.0" +authors = ["Markus Boehme "] +license = "Apache-2.0 OR MIT" +edition = "2021" +publish = false +# Don't rebuild crate just because of changes to README. +exclude = ["README.md"] + +[dependencies] +migration-helpers = { path = "../../../migration-helpers", version = "0.1.0"} diff --git a/sources/api/migration/migrations/v1.14.3/public-control-container-v0-7-3/src/main.rs b/sources/api/migration/migrations/v1.14.3/public-control-container-v0-7-3/src/main.rs new file mode 100644 index 00000000000..260653be8fb --- /dev/null +++ b/sources/api/migration/migrations/v1.14.3/public-control-container-v0-7-3/src/main.rs @@ -0,0 +1,25 @@ +use migration_helpers::common_migrations::ReplaceStringMigration; +use migration_helpers::{migrate, Result}; +use std::process; + +const OLD_CONTROL_CTR_SOURCE_VAL: &str = "public.ecr.aws/bottlerocket/bottlerocket-control:v0.7.2"; +const NEW_CONTROL_CTR_SOURCE_VAL: &str = "public.ecr.aws/bottlerocket/bottlerocket-control:v0.7.3"; + +/// We bumped the version of the default control container +fn run() -> Result<()> { + migrate(ReplaceStringMigration { + setting: "settings.host-containers.control.source", + old_val: OLD_CONTROL_CTR_SOURCE_VAL, + new_val: NEW_CONTROL_CTR_SOURCE_VAL, + }) +} + +// 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); + } +}