diff --git a/content/en/os/1.19.x/_index.markdown b/content/en/os/1.19.x/_index.markdown index 9c326490..a9961e95 100644 --- a/content/en/os/1.19.x/_index.markdown +++ b/content/en/os/1.19.x/_index.markdown @@ -1,4 +1,4 @@ +++ -title="1.19.x" +title="1.19.x (Current)" type="docs" +++ diff --git a/content/en/os/1.20.x/_index.markdown b/content/en/os/1.20.x/_index.markdown deleted file mode 100644 index 6517489d..00000000 --- a/content/en/os/1.20.x/_index.markdown +++ /dev/null @@ -1,4 +0,0 @@ -+++ -title="1.20.x (Current)" -type="docs" -+++ diff --git a/content/en/os/1.20.x/api/_index.markdown b/content/en/os/1.20.x/api/_index.markdown deleted file mode 100644 index c6e3f727..00000000 --- a/content/en/os/1.20.x/api/_index.markdown +++ /dev/null @@ -1,6 +0,0 @@ -+++ -title = "API" -type = "docs" -description = "Bottlerocket's primary administrative interface" -weight = 999 -+++ \ No newline at end of file diff --git a/content/en/os/1.20.x/api/endpoints/index.markdown b/content/en/os/1.20.x/api/endpoints/index.markdown deleted file mode 100644 index 51580880..00000000 --- a/content/en/os/1.20.x/api/endpoints/index.markdown +++ /dev/null @@ -1,11 +0,0 @@ -+++ -title = "API Endpoint Reference" -type = "swagger" -description = "Paths and methods for the API" -+++ - -The following output is generated from [Bottlerocket's OpenAPI Spec](https://github.com/bottlerocket-os/bottlerocket/blob/develop/sources/api/openapi.yaml). - ---- - -{{< swaggerui src="../../../../external/openapi/1.15.x/openapi.yaml" >}} diff --git a/content/en/os/1.20.x/api/reporting/_index.markdown b/content/en/os/1.20.x/api/reporting/_index.markdown deleted file mode 100644 index 7e0dc21c..00000000 --- a/content/en/os/1.20.x/api/reporting/_index.markdown +++ /dev/null @@ -1,50 +0,0 @@ -+++ -title = "Reporting" -type = "docs" -description = "Using the Report API to automate operating system-level reporting." -+++ - -Operating systems are complicated; inspecting and reporting data about the OS is a common but tedious task that needs repeating as configurations change. -Manually gathering this data for Bottlerocket has additional complications due to API abstracted settings and indirect access to the host. - -The Bottlerocket report API provides a mechanism to automate operating system-level reporting. -You can run reports that self-evaluate the OS based on the current state of the system compared to known standards. - -## Center for Internet Security (CIS) Benchmark - -You can currently generate reports on your Bottlerocket nodes against two different CIS benchmarks: - -- [Bottlerocket CIS Benchmark](./cis/) -- [Kubernetes CIS Benchmark](./cis-k8s) - -## Running a report - -You will need to be running the [control container](../../concepts/shell-less-host/#control-container) or, alternately, mount the `apiclient` binary and the Bottlerocket API unix socket into a container as well as have the appropriate SELinux permissions. - -First, create an interactive shell session on the control container or container with `apiclient`. -From the shell run: - -```shell -apiclient report -``` - -This will evaluate the current node to a particular report and return the results in a human-readable format. - -If you intend to process the report with some other piece of software, add the flag `-f` with the value of `json` for a JSON representation of the report: - -```shell -# Returns evaluation of the report in JSON format -apiclient report -f json -``` - -## Evaluation Results - -Evaluation of each item on the report will result in one of three outcomes: - -* `PASS`: Evaluated item is in compliance with the benchmark. -* `FAIL`: Evaluated item is not in compliance with the benchmark. -* `SKIP`: The item could not be automatically evaluated. - -## All Available Reports - -{{< on-github >}} diff --git a/content/en/os/1.20.x/api/reporting/cis-k8s/index.markdown b/content/en/os/1.20.x/api/reporting/cis-k8s/index.markdown deleted file mode 100644 index 09dfe7b4..00000000 --- a/content/en/os/1.20.x/api/reporting/cis-k8s/index.markdown +++ /dev/null @@ -1,33 +0,0 @@ -+++ -title = "K8s CIS Benchmark" -type = "docs" -description = "Generating a Kubernetes CIS Benchmark report" -toc_hide=true -+++ - -The [Kubernetes CIS Benchmark](https://www.cisecurity.org/benchmark/kubernetes) contains a number of security best practices to harden Kubernetes worker nodes. - -{{% alert title="Note" color="success" %}} -The Kubernetes CIS Benchmark contains two levels, however, currently, level 2 only adds one additional check (4.2.8) for worker nodes. The Bottlerocket reporting API cannot automatically evaluate this additional check and therefore the two levels are functionally identical for automatic evaluation purposes. -{{% /alert %}} - -## Examples - -Expanding upon the general instructions to [run a report](../#running-a-report), for the Bottlerocket CIS benchmark use the identifier `cis-k8s`: - -```shell -apiclient report cis-k8s -``` - -Adding the flag `-l` with the value of `2` will evaluate to the Level 2 benchmark. For example: - -```shell -# Returns evaluation of CIS Benchmark Level 2 -apiclient report cis-k8s -l 2 -``` - -## Audit and Remediation - -Refer to the [Kubernetes CIS Benchmark](https://www.cisecurity.org/benchmark/kubernetes) for detailed audit and remediation steps. - -{{< on-github >}} diff --git a/content/en/os/1.20.x/api/reporting/cis/index.markdown b/content/en/os/1.20.x/api/reporting/cis/index.markdown deleted file mode 100644 index 89e2a36f..00000000 --- a/content/en/os/1.20.x/api/reporting/cis/index.markdown +++ /dev/null @@ -1,37 +0,0 @@ -+++ -title = "Bottlerocket CIS Benchmark" -type = "docs" -description = "Generating a Bottlerocket CIS Benchmark report" -toc_hide=true -+++ - -The [Bottlerocket CIS Benchmark](https://www.cisecurity.org/benchmark/bottlerocket) contains a number of security best practices to harden Bottlerocket worker nodes. -The benchmark contains two levels: - -* **Level 1:** basic guidelines with clear security benefits that do not inhibit the node. -Bottlerocket’s default settings are compliant with level 1. -* **Level 2:** detailed, specific guidance that provide more defence to the node. -This level introduces some trade-offs between functionality and security. - -The report API has built-in tests that allow you to evaluate the state of the node to both Level 1 and Level 2. - -## Examples - -Expanding upon the general instructions to [run a report](../#running-a-report), for the Bottlerocket CIS benchmark use the identifier `cis`: - -```shell -apiclient report cis -``` - -Adding the flag `-l` with the value of `2` will evaluate to the Level 2 benchmark. For example: - -```shell -# Returns evaluation of CIS Benchmark Level 2 -apiclient report cis -l 2 -``` - -## Audit and Remediation - -Refer to the [Bottlerocket CIS Benchmark](https://www.cisecurity.org/benchmark/bottlerocket) for detailed audit and remediation steps. - -{{< on-github >}} diff --git a/content/en/os/1.20.x/api/settings-index/_index.markdown b/content/en/os/1.20.x/api/settings-index/_index.markdown deleted file mode 100644 index c75c2c46..00000000 --- a/content/en/os/1.20.x/api/settings-index/_index.markdown +++ /dev/null @@ -1,7 +0,0 @@ -+++ -title="Settings Index" -type="docs" -description="Comprehesive list of all documented settings" -+++ - -{{< all-settings new_badge=true >}} diff --git a/content/en/os/1.20.x/api/settings/_index.markdown b/content/en/os/1.20.x/api/settings/_index.markdown deleted file mode 100644 index 4f0b9f1b..00000000 --- a/content/en/os/1.20.x/api/settings/_index.markdown +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title="Settings Reference" -type="docs" -description="Individual settings avaliable for the `/settings` endpoint" -+++ \ No newline at end of file diff --git a/content/en/os/1.20.x/api/settings/autoscaling/_index.markdown b/content/en/os/1.20.x/api/settings/autoscaling/_index.markdown deleted file mode 100644 index dd96f615..00000000 --- a/content/en/os/1.20.x/api/settings/autoscaling/_index.markdown +++ /dev/null @@ -1,10 +0,0 @@ -+++ -title="autoscaling" -type="docs" -toc_hide=true -description="Settings related to auto scaling groups (`settings.autoscaling.*`)" -+++ - -[Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/auto-scaling-groups.html) settings for `aws-*` variants. - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/aws/_index.markdown b/content/en/os/1.20.x/api/settings/aws/_index.markdown deleted file mode 100644 index 34f09cad..00000000 --- a/content/en/os/1.20.x/api/settings/aws/_index.markdown +++ /dev/null @@ -1,11 +0,0 @@ -+++ -title="aws" -type="docs" -toc_hide=true -description="Settings specific to the AWS platform (`settings.aws.*`)" -+++ - -Only pertinent on `aws-*` variants or on other variants in conjunction with [IAM Roles Anywhere](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html), these settings are automatically gathered using instance metadata. -Typically, you do not need to explicitly populate these settings, however you can manually override these settings using the API for testing or other purposes. - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/boot/_index.markdown b/content/en/os/1.20.x/api/settings/boot/_index.markdown deleted file mode 100644 index cdd15111..00000000 --- a/content/en/os/1.20.x/api/settings/boot/_index.markdown +++ /dev/null @@ -1,13 +0,0 @@ -+++ -title="boot" -type="docs" -toc_hide=true -description="Settings related to kernel boot config (`settings.boot.*`)" -+++ - -{{% alert title="Warning" color="warning" %}} -Bottlerocket only allows boot configuration for `kernel` and `init`. -If you specify any other boot config key the settings generation will fail. -{{% /alert %}} - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/bootstrap-containers/_index.markdown b/content/en/os/1.20.x/api/settings/bootstrap-containers/_index.markdown deleted file mode 100644 index b06a9418..00000000 --- a/content/en/os/1.20.x/api/settings/bootstrap-containers/_index.markdown +++ /dev/null @@ -1,8 +0,0 @@ -+++ -title="bootstrap-containers" -type="docs" -toc_hide=true -description="Settings related to bootstrap containers (`settings.bootstrap-containers.*`)" -+++ - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/cloudformation/_index.markdown b/content/en/os/1.20.x/api/settings/cloudformation/_index.markdown deleted file mode 100644 index 006a9d43..00000000 --- a/content/en/os/1.20.x/api/settings/cloudformation/_index.markdown +++ /dev/null @@ -1,14 +0,0 @@ -+++ -title="cloudformation" -type="docs" -toc_hide=true -description="Settings related to CloudFormation signaling (`settings.cloudformation.*`)" -+++ - -You can setup Bottlerocket to send successful host creation or update signals to AWS CloudFormation. See [CreationPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-creationpolicy.html) and [UpdatePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html) for more information about signaling in CloudFormation. - -{{% alert title="Note" color="success" %}} -These setting only function on `aws-*` variants. -{{% /alert %}} - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/container-registry/_index.markdown b/content/en/os/1.20.x/api/settings/container-registry/_index.markdown deleted file mode 100644 index d617d2ce..00000000 --- a/content/en/os/1.20.x/api/settings/container-registry/_index.markdown +++ /dev/null @@ -1,9 +0,0 @@ -+++ -title="container-registry" -type="docs" -toc_hide=true -description="Settings related to container image registries (`settings.container-registry.*`)" - -+++ - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/container-runtime/_index.markdown b/content/en/os/1.20.x/api/settings/container-runtime/_index.markdown deleted file mode 100644 index 195fef1e..00000000 --- a/content/en/os/1.20.x/api/settings/container-runtime/_index.markdown +++ /dev/null @@ -1,8 +0,0 @@ -+++ -title="container-runtime" -type="docs" -toc_hide=true -description="Settings related to container runtime behaviour (`settings.container-runtime.*`)" -+++ - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/dns/_index.markdown b/content/en/os/1.20.x/api/settings/dns/_index.markdown deleted file mode 100644 index 457b54f2..00000000 --- a/content/en/os/1.20.x/api/settings/dns/_index.markdown +++ /dev/null @@ -1,12 +0,0 @@ -+++ -title="dns" -type="docs" -toc_hide=true -description="Settings related to custom DNS settings (`settings.dns.*`)" -+++ - -Bottlerocket generates the host `resolv.conf`[^1] from `settings.dns.*` values. - -{{< settings >}} - -[^1]: `/etc/resolv.conf` for variants using [wicked](https://github.com/openSUSE/wicked) and `/run/systemd/resolve/resolv.conf` for variants using systemd-networkd (`*-k8s-1.28-*` and `*-ecs-2-*` and newer). diff --git a/content/en/os/1.20.x/api/settings/ecs/_index.markdown b/content/en/os/1.20.x/api/settings/ecs/_index.markdown deleted file mode 100644 index 6937b314..00000000 --- a/content/en/os/1.20.x/api/settings/ecs/_index.markdown +++ /dev/null @@ -1,9 +0,0 @@ -+++ -title="ecs" -type="docs" -toc_hide=true -description="Settings related to Amazon ECS (`settings.ecs.*`)" - -+++ - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/host-containers/_index.markdown b/content/en/os/1.20.x/api/settings/host-containers/_index.markdown deleted file mode 100644 index f3707ae9..00000000 --- a/content/en/os/1.20.x/api/settings/host-containers/_index.markdown +++ /dev/null @@ -1,11 +0,0 @@ -+++ -title="host-containers" -type="docs" -toc_hide=true -description="Settings related to host containers (`settings.host-containers.*`)" - -+++ - -You can use the `host-containers` settings to alter the settings for the control and admin containers, or you can define your own host containers with these settings. - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/kernel/_index.markdown b/content/en/os/1.20.x/api/settings/kernel/_index.markdown deleted file mode 100644 index ae80b6b3..00000000 --- a/content/en/os/1.20.x/api/settings/kernel/_index.markdown +++ /dev/null @@ -1,9 +0,0 @@ -+++ -title="kernel" -type="docs" -toc_hide=true -description="Settings related to the Linux kernel (`settings.kernel.*`)" - -+++ - -{{< settings >}} \ No newline at end of file diff --git a/content/en/os/1.20.x/api/settings/kubernetes/_index.markdown b/content/en/os/1.20.x/api/settings/kubernetes/_index.markdown deleted file mode 100644 index ed89526f..00000000 --- a/content/en/os/1.20.x/api/settings/kubernetes/_index.markdown +++ /dev/null @@ -1,12 +0,0 @@ -+++ -title="kubernetes" -type="docs" -toc_hide=true -description="Settings related to Kubernetes (`settings.kubernetes.*`)" -+++ - -{{< settings >}} - ---- - -Some setting descriptions come from the [Kubelet Configuration](https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/) or [Kubelet Options](https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/#options) documentation. diff --git a/content/en/os/1.20.x/api/settings/metrics/_index.markdown b/content/en/os/1.20.x/api/settings/metrics/_index.markdown deleted file mode 100644 index 845f164b..00000000 --- a/content/en/os/1.20.x/api/settings/metrics/_index.markdown +++ /dev/null @@ -1,9 +0,0 @@ -+++ -title="metrics" -type="docs" -toc_hide=true -description="Settings related to metrics (`settings.metrics.*`)" -+++ - - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/motd/_index.markdown b/content/en/os/1.20.x/api/settings/motd/_index.markdown deleted file mode 100644 index b0204745..00000000 --- a/content/en/os/1.20.x/api/settings/motd/_index.markdown +++ /dev/null @@ -1,9 +0,0 @@ -+++ -title="motd" -type="docs" -toc_hide=true -description="Settings related to the message of the day (`settings.motd`)" - -+++ - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/network/_index.markdown b/content/en/os/1.20.x/api/settings/network/_index.markdown deleted file mode 100644 index b6cf14ef..00000000 --- a/content/en/os/1.20.x/api/settings/network/_index.markdown +++ /dev/null @@ -1,8 +0,0 @@ -+++ -title="network" -type="docs" -toc_hide=true -description="Settings related to networking configuration (`settings.network.*`)" -+++ - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/ntp/_index.markdown b/content/en/os/1.20.x/api/settings/ntp/_index.markdown deleted file mode 100644 index 2b4427b9..00000000 --- a/content/en/os/1.20.x/api/settings/ntp/_index.markdown +++ /dev/null @@ -1,8 +0,0 @@ -+++ -title="ntp" -type="docs" -toc_hide=true -description="Settings related to time servers/system time (`settings.ntp.*`)" -+++ - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/oci-defaults/_index.markdown b/content/en/os/1.20.x/api/settings/oci-defaults/_index.markdown deleted file mode 100644 index 2c32112d..00000000 --- a/content/en/os/1.20.x/api/settings/oci-defaults/_index.markdown +++ /dev/null @@ -1,13 +0,0 @@ -+++ -title="oci-defaults" -type="docs" -toc_hide=true -description="Settings related to orchestrated containers for overriding the [OCI runtime spec](https://github.com/opencontainers/runtime-spec/blob/main/config.md) defaults (`settings.oci-defaults.*`)." - -+++ - -{{% alert title="Note" color="secondary" %}} -These settings apply only to [orchestrated containers](../../../concepts/components/#container-and-orchestrator-support), not to [host containers](../../../concepts/components/#operational-and-administrative-workloads). -{{% /alert %}} - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/oci-hooks/_index.markdown b/content/en/os/1.20.x/api/settings/oci-hooks/_index.markdown deleted file mode 100644 index ceef294c..00000000 --- a/content/en/os/1.20.x/api/settings/oci-hooks/_index.markdown +++ /dev/null @@ -1,10 +0,0 @@ -+++ -title="oci-hooks" -type="docs" -toc_hide=true -description="Settings related host-provided OCI Hooks (`settings.oci-hooks.*`)." -+++ - -Enable/disable OCI hooks provided by the host. - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/pki/_index.markdown b/content/en/os/1.20.x/api/settings/pki/_index.markdown deleted file mode 100644 index 45cbe45c..00000000 --- a/content/en/os/1.20.x/api/settings/pki/_index.markdown +++ /dev/null @@ -1,15 +0,0 @@ -+++ -title="pki" -type="docs" -toc_hide=true -description="Settings related to Custom CA Certificates (`settings.pki.*`)" - -+++ - -By default, Bottlerocket ships with the [Mozilla CA certificate store](https://wiki.mozilla.org/CA/Included_Certificates), but you can add self-signed certificates with `settings.pki.`. - -{{% alert title="Tip" color="success" %}} -If your user data is over the size limit for the platform, you can use `apiclient` with this setting from within a [bootstrap container](https://github.com/bottlerocket-os/bottlerocket#bootstrap-containers-settings) to add certificates. -{{% /alert %}} - -{{< settings >}} diff --git a/content/en/os/1.20.x/api/settings/updates/_index.markdown b/content/en/os/1.20.x/api/settings/updates/_index.markdown deleted file mode 100644 index b0c86342..00000000 --- a/content/en/os/1.20.x/api/settings/updates/_index.markdown +++ /dev/null @@ -1,8 +0,0 @@ -+++ -title="updates" -type="docs" -toc_hide=true -description="Settings related to updates (`settings.updates.*`)" -+++ - -{{< settings >}} diff --git a/content/en/os/1.20.x/concepts/_index.markdown b/content/en/os/1.20.x/concepts/_index.markdown deleted file mode 100644 index 1f3f48c0..00000000 --- a/content/en/os/1.20.x/concepts/_index.markdown +++ /dev/null @@ -1,6 +0,0 @@ -+++ -title="Concepts" -type="docs" -description="High-level concepts in Bottlerocket" -weight = "50" -+++ \ No newline at end of file diff --git a/content/en/os/1.20.x/concepts/api-driven/index.markdown b/content/en/os/1.20.x/concepts/api-driven/index.markdown deleted file mode 100644 index ea77b6bc..00000000 --- a/content/en/os/1.20.x/concepts/api-driven/index.markdown +++ /dev/null @@ -1,95 +0,0 @@ -+++ -title = "API Driven" -type = "docs" -description = "Administration and setting manipulation with the Bottlerocket API" -+++ - -Bottlerocket is an API-driven operating system. -This is a departure from general purpose Linux distributions where you install packages, configure services through individual configuration files, and use commands from the shell to perform administrative tasks. - -With the concept of variants, all installed software for any given image is a known quantity and an included API enables you to configure everything from a single interface. -Additionally, administrative tasks like checking for updates and rebooting as well as executing commands on the host are all accomplished with API calls. - -## Accessing the API - -Bottlerocket API requests are made with HTTP requests over a Unix domain socket. -The API is only accessible by containers running on the same host with specific SELinux labels. -The API Unix domain socket is accessible by mounting; containers running on the host can access the API as long as they have both the correct SELinux labels and mount the socket. -Both the Admin and Control containers have the requisite SELinux labels and socket pre-mounted. -Because access to the API socket is through explicit mounts and SELinux labels there is no authentication required. -Consequently, any remote access to the API necessitates an authenticated transport mechanism. - -## API Client - -Bottlerocket ships with a tool called `apiclient` which provides a command line interface for interacting with the API. -The client is a minimal abstraction over the API: it accepts command-line arguments, translates the arguments into an API call, and returns the response as standard output. -Access to the `apiclient` binary is typically provided as a read-only mount from the host to containers that need access. - -## Settings - -You can view and alter Bottlerocket settings through the API. -The API is able to `set` or `get` one or many *settings*. -A setting is accessible by a path and contains a value. - -Take this `set` example that alters a single setting: - -```goat - +-- Path Value - | | -+---------+---------+ +-+-+ -| | | | -host-containers.admin.enabled=false - | | - +--+--+ - | - Setting -``` - -If you `get` a path without the setting, it returns all the settings and values in the path: - -```goat - +-- Path - | -+---------+---------+ -| | -host-containers.admin --> Values of: - enabled - source - superpowered -``` - -If you `get` a path and a setting, it returns only the value of that specific setting: - -```goat - +-- Path - | -+---------+---------+ -| | -host-containers.admin.enabled --> Value of: - | | enabled - +--+--+ - | - Setting -``` - -Internally, these settings are either marshalled into various config formats for each related process or they are directly accessed by Bottlerocket’s own tools. - -From the API client, you can either pass in settings in a key/value (format with the key being the path) or as JSON containing both the path and value(s). - -As an example: - -```shell -host-containers.admin.enabled=false -``` - -The above key/value format is equivalent to: - -```json -{ "host-containers" : { "admin" : { "enabled": false } } } -``` - -### User Data - -User Data is a collection of settings contained in a TOML-formatted file that is processed by the API at boot: anything you can manipulate using `apiclient` you can also manipulate with User Data. - -{{< on-github >}} diff --git a/content/en/os/1.20.x/concepts/bootstrap-containers/_index.markdown b/content/en/os/1.20.x/concepts/bootstrap-containers/_index.markdown deleted file mode 100644 index 1d5b589e..00000000 --- a/content/en/os/1.20.x/concepts/bootstrap-containers/_index.markdown +++ /dev/null @@ -1,91 +0,0 @@ -+++ -title = "Bootstrap Containers" -type = "docs" -description = "Setting up the host with containers that start during boot." -+++ - -Bootstrap containers are a form of {{< ver-ref project="os" page="/concepts/host-containers" >}}host container{{< /ver-ref >}} that you can use to run critical software before the node connects to an orchestrator. -They give you substantial power to configure and modify the system in ways that would otherwise be [difficult or impossible](#use-cases). - -## Lifecycle - -When you define a bootstrap container using user-data or the Bottlerocket API, the following sequence occurs on next boot: - -- [`systemd`](https://systemd.io/) starts all of the bootstrap containers concurrently, -- `systemd` will not move to the next [target](https://www.freedesktop.org/software/systemd/man/systemd.target.html) until all of the bootstrap containers start, run, and exit, -- any bootstrap container configured with `{{< ver-ref project="os" page="/api/settings/bootstrap-containers#name_mode">}}mode=once{{< /ver-ref >}}` will change to `{{< ver-ref project="os" page="/api/settings/bootstrap-containers#name_mode">}}mode=off{{< /ver-ref >}}` once complete, -- any bootstrap container set to `{{< ver-ref project="os" page="/api/settings/bootstrap-containers#name_essential">}}essential=true{{< /ver-ref >}}` that exits with an non-zero exit code halts the boot process, -- unless stopped in the previous step, the boot process continues by loading the orchestrator agent ({{% ver-ref project="os" page="/concepts/components#container-and-orchestrator-support"%}} `kubelet` on `*-k8s-*` {{% /ver-ref %}} variants or the {{% ver-ref project="os" page="/concepts/components#ecs-variants" %}}ECS agent on `*-ecs-*`{{% /ver-ref %}} variants). - -### Examples - -{{< twocol - containerclass="td-max-width-on-larger-screens docs-figure" - rowclass="docs-figure" >}} - {{< twocol_inner colsplit="7" >}} - {{< bootstrap_containers_diagram example=1 >}} - {{}} - {{% twocol_inner %}} -This example shows four bootstrap containers (`B1`,`B2`,`B3`, and `B4`) starting. -The start order of these containers is not sequential and could be in any order. -Container `B2` runs the longest and the next stage of the boot does not proceed until it completes. - {{%/ twocol_inner %}} -{{}} - -{{< twocol - containerclass="td-max-width-on-larger-screens docs-figure" - rowclass="docs-figure" >}} - {{< twocol_inner colsplit="7" >}} - {{< bootstrap_containers_diagram example=2 >}} - {{}} - {{% twocol_inner %}} -This example is the same as the previous one except container `B2` is configured with {{< ver-ref project="os" page="/api/settings/bootstrap-containers#name_essential">}}`essential=true`{{< /ver-ref >}}. -Container `B2` exits with a non-zero exit code and consequently the boot halts. - {{%/ twocol_inner %}} -{{}} - -{{< twocol - containerclass="td-max-width-on-larger-screens docs-figure" - rowclass="docs-figure" >}} - {{< twocol_inner colsplit="7" >}} - {{< bootstrap_containers_diagram example=3 >}} - {{}} - {{% twocol_inner %}} -This example is the same as the first except container `B4` is configured with {{< ver-ref project="os" page="/api/settings/bootstrap-containers#name_mode">}}`mode=once`{{< /ver-ref >}}. -After all the bootstrap containers finish, Bottlerocket (via a `systemd` unit) updates container `B4`'s `mode` to `off`. - {{%/ twocol_inner %}} -{{}} - -### Considerations - -As a consequence of this lifecycle, you should keep a few things in mind when using bootstrap containers: - -1. Bootstrap containers should be short-running and cleanly exit when complete otherwise the node will hang. -2. Since `systemd` starts all the bootstrap containers concurrently, you cannot rely on a deterministic starting order. -3. Bootstrap containers do not have access to the container orchestrator nor the rest of the cluster. -4. Bootstrap containers should not modify critical configuration files (e.g. `/etc/`). - -## Capabilities and permissions - -Bootstrap containers sit somewhat between default host containers and `superpowered` host container permissions. -They have access to the underlying host filesystem at `/.bottlerocket/` which contains the root filesystem (`/.bottlerocket/rootfs`). -Additionally, bootstrap containers run with the {{< ver-ref project="os" page="/api/settings/oci-defaults#capabilities_sys-admin" >}}CAP_SYS_ADMIN capability{{< /ver-ref >}}, allowing for the creation of files, directories, and mounts accessible to the host (however the root filesystem remains {{< ver-ref project="os" page="/concepts/restricted-filesystem#immutable-filesystem" >}}immutable{{}}). -You cannot elevate the permissions of bootstrap containers. - -## Use cases - -Bootstrap containers have a variety of uses. - -1. Configure large setting values. -On many platforms there are [limits to the size of user-data](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-add-user-data.html) but you can use a bootstrap container to pass large values into `apiclient`. -2. Conditionally halt boot. -You can perform checks or evaluation of the system in a {{< ver-ref project="os" page="/api/settings/bootstrap-containers#name_essential" >}}bootstrap container with `essential` set to `true`{{< /ver-ref >}}. -3. Apply settings you do not want to store in plaintext. -In cases where you need to pass values that you would not want to store in plain-text on external systems (such as credentials), you can instead use a bootstrap container that sets the values via `apiclient`. -4. Configure ephemeral disks. Since [bootstrap containers have access to `/.bottlerocket/rootfs/mnt`](#capabilities-and-permissions) and all bootstrap or `superpowered` host containers share this bind mount, you can configure ephemeral disks attached to your host in a bootstrap container and use it elsewhere. - -## Also see - -- {{< ver-ref project="os" page="/api/settings/bootstrap-containers">}} bootstrap-containers in the API Setting Reference{{< /ver-ref >}} - -{{< on-github >}} diff --git a/content/en/os/1.20.x/concepts/chain-of-trust/index.markdown b/content/en/os/1.20.x/concepts/chain-of-trust/index.markdown deleted file mode 100644 index 93ba9808..00000000 --- a/content/en/os/1.20.x/concepts/chain-of-trust/index.markdown +++ /dev/null @@ -1,56 +0,0 @@ -+++ -title = "Chain of Trust" -type = "docs" -description = "Bottlerocket's cryptographic validation mechansims" -+++ - -Container hosts are particularly sensitive, with nearly unfettered access to your workloads, secrets, storage, and network. -Consequently, ensuring that only your desired code runs on the host is paramount. Bottlerocket’s chain of trust provides cryptographic verification of all parts of the boot sequence through to your containers starting. -Effectively, this means that every step verifies the next step in the sequence and any verification failure will immediately prevent any further progress. - -Starting from Bottlerocket 1.15.0 with Kubernetes 1.28 or ECS 2 variants (or newer), Secure Boot is enabled by default, where supported by firmware. - -## Boot Sequence - -{{% readfile "/includes/os/1.15.x/secure-boot.svg" %}} - -The chain of trust starts prior to booting Bottlerocket. -Modern, server-class machines initialize by loading firmware that conforms to the [UEFI specification](https://en.wikipedia.org/wiki/UEFI). -In the most basic configuration, the firmware hands off control of the machine to the OS or bootloader. -However, UEFI optionally implements Secure Boot, which is a mechanism that prevents hand off to unsigned software. Bottlerocket uses Secure Boot by default. - -To start, the firmware retrieves the Bottlerocket certificate stored in the system’s NVRAM and uses it to verify that the first-stage bootloader, [shim](https://github.com/rhboot/shim), is correctly signed. - -{{% alert title="Note" color="success" %}} -Many operating systems use a version of shim signed by the Microsoft 3rd Party UEFI CA certificate. Bottlerocket does not use this certificate. -Instead, Bottlerocket uses a self-signed certificate intended to allow you to focus your machine’s trust only to your specified OS (in this case, Bottlerocket). -From Microsoft’s article [“Secure the Windows boot process”](https://learn.microsoft.com/en-us/windows/security/operating-system-security/system-security/secure-the-windows-10-boot-process): - -*“Since the Microsoft 3rd Party UEFI CA certificate signs the bootloaders for all Linux distributions, trusting the Microsoft 3rd Party UEFI CA signature in the UEFI database increases the attack surface of systems. A customer who intended to only trust and boot a single Linux distribution will trust all distributions - much more than their desired configuration.”* -{{% /alert %}} - -Shim has access to certs stored in NVRAM. These certs are needed to verify the signed binary for GNU GRUB, the next step in the boot process. -GRUB verifies the signature of its configuration file, `grub.cfg`, then grub calls into shim to verify the kernel. -The GRUB configuration also contains the dm-verity root hash for the immutable root filesystem. GRUB hands off to the now-verified Linux kernel which can mount the root filesystem using the dm-verity root hash. - -If any verification fails during the above process, the boot sequence will cease. -After the boot process, dm-verity will detect any changes to the block device underlying the root filesystem and trigger a reboot of the machine. - -## Requirements - -This chain of trust relies on Secure Boot enabled firmware. Secure Boot has some prerequisites which are primarily relevant on `metal` variants: - -1. UEFI firmware -2. Firmware Secure Boot feature enabled; Compatibility Support Module and/or legacy bios emulation disabled -3. The machine’s NVRAM must contain Bottlerocket’s "db" certificate, which is used to sign shim. The Bottlerocket EFI partition includes this certificate in both PEM and DER formats. - -Verifying these requirements varies by hardware vendor and may involve making edits on your hardware’s firmware setup menu. - -On `aws-*` variants , any instance based with a Xen-based hypervisor (generation 4 and below) use a legacy BIOS mode and consequently cannot use Secure Boot. - -## Related - -- [FAQ: How do I disable Secure Boot?](/en/faq/#4_3) -- [Concept: Restricted filesystem](../restricted-filesystem/) - -{{< on-github >}} diff --git a/content/en/os/1.20.x/concepts/components/index.markdown b/content/en/os/1.20.x/concepts/components/index.markdown deleted file mode 100644 index 30e0a7ce..00000000 --- a/content/en/os/1.20.x/concepts/components/index.markdown +++ /dev/null @@ -1,156 +0,0 @@ -+++ -title = "Components" -type = "docs" -description = "The pieces that constitute Bottlerocket" -+++ - -The components of Bottlerocket differ substantially from most Linux distributions. By providing ready-to-run images, some software typically considered as workloads of an operating system are integral to Bottlerocket. - -{{< twocol - containerclass="td-max-width-on-larger-screens docs-figure" - rowclass="docs-figure" >}} - {{< twocol_inner >}}{{< components_diagram >}}{{}} - {{% twocol_inner colsplit="7" %}} This diagram represents the components of the `aws-k8s-*` variant. Subsequent sections will dissect and explain this variant. {{%/ twocol_inner %}} -{{}} - -### Foundation - -{{< twocol containerclass="td-max-width-on-larger-screens docs-figure" rowclass="docs-figure">}} - {{< twocol_inner >}} - {{< components_diagram - disable_kubelet=true - disable_containerd_left=true - disable_containerd_right=true - disable_pods=true - disable_host_containers=true - disable_systemd=true - >}} - {{}} - {{% twocol_inner colsplit="7" %}} -The Linux kernel provides the foundation of Bottlerocket. The kernel (major+minor) version may vary between variants, but does not change on update. - {{%/ twocol_inner %}} -{{}} - -### System Services - -{{< twocol containerclass="td-max-width-on-larger-screens docs-figure" rowclass="docs-figure">}} - {{< twocol_inner >}} - {{< components_diagram - disable_kubelet=true - disable_containerd_left=true - disable_containerd_right=true - disable_pods=true - disable_host_containers=true - disable_kernel=true - >}} - {{}} - {{% twocol_inner colsplit="7" %}} -systemd serves as the initialization and service management layer. systemd unifies a broad, modern, widely-used set of APIs that Bottlerocket can build atop in a variety of contexts. - {{%/ twocol_inner %}} -{{}} - -### Container and Orchestrator Support - -{{< twocol - containerclass="td-max-width-on-larger-screens docs-figure" - rowclass="docs-figure" >}} - {{< twocol_inner >}} - {{< components_diagram - disable_pods=true - disable_host_containers=true - disable_kernel=true - disable_systemd=true - >}} - {{}} - {{% twocol_inner colsplit="7" %}} -Bottlerocket runs two instances of the container runtime, containerd. Containers used for operational and administrative purposes have a devoted containerd instance, whilst orchestrator-managed workloads have a separate containerd instance. - -On Kubernetes variants, Bottlerocket runs Kubelet to communicate with the Kubernetes control plane and orchestrate container lifecycles. - {{%/ twocol_inner %}} -{{}} - -### Application Workloads - -{{< twocol - containerclass="td-max-width-on-larger-screens docs-figure" - rowclass="docs-figure" >}} - {{< twocol_inner >}} - {{< components_diagram - disable_host_containers=true - disable_kernel=true - disable_systemd=true - disable_containerd_left=true - disable_containerd_right=true - disable_kubelet=true - >}} - {{}} - {{% twocol_inner colsplit="7"%}} -Bottlerocket defers workload management to the orchestrator. While Bottlerocket is a distinctive operating system, the differences are mostly transparent to your application workloads. If your workload requires specific host-level interactions, accommodations go through the Bottlerocket Settings API in addition to typical patterns of mounted directories and container privileges. - {{%/ twocol_inner %}} -{{}} - -### Operational and Administrative Workloads - -{{< twocol - containerclass="td-max-width-on-larger-screens docs-figure" - rowclass="docs-figure" >}} - {{< twocol_inner >}} - {{< components_diagram - disable_kernel=true - disable_systemd=true - disable_containerd_left=true - disable_containerd_right=true - disable_kubelet=true - disable_pods=true - >}} - {{}} - {{% twocol_inner colsplit="7"%}} -“Host Containers” are containers specifically used to maintain, operate, or administer the node. Host containers provide a secondary method to manipulate and administer the operating system even if the orchestrator agent is non-responsive or exhausted of resources. - -There are two host containers that are published for use with Bottlerocket: the control container and the admin container. -The control container is on by default. -It is pre-configured to be able to use the Bottlerocket API and can be accessed by SSM. -The admin container is off by default and has elevated privileges for system exploration and debugging. -Furthermore, any container can be [run as a host container](https://github.com/bottlerocket-os/bottlerocket#custom-host-containers), and any number of host containers can run. - {{%/ twocol_inner %}} -{{}} - -## Differences between variants - -### ECS Variants - -{{< twocol - containerclass="td-max-width-on-larger-screens docs-figure" - rowclass="docs-figure" >}} - {{< twocol_inner >}} - {{< components_diagram - show_ecs="true" - kubelet_label="docker" - pods_label="Tasks" - >}} - {{}} - {{% twocol_inner colsplit="7"%}} - -Bottlerocket ECS variants function in roughly the same way but differ subtly in components. Instead of Kubelet, ECS variants use the ecs-agent and Docker daemon. The ecs-agent communicates with the ECS control plane but Docker interposes between the agent and the container runtime. - - {{%/ twocol_inner %}} -{{}} - -### On-premise Variants (Baremetal & VMware) - -{{< twocol - containerclass="td-max-width-on-larger-screens docs-figure" - rowclass="docs-figure" >}} - {{< twocol_inner >}} - {{< components_diagram - disable_control_container="true" - >}} - {{}} - {{% twocol_inner colsplit="7"%}} - -Variants designed to run on-premises have different access constraints. The control container with SSM is available, but disabled by default. As with the other variants, Bottlerocket does not start with an enabled admin container, however some solutions may enable it for an easier first-boot access path. - - {{%/ twocol_inner %}} -{{}} - -{{< on-github >}} diff --git a/content/en/os/1.20.x/concepts/host-containers/_index.markdown b/content/en/os/1.20.x/concepts/host-containers/_index.markdown deleted file mode 100644 index 75d1db21..00000000 --- a/content/en/os/1.20.x/concepts/host-containers/_index.markdown +++ /dev/null @@ -1,89 +0,0 @@ -+++ -title = "Host Containers" -type = "docs" -description = "Special purpose, non-orchestrated containers for node management and administration" -+++ - -Host containers are a special type of container you can use to manage and administer your Bottlerocket node. -These containers are non-orchestrated, which means Kubernetes or ECS are unaware of these containers and cannot directly manage their lifecycle. -Instead you manage the lifecycle of these containers by manipulating specific {{< ver-ref project="os" page="/api/settings/" >}}Bottlerocket settings{{< /ver-ref >}} with the {{< ver-ref project="os" page="/concepts/api-driven" >}}API{{< /ver-ref >}}. - -{{< twocol - containerclass="td-max-width-on-larger-screens docs-figure" - rowclass="docs-figure" >}} - {{< twocol_inner >}}{{< components_diagram hide_admin_and_control=true >}}{{}} - {{% twocol_inner colsplit="7" %}} This diagram represents the components of the `aws-k8s-*` variant. - Note the "Host Containers" in the upper left. - {{%/ twocol_inner %}} -{{}} - -## Built-in host containers - -Depending on the variant, Bottlerocket has two standard host containers: the {{< ver-ref project="os" page="/install/quickstart/aws/host-containers#interacting-with-a-bottlerocket-node-through-host-containers" >}}control container{{< /ver-ref >}} and the {{< ver-ref project="os" page="/install/quickstart/aws/host-containers#exploring-the-admin-container" >}}admin container{{< /ver-ref >}}. -The control container provides a pathway to connect ([via SSM](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html)) to and interact with the host as well as conveniently access the Bottlerocket API. -The control container also provides an entry point to the admin container. -The admin container allows you to more deeply interact with the host as it mounts the root filesystem and has elevated privileges. - -The control and admin containers are not actually special: both are just host containers with specific privileges. -Case in point, you can disable (and {{< ver-ref project="os" page="/login/regaining-access" >}}re-enable{{}}) these containers as-needed and you can even fully replace the functionality of both the host and admins containers with your own host containers. - -## Properties of host containers - -Host containers have a number of different properties from orchestrated containers. - -### Runtime - -Bottlerocket has two parallel instances of `containerd`: one for your orchestrated workloads and one for host containers. - -### API Access - -All host containers automatically mount the API socket (`/run/api.sock`) and the API Client (`/usr/local/bin/apiclient`). -This allows you to run API commands and manipulate Bottlerocket settings from within the host containers without explicitly mounting these resources. -As a consequence, any user that can access a host container can change configurations which could effect the efficiency or stability of the node. - -### Lifecycle & restarts - -Host containers start and stop based on the value of their {{< setting-reference setting="settings.host-containers..enabled" >}}enabled{{}} setting. -If a host container exits, Bottlerocket automatically restarts the container after 45 seconds. - -### Superpower - -Host containers can have high levels of privilege. -See {{< setting-reference setting="settings.host-containers..superpowered" >}}{{}} for more details. - -### Updates - -Host containers do not update automatically. -Updates only occur when you update the {{< setting-reference setting="settings.host-containers..source" >}}{{}} or when an {{< ver-ref project="os" page="/update/methods/in-place" >}}in-place update{{}} occurs. - -### User data - -Distinct, but inspired by instance user data, host containers pass arbitrary[^1] base64-encoded data from the API into a file[^2]. - -### Persistent storage - -All host containers have persistent storage that survive node reboots as well as container stop/start cycles[^2]. - -## Use Cases - -When considering if you should use a host container, evaluate the specific properties of host containers and if you need to manage the lifecycle with your orchestrator. -Generally, you should try to solve your problem with an orchestrated container and only turn to a host container for low-level use-cases. - -Examples: - -- The control container is a host container because it needs to be available early to give you access to the OS. -- The admin container is a host container because it needs high levels of privilege and you may need it to debug when orchestration isn't working - -## Also See - -- `{{< ver-ref project="os" page="/api/settings/host-containers/" >}}host-containers{{}}` settings reference -- `{{< ver-ref project="os" page="/api/settings/bootstrap-containers/" >}}boostrap-containers{{}}` setting reference -- {{< ver-ref project="os" page="/concepts/bootstrap-containers/" >}}Bootstrap Containers{{}} - -[^1]: The admin container has a special uses for user data. See the warning on {{< setting-reference setting="settings.host-containers..user-data" >}}{{}} -[^2]: Paths for persistent storage and user data (`` being the name of the host container): - - - `/.bottlerocket/host-containers/` and `/.bottlerocket/host-containers//user-data` - - `/.bottlerocket/host-containers/current` and `/.bottlerocket/host-containers/current/user-data` - -{{< on-github >}} diff --git a/content/en/os/1.20.x/concepts/restricted-filesystem/index.markdown b/content/en/os/1.20.x/concepts/restricted-filesystem/index.markdown deleted file mode 100644 index 7b653b02..00000000 --- a/content/en/os/1.20.x/concepts/restricted-filesystem/index.markdown +++ /dev/null @@ -1,58 +0,0 @@ -+++ -title = "Restricted Filesystem" -type = "docs" -description = "Protections to the host filesystem" -+++ - -Bottlerocket is a container host operating system. -Most containerized workloads need little, if any access to the underlying host filesystem. -This, paired with image-based updates, means that much of the filesystem can be immutable. -Still, there are some resources like logs, container images, and configuration files that do need to be mutable for a practically operable system. -Bottlerocket splits the difference by having some storage that is immutable and some that is mutable, using different protection mechanisms for each filesystem. -Additionally, some mutable storage in Bottlerocket only exists ephemerally and any changes will not survive a reboot. - -## Immutable Filesystem - -Bottlerocket’s root filesystem is a dm-verity device: all dm-verity devices are read-only. -In context of Bottlerocket, it means that modification of the root filesystem is not possible by userspace processes. - -### Block-level protection - -dm-verity also protects the root filesystem from unintended changes at the block level: it uses a hash tree to provide transparent integrity checking. -At a high level, dm-verity works like this: - -* A hash function calculates a cryptographic digest for each physical block, -* The same hash function calculates the combination of all the digests from the previous step, -* This repeats until a single digest remains (the “root block”). - -dm-verity saves the root block digest and compares it after every write with the new root block digest. - -{{% readfile "/includes/os/1.13.x/dm-verity-without-change.markdown" %}} - -If a physical block changes, this causes each subsequent layer to produce a different digest resulting in a different root block digest. - -{{% readfile "/includes/os/1.13.x/dm-verity-with-change.markdown" %}} - -The kernel will trigger a reboot if the root block digest changes. - -## Mutable Filesystem - -An immutable filesystem is not practical for many resources in Bottlerocket. -Files in the non-root filesystem have a variety of different accessibility requirements. -Bottlerocket uses SELinux policies to protect files in the non-root filesystem. -Unlike the immutable filesystem, SELinux allows for granular labels applied at a per-file basis, so protections vary based on the requirements of each resource. - -For example, Kubelet can write logs to `/var/log/containers` and the Bottlerocket API server can change `/etc/motd` because of specific SELinux labels. - -SELinux policies in Bottlerocket are set to enforcing, meaning they both log attempts and prevent changes to particular resources. -Also unlike the immutable filesystem, a sufficiently privileged user can alter the SELinux labels of a file or resource. - -## Ephemeral Storage - -Part of the mutable filesystem, `/etc` , does not persist through a reboot. -The use of ephemeral storage in this area provides two advantages: - -* it creates more reliable pathways for configuration changes (through the API and/or with special containers specifications like [CNI](https://github.com/containernetworking/cni) or [CSI](https://github.com/container-storage-interface/spec)), -* it makes it more difficult for attackers to make changes that persist. - -{{< on-github >}} diff --git a/content/en/os/1.20.x/concepts/shell-less-host/index.markdown b/content/en/os/1.20.x/concepts/shell-less-host/index.markdown deleted file mode 100644 index 01eddc41..00000000 --- a/content/en/os/1.20.x/concepts/shell-less-host/index.markdown +++ /dev/null @@ -1,41 +0,0 @@ -+++ -title = "Shell-less Host" -type = "docs" -description = "Using Linux without a shell" -+++ - -Bottlerocket images do not have an SSH server nor even a shell. -As it turns out, you don’t need one in the host operating system itself. -Bottlerocket does, however, give you out-of-band access that allows you to launch a shell from a container to explore, debug, manually update, and change settings on the host. - -## Host container out-of-band access - -Since the software doesn’t exist on the host to facilitate interactive shell sessions, it is provided through a container. -These containers are granted access to resources on the underlying host, have the required software for remote connections, and are run in the host containerd instance. - -### Control container - -The control container’s purpose is to provide a first-tier host access where you can make API calls and gain access to some host-level resources. -For `aws-k8s-*` and `aws-ecs-*` variants, the control container is on by default and remote connections are made through AWS SSM. - -The control container is also the path to enable or enter the admin container. - -### Admin container - -The admin container is designed to provide out-of-band access with elevated privileges. -On `aws-k8s-*` and `aws-ecs-*` variants, the admin container is not enabled by default but can be turned on or entered through the control container. -The best security practice is to disable the admin container and only enable it as-needed. - -The admin container has a mount to the host file system[^1], an unrestricted SELinux label as well as all of the capabilities of the control container. -Using the admin container should be rare: only used as-needed and by those required. - -## With `kubectl` on Kubernetes - -For variants designed to be used with Kubernetes, you can gain out-of-band access to a node by using `kubectl exec` and a pod spec with specific volume mounts and security contexts. -You can read more about this method in [Regaining Access to a Bottlerocket Node](../../login/regaining-access/). -This method is very similar to running the control container, but it runs in the orchestrated containerd instance instead of the host containerd instance. - -[^1]: The admin container mount for the host file system is located at `/.bottlerocket/rootfs/`. - Despite the use of `rootfs` in the path, this mount has both {{< ver-ref project="os" page="/concepts/restricted-filesystem#immutable-filesystem" >}}immutable{{< /ver-ref >}} and {{< ver-ref project="os" page="/concepts/restricted-filesystem#mutable-filesystem" >}}mutable{{< /ver-ref >}} directories. - -{{< on-github >}} diff --git a/content/en/os/1.20.x/concepts/updating-bottlerocket/index.markdown b/content/en/os/1.20.x/concepts/updating-bottlerocket/index.markdown deleted file mode 100644 index 1c1b36f1..00000000 --- a/content/en/os/1.20.x/concepts/updating-bottlerocket/index.markdown +++ /dev/null @@ -1,43 +0,0 @@ -+++ -title = "Updates" -type = "docs" -description = "Overview of different methods to update Bottlerocket" -+++ - -Bottlerocket is designed to be updated in an [image-based fashion](https://github.com/bottlerocket-os/bottlerocket#updates). -This means that updates are applied by downloading an image of the entire operating system to a different partition on disk, then switching to using that partition when the system is rebooted. -This is done instead of a series of individual package updates on the current operating system partition. -This is a departure from the traditional package-based Linux update model such as `apt` or `yum`, which are what you would find in Ubuntu or Amazon Linux. - -## Ways To Update - -The update method you choose depends on the [Bottlerocket variant](https://github.com/bottlerocket-os/bottlerocket#variants) you are using and your environment. - -The ways to update Bottlerocket can be classified into two main categories: _in-place updates_ and _node replacement_. -_In-place updates_ are updates that are applied to the same node (no infrastructure reprovisioning), while _node replacement_ is when you replace an existing node with a new node that is running the updated version of Bottlerocket. - -At its core, an _in-place update_ is a call to the Bottlerocket API server using `apiclient`. -The `apiclient` command can be run from the [control container](https://github.com/bottlerocket-os/bottlerocket#control-container). -There are also orchestrated systems that perform the `apiclient` calls for you: the [ECS updater](../../update/methods/in-place/#ecs) for ECS, [Brupop](../../update/methods/in-place/#brupop) for Kubernetes, and [SSM Command Documents](../../update/methods/in-place/#ssm) for both. - -The following table shows whether a given update method is an _in-place update_ or a _node replacement_. - -In-Place Updates | Node Replacement ---- | --- -[`apiclient` commands](../../update/methods/in-place/#apiclient-commands) | [EKS Console](../../update/methods/node-replacement/#eks-console) -[ECS updater](../../update/methods/in-place/#ecs) | [`eksctl`](../../update/methods/node-replacement/#eksctl) -[Brupop](../../update/methods/in-place/#brupop) | -[SSM command documents](../../update/methods/in-place/#ssm) | - -## Conclusion - -There are many ways to update Bottlerocket, including: - -- Running [`apiclient` commands](../../update/methods/in-place/#apiclient-commands) directly in the [control container](https://github.com/bottlerocket-os/bottlerocket#control-container) -- The [ECS updater](../../update/methods/in-place/#ecs) -- [Brupop](../../update/methods/in-place/#brupop), the [EKS Console](../../update/methods/node-replacement/#eks-console), and [`eksctl`](../../update/methods/node-replacement/#eksctl) on Kubernetes -- [Applying SSM Command Documents](../../update/methods/in-place/#ssm) to your nodes - -It is also possible to [lock your nodes to a specific release](../../update/locking-to-a-specific-release). - -{{< on-github >}} diff --git a/content/en/os/1.20.x/concepts/variants/index.markdown b/content/en/os/1.20.x/concepts/variants/index.markdown deleted file mode 100644 index 65f42768..00000000 --- a/content/en/os/1.20.x/concepts/variants/index.markdown +++ /dev/null @@ -1,173 +0,0 @@ -+++ -title="Variants" -type="docs" -description="Variants are the basis for environment-specific, ready-to-run images." -+++ - -General purpose distributions of Linux have "packages" that are delivered by a package manager. -This allows the distribution to ship a limited set of drivers, tools, and applications with the kernel; the user then adds additional packages that suits the workload after the operating system is installed. - -Bottlerocket is not a general purpose Linux distribution and intentionally doesn’t have a package manager. Instead Bottlerocket has *variants*. -Variants are pre-defined sets of drivers, tools, and applications that are tailored to a specific architecture, platform, and orchestrator (as well as a “flavor,” more on that later). -For example, there is a variant that consists of everything needed to run as a Kubernetes (orchestrator) node on an aarch64 (architecture) processor in AWS EC2 (platform). -Bottlerocket delivers the variant as a complete, ready-to-run image. - -Variants may be specific to particular versions of the orchestrator. -For example, the variant for Kubernetes 1.25 is distinct from the variant for Kubernetes 1.24. - -## Variants and images - -Variants are a construct to identify the constituent components that are used to build an image. -As a consequence, you do not directly install a variant on a machine or instance, you install an image that is a build of the components contained in the variant at a specific Bottlerocket version. - -## Variants and versions - -The version of Bottlerocket is independent of the variant: a variant will be available across many different Bottlerocket versions. -Keep in mind that Kubernetes variants are only compatible with specific versions of Kubernetes: the Kubernetes version number is distinct from the version of Bottlerocket. - -## Artifact file names - -The file name for any Bottlerocket image artifact begins with `bottlerocket` and is followed by a [kebab case](https://www.alexhyett.com/snake-case-vs-camel-case-vs-pascal-case-vs-kebab-case/#kebab-case-kebab-case) delimited list of components. -The components in the file name follow a specific order: - -```text -[platform]-[orchestrator]-[orchestrator version](optional:-[ flavour])-[Architecture]-[version]-[commit] -``` - -Example: `bottlerocket-aws-k8s-1.25-nvidia-aarch64-1.13.0...` - -|Platform|Orchestrator|Orchestrator Version|Flavor|Architecture|Bottlerocket version| -|---|---|---|---|---|---| -|`aws`|`k8s`|`1.25`|`nvidia`|`aarch64`|`1.13.0`| - -Example: `bottlerocket-vmware-k8s-1.24-x86_64-1.12...` - -|Platform|Orchestrator|Orchestrator Version|Flavor|Architecture|Bottlerocket version| -|---|---|---|---|---|---| -|`vmware`|`k8s`|`1.24`|*none*|`x86_64`|`1.12.0`| - -When referencing variants in writing, `bottlerocket-` and the commit are typically omitted for brevity. - -## Flavors - -Variants may also package in drivers for specific hardware called a “flavor.” Currently, the only flavor is 'nvidia', which adds support for Nvidia GPUs. - -## Variants, updating, & migrating - -You can update to a newer Bottlerocket version of the same variant (an ‘in-place update’). -However, you cannot update to a different variant: that is a migration (which involves replacing a node in the orchestrated cluster). - -A few examples: - -|Original|New|In-Place Update|Node Replacement / Migration|Explaination| -|---|---|---|---|---| -|aws-k8s-1.24-x86_64-**1.12.0**|aws-k8s-1.24-x86_64-**1.13.0**|✓|✓|This is moving between versions of the same variant, so this can be accomplished by an update| -|aws-k8s-**1.24**-x86_64-1.12.0|aws-k8s-**1.25**-x86_64-1.12.0|✗|✓|The orchestrator version is part of the variant, so this is a migration.| -|aws-k8s-**1.24**-x86_64-**1.12.0**|aws-k8s-**1.25**-x86_64-**1.13.0**|✗|✓|Both the Bottlerocket version and the variant are changing so this must be accomplished by a migration.| -|aws-k8s-1.24-x86_64-1.13.0|aws-k8s-1.24-**nvidia**-x86_64-1.13.0|✗|✓|The flavor is part of the variant, so this change must be accomplished by a migration| -|aws-**ecs-2**-x86_64-1.15.0|aws-**k8s-1.28**-x86_64-1.15.0|✗|✗|The orchestrator has changed. The cluster must be rebuilt.| - -If you are using a node replacement strategy, the distinction between migrating and updating is less important as any change is effectively a migration. - -## Software inventory and security advisories - -Since Bottlerocket doesn’t use a package manager, keeping track of the software delivered as part of a variant is a little different. -Additionally, the concept of a ‘package’ is only relevant as a part of the build process. -In the course of running Bottlerocket, you probably want to keep track of what specific software and versions you are using as well as understand how this software relates to known vulnerabilities. - -{{% alert title="Note" color="success" %}} -The best patching strategy for Bottlerocket is to always update to the most recent release. -Since packages are only used at build-time and the packages cannot mutate, the inventory will never change for a given version and variant. -Updating to the most recent version will patch all packages. -{{% /alert %}} - -Bottlerocket provides information to both understand the software included in a variant and how it connects to published security advisories. - -### Software Inventory - -The Bottlerocket build process generates an `applications.json` file at `/var/lib/bottlerocket/inventory/` on the host file system. This JSON file contains objects that represent a build-time package. The `applications.json` file structure is as follows: - -```json -{ - "Content": [ - { - "Name": , - "Publisher": "Bottlerocket", - "Version": , - "Release": , - "InstalledTime": , - "ApplicationType": "Unspecified", - "Architecture": , - "Url": , - "Summary": - ... - - GHSA-868r-x68r-5c5p - kernel CVE-2023-5345 - - - medium - A flaw was found in the SMB client component in the Linux kernel. In case of an error in smb3_fs_context_parse_param, ctx->password was freed, but the field was not set to NULL, potentially leading to a use-after-free vulnerability. This flaw allows a local user to crash or potentially escalate their privileges on the system. - - - - - - - Bottlerocket - - - - - - ... - -``` - -If you are building a script to determine if your Bottlerocket nodes need patching, evaluate the `.Content.Name`, `.Content.Version`, and `.Content.Architecture` from the object in `applications.json` and compare these values with the `./updates/update/pkglist/collection/package[@name]`, `./updates/update/pkglist/collection/package[@version]`, and `./updates/update/pkglist/collection/package[@arch]` in `updateinfo.xml`. - -Human beings should use the GitHub security advisories compared to the {{< ver-ref project="os" page="/version-information/packages-by-variant" >}} Packages by Variant list{{}} (or use other tools). - -{{< on-github >}} diff --git a/content/en/os/1.20.x/install/_index.markdown b/content/en/os/1.20.x/install/_index.markdown deleted file mode 100644 index f8a5e838..00000000 --- a/content/en/os/1.20.x/install/_index.markdown +++ /dev/null @@ -1,12 +0,0 @@ -+++ -title="Install" -type="docs" -description="How to install Bottlerocket" -weight=50 -body_class="suppress-additional-index" -+++ -{{< hide-and-re-highlight-menu link_url="/en/os/%s/install/quickstart/" >}} - -### AWS Quickstart Install Guides - -{{< redirect-list actual="/os/%s/install/quickstart/aws/" >}} diff --git a/content/en/os/1.20.x/install/quickstart/_index.markdown b/content/en/os/1.20.x/install/quickstart/_index.markdown deleted file mode 100644 index 9761fe49..00000000 --- a/content/en/os/1.20.x/install/quickstart/_index.markdown +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title="Quickstarts" -type="docs" -description="Getting started quickly with Bottlerocket" -+++ diff --git a/content/en/os/1.20.x/install/quickstart/aws/_index.markdown b/content/en/os/1.20.x/install/quickstart/aws/_index.markdown deleted file mode 100644 index a9c568ab..00000000 --- a/content/en/os/1.20.x/install/quickstart/aws/_index.markdown +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title="AWS" -type="docs" -description="Quickstarts for AWS" -+++ diff --git a/content/en/os/1.20.x/install/quickstart/aws/ecs/index.markdown b/content/en/os/1.20.x/install/quickstart/aws/ecs/index.markdown deleted file mode 100644 index c39447fd..00000000 --- a/content/en/os/1.20.x/install/quickstart/aws/ecs/index.markdown +++ /dev/null @@ -1,175 +0,0 @@ -+++ -title="Amazon ECS" -type="docs" -description="How to get started with Bottlerocket on Amazon ECS" -+++ - -{{< hide-and-re-highlight-menu link_url="/en/os/%s/install/quickstart/" depad="true" >}} -{{< hide-and-re-highlight-menu link_url="/en/os/%s/install/quickstart/aws/" depad="true" >}} -{{< breadcrumb-remove link_url="/en/os/%s/install/quickstart/">}} -{{< breadcrumb-remove link_url="/en/os/%s/install/quickstart/aws/">}} - -When registering EC2 instances as capacity for an ECS cluster, you can use Bottlerocket as the operating system for these instances. -If you want to understand the AWS console workflow, start with the [video _Amazon ECS: Using Bottlerocket_.](#aws-console-quickstart) -Otherwise, read the [AWS CLI Quickstart](#aws-cli-quickstart) or the pattern [Amazon ECS cluster on Bottlerocket](https://containersonaws.com/pattern/ecs-ec2-bottlerocket-cluster) which outlines how to start Bottlerocket with [SAM CLI](https://docs.aws.amazon.com/serverless-application-model/). - -## AWS CLI Quickstart - -This quickstart uses a number of techniques/tools like `jq` and environment variables to make the quickstart experience as simple and straightforward as possible. -These tools are not absolutely necessary to use Bottlerocket on ECS. - -### Prerequisites - -There are some preliminary tasks to complete in order to use ECS. -You need to both set up your AWS account for use with ECS and have an IAM role for ECS configured: - -- Complete the steps in [Setting up with Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/get-set-up-for-amazon-ecs.html). -- Ensure that the AWS user you use for this quickstart has the has the [AmazonECS_FullAccess](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonECS_FullAccess) policy attached (scope down as needed for your production requirements). -- Ensure that you have an [IAM role created](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/instance_IAM_role.html#instance-iam-role-create) named `ecsInstanceRole` and configured according to the AWS ECS Developer Guide. - - Be sure to follow _both_ the [AWS Console steps](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/instance_IAM_role.html#instance-iam-role-create) as well as the AWS CLI steps (section labeled "To create the ecsInstanceRole role (AWS CLI)" - the AWS CLI steps cover an important aspect: adding an Instance Profile to the role) - -In this quickstart, the following software is used to interact with AWS and parse the responses received: - -- [`aws-cli`](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html#getting-started-install-instructions): Used to interact with AWS services. -- [`jq`](https://stedolan.github.io/jq/download/): Used for parsing response data from `aws-cli`. - -### Create a Cluster - -First, set some environment variables to use throughout this quickstart: - -```bash -export AWS_REGION=us-west-2 -export ECS_CLUSTER_NAME=bottlerocket-quickstart-ecs -export ECS_INSTANCE_ROLE_NAME=ecsInstanceRole -``` - -Then, create an ECS cluster with the AWS CLI as follows: - -```bash -aws ecs --region $AWS_REGION create-cluster --cluster-name $ECS_CLUSTER_NAME -``` - -You should see output confirming your new cluster similar to the following: - -```json -{ - "cluster": { - "clusterArn": "arn:aws:ecs:us-west-2:xxxxxxxxxxxx:cluster/bottlerocket-quickstart-ecs", - "clusterName": "bottlerocket-quickstart-ecs", - "status": "ACTIVE", - "registeredContainerInstancesCount": 0, - "runningTasksCount": 0, - "pendingTasksCount": 0, - "activeServicesCount": 0, - "statistics": [], - "tags": [], - "settings": [ - { - "name": "containerInsights", - "value": "disabled" - } - ], - "capacityProviders": [], - "defaultCapacityProviderStrategy": [] - } -} -``` - -### Launching Instances Into Your Cluster - -After your ECS cluster is created, you can add instances to it. - -#### Enabling SSM - -Enable SSM on the `ecsInstanceRole` IAM role by attaching the `AmazonSSMManagedInstanceCore` managed policy to the role: - -```bash -aws iam attach-role-policy \ - --role-name $ECS_INSTANCE_ROLE_NAME \ - --policy-arn arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore -``` - -#### Connecting To Your Cluster - -In order to communicate with ECS, configure each node with the name of the cluster. -The following command will create a file named `quickstart-ecs-user-data.toml` with the appropriate contents: - -```bash -cat << EOF > quickstart-ecs-user-data.toml -[settings.ecs] -cluster = "$ECS_CLUSTER_NAME" -EOF -``` - -#### Launch - -Now you can add Bottlerocket instances to your ECS cluster! -There are some values that you need to set in your environment first such as the Subnet ID, Bottlerocket AMI ID, and ECS Instance Profile Name. -You can get the information you need using the AWS CLI: - -```bash -export ECS_VPC_ID=$(aws ec2 describe-vpcs \ - --region $AWS_REGION \ - --filters=Name=isDefault,Values=true \ - | jq --raw-output '.Vpcs[].VpcId') -export ECS_SUBNET_ID=$(aws ec2 describe-subnets \ - --region $AWS_REGION \ - --filter=Name=vpc-id,Values=$ECS_VPC_ID \ - | jq --raw-output '.Subnets[0] | {id: .SubnetId, public: .MapPublicIpOnLaunch, az: .AvailabilityZone} | .id') -export BOTTLEROCKET_AMI_ID="resolve:ssm:/aws/service/bottlerocket/aws-ecs-2/x86_64/latest/image_id" -export ECS_INSTANCE_PROFILE_NAME=$(aws iam list-instance-profiles-for-role \ - --role-name $ECS_INSTANCE_ROLE_NAME \ - --query "InstanceProfiles[*].InstanceProfileName" \ - --output text) -``` - -Then launch an instance into your cluster: - -```bash -aws ec2 run-instances \ - --subnet-id $ECS_SUBNET_ID \ - --image-id $BOTTLEROCKET_AMI_ID \ - --instance-type m5.large \ - --region $AWS_REGION \ - --tag-specifications "ResourceType=instance,Tags=[{Key=ecs-cluster,Value=$ECS_CLUSTER_NAME}]" \ - --user-data file://quickstart-ecs-user-data.toml \ - --iam-instance-profile Name=$ECS_INSTANCE_PROFILE_NAME -``` - -Once the instance launches, you should be able to run tasks on your Bottlerocket instance using either the ECS API or web console. - -### Confirming Your Instances Are Running - -To confirm that nodes are running in your cluster, you can run the following command to list your ECS cluster nodes: - -```bash -aws ec2 describe-instances \ - --no-cli-pager \ - --filters "Name=tag:ecs-cluster,Values=$ECS_CLUSTER_NAME" \ - --query "Reservations[*].Instances[*].{PrivateDNS:PrivateDnsName,InstanceID:InstanceId,Cluster:Tags[?Key=='ecs-cluster']|[0].Value,State:State.Name}" \ - --output=table -``` - -You should see output that contains a column similar to the following: - -```bash - +----------------------+ -... | InstanceID | ... - +----------------------+ - | i-04c2b2087... | - +----------------------+ -``` - -### Interacting With Your Cluster - -To confirm in depth that an instance is running Bottlerocket, save the instance ID and follow the steps in the [Host Containers Quickstart](../host-containers). - -Congratulations! -You now have a Bottlerocket cluster running on ECS. - -{{< on-github >}} - -## AWS Console Quickstart - -If you want to start an ECS cluster using EC2 nodes running Bottlerocket, the follow video provides a high level walk through. -{{< youtube c4hhZZwSrP0 >}} diff --git a/content/en/os/1.20.x/install/quickstart/aws/host-containers/index.markdown b/content/en/os/1.20.x/install/quickstart/aws/host-containers/index.markdown deleted file mode 100644 index c7d44cab..00000000 --- a/content/en/os/1.20.x/install/quickstart/aws/host-containers/index.markdown +++ /dev/null @@ -1,107 +0,0 @@ -+++ -title="Host Containers" -type="docs" -description="How to interact with a Bottlerocket node through Host Containers" -+++ - -{{< hide-and-re-highlight-menu link_url="/en/os/%s/install/quickstart/" depad="true" >}} -{{< hide-and-re-highlight-menu link_url="/en/os/%s/install/quickstart/aws/" depad="true" >}} -{{< breadcrumb-remove link_url="/en/os/%s/install/quickstart/">}} -{{< breadcrumb-remove link_url="/en/os/%s/install/quickstart/aws/">}} - -## Prerequisites - -- An AWS EC2 Instance ID (begins with `i-`) of a Bottlerocket instance -- [`aws-cli`](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html#getting-started-install-instructions): Used to interact with AWS services. -- [SSM Session Manager Plugin for AWS CLI](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html): Used to enter SSM sessions on Bottlerocket nodes through the AWS CLI. - -## Interacting With a Bottlerocket Node Through Host Containers - -Run the following command to enter an SSM session on the node: - -```bash -aws ssm start-session --target INSTANCE_ID -``` - -Replace `INSTANCE_ID` with the instance ID you picked earlier. - -Entering the SSM session will place you in the control container. - -You should see output similar to the following: - -```bash - Welcome to Bottlerocket's control container! - ╱╲ - ╱┄┄╲ This container gives you access to the Bottlerocket API, - │▗▖│ which in turn lets you inspect and configure the system. - ╱│ │╲ You'll probably want to use the `apiclient` tool for that; - │╰╮╭╯│ for example, to inspect the system: - ╹╹ - apiclient -u /settings - -You can run `apiclient --help` for usage details, and check the main -Bottlerocket documentation for descriptions of all settings and examples of -changing them. - -If you need to debug the system further, you can use the admin container. The -admin container has more debugging tools installed and allows you to get root -access to the host. The easiest way to get started is like this, which enables -and enters the admin container using apiclient: - - enter-admin-container - -You can also access the admin container through SSH if you have network access. -Just enable the container like this, then SSH to the host: - - enable-admin-container - -You can disable the admin container like this: - - disable-admin-container - -[ssm-user@control]$ -``` - -Use `apiclient` to get the Bottlerocket host Message Of The Day (MOTD): - -```bash -apiclient get settings.motd -``` - -You should see output similar to the following: - -```bash -{ - "settings": { - "motd": "Hello from eksctl!" - } -} -``` - -### Exploring the Admin Container - -From the control container, you can enter the admin container: - -```bash -enter-admin-container -``` - -Then, check the `/etc/os-release` file contents from the _Bottlerocket host filesystem_, mounted at `/.bottlerocket/rootfs/`. -You should see something similar to the following: - -{{< tabpane text=true right=true >}} - {{< tab header="Orchestrator:" disabled=true />}} - {{< tab header="EKS" >}} -[root@admin]# cat /.bottlerocket/rootfs/etc/os-release -{{< os-release-example orchestrator="k8s" build_id="6ef1139f" >}} - {{< /tab >}} - {{< tab header="ECS" >}} -[root@admin]# cat /.bottlerocket/rootfs/etc/os-release -{{< os-release-example orchestrator="ecs" build_id="32e9bb46" >}} - {{< /tab >}} -{{< /tabpane >}} - -Congratulations! -You have successfully navigated a Bottlerocket system through the control and admin containers. - -{{< on-github >}} diff --git a/content/en/os/1.20.x/install/quickstart/aws/k8s/index.markdown b/content/en/os/1.20.x/install/quickstart/aws/k8s/index.markdown deleted file mode 100644 index 4b7b3cd5..00000000 --- a/content/en/os/1.20.x/install/quickstart/aws/k8s/index.markdown +++ /dev/null @@ -1,126 +0,0 @@ -+++ -title="Amazon EKS" -type="docs" -description="How to get started with Bottlerocket on Amazon EKS" -+++ - -{{< hide-and-re-highlight-menu link_url="/en/os/%s/install/quickstart/" depad="true" >}} -{{< hide-and-re-highlight-menu link_url="/en/os/%s/install/quickstart/aws/" depad="true" >}} -{{< breadcrumb-remove link_url="/en/os/%s/install/quickstart/">}} -{{< breadcrumb-remove link_url="/en/os/%s/install/quickstart/aws/">}} - -## Prerequisites - -In order to set up a Bottlerocket cluster on EKS, you will need the latest versions of the following tools installed: - -- [`eksctl`](https://eksctl.io/): Used to create EKS clusters. -- [`kubectl`](https://kubernetes.io/docs/tasks/tools/#kubectl): Used to interact with resources within a Kubernetes cluster. -- [`aws-cli`](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html#getting-started-install-instructions): Used to interact with AWS services. -- [SSM Session Manager Plugin for AWS CLI](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html): Used to enter SSM sessions on Bottlerocket nodes through the AWS CLI. - -## Cluster Setup - -There are two main steps to setting up an EKS cluster: creating the configuration file and applying the configuration file using `eksctl`. - -### Cluster Configuration File - -`eksctl` can use a YAML configuration file to create an EKS cluster. -First, set some environment variables: - -- `AWS_REGION`: AWS region to create the cluster in. -- `K8S_VERSION`: Kubernetes version to use for the cluster. -- `EKS_CLUSTER_NAME`: Name of the EKS cluster to create. - -```bash -export AWS_REGION="us-west-2" -export K8S_VERSION="1.25" -export EKS_CLUSTER_NAME="bottlerocket-quickstart-eks" -``` - -The following command (on Linux and macOS) will create an example configuration file named `bottlerocket-quickstart-eks.yaml` that specifies a cluster with 3 Bottlerocket nodes: - -```bash -cat << EOF > bottlerocket-quickstart-eks.yaml ---- -apiVersion: eksctl.io/v1alpha5 -kind: ClusterConfig - -metadata: - name: $EKS_CLUSTER_NAME - region: $AWS_REGION - version: "$K8S_VERSION" - -nodeGroups: - - name: ng-bottlerocket-quickstart - instanceType: m5.large - desiredCapacity: 3 - amiFamily: Bottlerocket - iam: - attachPolicyARNs: - - arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy - - arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy - - arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly - - arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore - bottlerocket: - settings: - motd: "Hello from eksctl!" -EOF -``` - -On Windows, you will need to create this file in a text editor and replace `$EKS_CLUSTER_NAME`, `$AWS_REGION`, and `$K8S_VERSION` with your desired values. -The contents to copy are _between_ the `cat << EOF > bottlerocket-quickstart-eks.yaml` and `EOF` lines. - -### Cluster Creation - -Start the cluster creation process using the configuration file you created in the last step (`bottlerocket-quickstart-eks.yaml` in this example): - -```bash -eksctl create cluster --config-file ./bottlerocket-quickstart-eks.yaml -``` - -Get a cup of coffee ☕️, it will take a while to provision your control plane and cluster nodes. - -## Confirm Your Cluster is Running - -To confirm that Bottlerocket nodes are running in your cluster, you can run the following command to list your cluster nodes and what operating system they are running: - -```bash -kubectl get nodes -o=wide -``` - -You should see output that contains a column similar to the following: - -```bash -... OS-IMAGE ... - Bottlerocket OS 1.12.0 (aws-k8s-1.25) - Bottlerocket OS 1.12.0 (aws-k8s-1.25) - Bottlerocket OS 1.12.0 (aws-k8s-1.25) -``` - -Next, get an instance ID from any one of the nodes in the cluster (remember that `$EKS_CLUSTER_NAME` is set to the name of your EKS cluster): - -```bash -aws ec2 describe-instances --no-cli-pager --filters "Name=tag:aws:eks:cluster-name,Values=$EKS_CLUSTER_NAME" --query "Reservations[*].Instances[*].{PrivateDNS:PrivateDnsName,InstanceID:InstanceId,Cluster:Tags[?Key=='aws:eks:cluster-name']|[0].Value,State:State.Name}" --output=table -``` - -You should see output that contains a column similar to the following: - -```bash - +----------------------+ -... | InstanceID | ... - +----------------------+ - | i-04c2b2087... | - | i-0e61e2b0a... | - | i-022aca952... | - +----------------------+ -``` - -## Interacting With Your Cluster - -To confirm in depth that an instance is running Bottlerocket, pick an instance ID and follow the steps in the [Host Containers Quickstart](../host-containers). -Any of the instance IDs listed for the `bottlerocket-quickstart-eks` cluster should work. - -Congratulations! -You now have a Bottlerocket cluster running on EKS. - -{{< on-github >}} diff --git a/content/en/os/1.20.x/login/_index.markdown b/content/en/os/1.20.x/login/_index.markdown deleted file mode 100644 index 06f50145..00000000 --- a/content/en/os/1.20.x/login/_index.markdown +++ /dev/null @@ -1,6 +0,0 @@ -+++ -title="Login" -type="docs" -description="Accessing Bottlerocket" -weight="50" -+++ diff --git a/content/en/os/1.20.x/login/regaining-access/index.markdown b/content/en/os/1.20.x/login/regaining-access/index.markdown deleted file mode 100644 index 4aa16d7e..00000000 --- a/content/en/os/1.20.x/login/regaining-access/index.markdown +++ /dev/null @@ -1,246 +0,0 @@ -+++ -title = "Regaining Access to a Bottlerocket Node" -description = "How to Regain Access to a Bottlerocket Node After Disabling the Control and Admin Containers" -type = "docs" -+++ - -## Introduction - -The standard way to access a shell on a Bottlerocket node is to use either the admin container or the control container. -In some cases where both the admin and control containers are disabled, it is still possible to regain access to a Bottlerocket node. - -## Solution Description - -In general, the solution is to mount the [API client](https://github.com/bottlerocket-os/bottlerocket/blob/develop/sources/api/apiclient/README.md) and API socket into a container on the Bottlerocket node and use the API client to re-enable the admin container, control container, or both. - -{{% alert title="Warning" color="warning" %}} -The solutions on this page provide a minimal overview. -It involves mounting critical resources into containers with elevated privileges. -Use carefully, only run as long as necessary, and clean up afterwards. -{{% /alert %}} - -## Steps to Regain Access on Kubernetes - -1. Create a pod that mounts the API client and API socket with the correct SELinux labels. - - Some notes on the Pod spec below: - - - The API socket has a specific SELinux label applied to it (`system_u:object_r:api_socket_t:s0`) that restricts access to the `api_socket_t` type and `s0` sensitivity level. - To learn more about the SELinux labels in Bottlerocket, see the [Security Guidance documentation](https://github.com/bottlerocket-os/bottlerocket/blob/develop/SECURITY_GUIDANCE.md#limit-use-of-privileged-selinux-labels). - - In order to access the API socket, the Pod must have compatible SELinux options applied to it. - - Use the `control_t` type (has access to `api_socket_t`) and `s0` sensitivity level to allow the container to access the API socket. - - The entrypoint for the container is `sleep infinity` so that the container stays running for you to `exec` into. - -```yaml -apiVersion: v1 -kind: Pod -metadata: - name: regain-access -spec: - containers: - - name: regain-access - image: fedora - command: ["sleep", "infinity"] - volumeMounts: - - mountPath: /usr/bin/apiclient - name: apiclient - readOnly: true - - mountPath: /run/api.sock - name: apiserver-socket - securityContext: - seLinuxOptions: - level: s0 - role: system_r - type: control_t - user: system_u - volumes: - - name: apiclient - hostPath: - path: /usr/bin/apiclient - type: File - - name: apiserver-socket - hostPath: - path: /run/api.sock - type: Socket -``` - -2. `exec` into the container. - -```bash -kubectl exec -it regain-access -- bash -``` - -3. Use `apiclient` to enable the [admin container](https://github.com/bottlerocket-os/bottlerocket-admin-container#authenticating-with-the-admin-container), [control container](https://github.com/bottlerocket-os/bottlerocket-control-container#connecting-to-aws-systems-manager-ssm), or both. - -Admin container: - -```bash -apiclient set host-containers.admin.enabled=true -``` - -Control container: - -```bash -apiclient set host-containers.control.enabled=true -``` - -4. Exit the shell and delete the `regain-access` pod. -The Bottlerocket node should be accessible again. - -## Steps to Regain Access on ECS - -You can regain access to a Bottlerocket node using ECS Exec starting in v1.14.0. - -This solution requires the use of [ECS Exec](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html) and [associated IAM permissions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html#ecs-exec-enabling-and-using). -The instructions for proper IAM permissions to enable ECS Exec can be found in the AWS blog post [Using Amazon ECS Exec to access your containers on AWS Fargate and Amazon EC2](https://aws.amazon.com/blogs/containers/new-using-amazon-ecs-exec-access-your-containers-fargate-ec2/). - -1. First, you will need to setup a few environment variables. `CONTAINER_NAME` and `SERVICE_NAME` are not specifically relevant, but they need to be consistent across multiple files and commands. - -```shell -export CONTAINER_NAME="regain-access" -export CLUSTER= -export SERVICE_NAME="regain-access" -export TASK_ROLE_ARN= -``` - -2. Now you will create a task definition that will mount the Bottlerocket `apiclient` and the related socket path as well as giving it the proper SELinux labels. -Piping `cat` to a file to generate the task definition[^1] JSON will allow for interpolating the variables into the final file. - -```shell -cat << EOF > task-def.json -{ - "family": "regain-access", - "containerDefinitions": [ - { - "name": "${CONTAINER_NAME}", - "image": "fedora", - "cpu": 0, - "memoryReservation": 300, - "portMappings": [], - "essential": true, - "command": ["sleep", "infinity"], - "environment": [], - "mountPoints": [ - { - "sourceVolume": "apiclient", - "containerPath": "/usr/bin/apiclient", - "readOnly": true - }, - { - "sourceVolume": "apisocket", - "containerPath": "/run/api.sock" - } - ], - "volumesFrom": [], - "dockerSecurityOptions": [ - "label:user:system_u", - "label:role:system_r", - "label:type:control_t", - "label:level:s0" - ] - } - ], - "taskRoleArn": "${TASK_ROLE_ARN}", - "volumes": [ - { - "name": "apiclient", - "host": { - "sourcePath": "/usr/bin/apiclient" - } - }, - { - "name": "apisocket", - "host": { - "sourcePath": "/run/api.sock" - } - } - ], - "requiresCompatibilities": [ - "EC2" - ], - "cpu": "1024", - "memory": "1024" -} -EOF -``` - -3. The following will take the file from the previous step and use the AWS CLI to register the task definition. -Running the AWS CLI command without any options, will produce a large amount of JSON that is hard to sift through. Instead, use the `query` parameter to get only what you need, format the output text and skip the pager. -Then take the results and put it into another environment variable. Any errors will be visible as a response in standard output. - -```shell -export REGAIN_ACCESS_ARN=$(aws ecs register-task-definition \ - --cli-input-json file://task-def.json \ - --query "taskDefinition.taskDefinitionArn" \ - --output text --no-cli-pager) -``` - -4. As a confidence check, `echo` the environment variable to make sure it matches what you’d expect from an ARN. - -```shell -echo $REGAIN_ACCESS_ARN -``` - -5. With the task definition ARN stored in the environment variable, you can create the service. You may want to limit the deployment of this service to specific instance(s). - -```shell -aws ecs create-service --cluster "${CLUSTER}" \ - --task-definition "${REGAIN_ACCESS_ARN}" \ - --service-name "${SERVICE_NAME}" \ - --desired-count 1 \ - --launch-type EC2 \ - --enable-execute-command \ - --no-cli-pager -``` - -6. The subsequent step will need the task ARN which is not included in the response from the `create-service` call; the command below will grab all the task ARNs from the service name and cluster you specified earlier (which should only be one), filter the response with the `query` parameter, and use an environment variable to store only what you need. -Wait a few seconds after the previous step and run the following command: - -```shell -export TASK_ARN=$(aws ecs list-tasks --cluster ${CLUSTER} \ - --service-name ${SERVICE_NAME} \ - --no-cli-pager \ - --output text \ - --query "taskArns[0]") -``` - -7. Again, do a confidence check to ensure the environment variable looks as you’d expect. - -```shell -echo $TASK_ARN -``` - -8. Finally, you can use `execute-command` to open an interactive shell with the container. - -```shell -aws ecs execute-command --cluster "${CLUSTER}" \ - --task "${TASK_ARN}" \ - --container "${CONTAINER_NAME}" \ - --interactive \ - --command /bin/bash" -``` - -9. You should see a message like this followed by an interactive shell - -```shell -Starting session with SessionId: ecs-execute-command- -``` - -10. In the shell use `apiclient` to enable the [admin container](https://github.com/bottlerocket-os/bottlerocket-admin-container#authenticating-with-the-admin-container), [control container](https://github.com/bottlerocket-os/bottlerocket-control-container#connecting-to-aws-systems-manager-ssm), or both. - - -```bash -# Admin container -apiclient set host-containers.admin.enabled=true -``` - -```bash -# Control container: -apiclient set host-containers.control.enabled=true -``` - -11. Now you should be able to access your admin or control container using SSM. You no longer need anything created in this how-to, feel free to delete the service and IAM policies. - -[^1]: This task definition uses `fedora` as an image, but almost any base image with a shell will also work. - -{{< on-github >}} diff --git a/content/en/os/1.20.x/update/_index.markdown b/content/en/os/1.20.x/update/_index.markdown deleted file mode 100644 index c5adc61e..00000000 --- a/content/en/os/1.20.x/update/_index.markdown +++ /dev/null @@ -1,6 +0,0 @@ -+++ -title="Updating" -type="docs" -description="Details on moving to newer versions of Bottlerocket" -weight="50" -+++ diff --git a/content/en/os/1.20.x/update/guidelines/index.markdown b/content/en/os/1.20.x/update/guidelines/index.markdown deleted file mode 100644 index 94fec08b..00000000 --- a/content/en/os/1.20.x/update/guidelines/index.markdown +++ /dev/null @@ -1,64 +0,0 @@ -+++ -title="Guidelines for Updating In-Place" -type="docs" -description="Moving to newer versions without replacing nodes" -+++ - -## Introduction - -There are some guidelines and considerations to keep in mind when updating your Bottlerocket nodes _in-place_. -Some movements between versions are updates, some are not updates, and there are some caveats you may need to consider based on the history of the project. - -## Update Paths - -Certain movements between releases of Bottlerocket are accessible through an _in-place_ update path. - -### Between Minor or Patch Versions of the Same Variant - -With the exception of moving between major versions and a [caveat discussed below](#too-many-releases-between-versions), it is possible to update _in-place_ from one released version of a variant to another released version of the same variant. -In particular, the following update paths work: - -- Minor version to minor version (e.g. `1.10.0` to `1.11.0`) -- Patch version to patch version (e.g. `1.9.1` to `1.9.2`) -- Minor version to patch version (e.g. `1.10.0` to `1.10.1`) -- Patch version to minor version (e.g. `1.10.1` to `1.11.0`) - -Furthermore, skipping minor or patch versions of the same variant is allowed. -Bottlerocket runs all update [settings migrations](https://github.com/bottlerocket-os/bottlerocket/tree/develop/sources/api/migration#data-store-migration) between the initial and target versions in sequence if a version is skipped. -So, for the `1.10.1` to `1.12.0` example, the [settings migrations](https://github.com/bottlerocket-os/bottlerocket/tree/develop/sources/api/migration#data-store-migration) from `1.11.0` and `1.11.1` are run as part of the update to `1.12.0`. - -## Caveats and Limits - -You may need to consider the following caveats when updating your Bottlerocket nodes. - -### Too Many Releases Between Versions - -There is a [known issue](https://github.com/bottlerocket-os/bottlerocket/issues/2589) where Bottlerocket boots into a "no space left on device" error when updating between versions that are "too far apart" (too many intermediate releases -- minor or patch -- between the initial and target). -For example, updating between versions `1.7.2` and `1.11.0` fails in this way. - -The workaround is to update Bottlerocket only a couple releases at a time from your starting point, using version locking, until you reach the desired state. - -This caveat is discussed in detail in [issue 2589](https://github.com/bottlerocket-os/bottlerocket/issues/2589). - -Specifically, there is [an important note regarding updating to the latest versions of Bottlerocket](https://github.com/bottlerocket-os/bottlerocket/issues/2589#issuecomment-1344941291). - -### Updates vs. Other Movements - -There are some movements between releases of Bottlerocket that are not accessible through an update path. -Such movements are described below. - -#### Between Major Versions - -It is not possible to update _in-place_ from one major version to another. -Major versions are considered breaking changes. - -In order to move between major versions, node replacement with the desired release is necessary. - -#### Across Different Variants - -It is not possible to update _in-place_ from one variant to another. -For example, moving from an `aws-k8s-1.22` variant to an `aws-k8s-1.23` variant is not an update path. - -In order to move between Kubernetes versions (or any variant), you must replace the nodes in your cluster with new nodes running the desired variant. - -{{< on-github >}} diff --git a/content/en/os/1.20.x/update/locking-to-a-specific-release/index.markdown b/content/en/os/1.20.x/update/locking-to-a-specific-release/index.markdown deleted file mode 100644 index 5c5c0b60..00000000 --- a/content/en/os/1.20.x/update/locking-to-a-specific-release/index.markdown +++ /dev/null @@ -1,75 +0,0 @@ -+++ -title = "Locking to a Specific Release" -type = "docs" -description = "How to lock a Bottlerocket node to a specific release version" -+++ - -Locking your Bottlerocket nodes to a specific release is possible using the Bottlerocket Settings API. - -_A quick explanation of the `apiclient` command used below:_ - -Two settings are set: `updates.version-lock` and `updates.ignore-waves`. - -- `updates.version-lock`: which version of Bottlerocket to lock to when `apiclient` checks for updates. -- `updates.ignore-waves`: ignore the [update waves behavior](https://github.com/bottlerocket-os/bottlerocket/tree/develop/sources/updater/waves) and update the Bottlerocket node immediately. - -To create an SSM Command Document, follow the steps in the [AWS Systems Manager User Guide: "Create an SSM document (console)"](https://docs.aws.amazon.com/systems-manager/latest/userguide/create-ssm-console.html). -Remember to select "YAML" in the "Content" box, since the [SSM Command Document below](#ssm-command-document-lock-to-a-specific-release) is formatted in YAML. - -## SSM Command Document: Lock to a Specific Release - -The following SSM Command Document is referred to in this documentation as `version-lock-bottlerocket-node`: - -```yaml ---- -schemaVersion: "2.2" -description: "Lock a Bottlerocket host to a specific version via the Bottlerocket Settings API" -parameters: - TargetVersion: - type: "String" - description: "The target version of Bottlerocket to lock to (e.g. 1.12.0)" -mainSteps: - - name: "setTargetVersion" - action: "aws:runShellScript" - inputs: - timeoutSeconds: '20' - runCommand: - - "apiclient set updates.version-lock=\"{{ TargetVersion }}\" updates.ignore-waves=true" -``` - -You should now have the above SSM Command Document available in the SSM "Owned by me" tab in the "Documents" section of the SSM Console. - -## Applying a Version Lock - -In order to apply a version lock using SSM, follow these steps: - -1. First, tell your Bottlerocket nodes that you want them to lock to a specific version. - - Apply the [`version-lock-bottlerocket-node` SSM Command Document previously described](#ssm-command-document-lock-to-a-specific-release). - - In the "Command parameters" section of the Run Command page, remember to specify the full version of Bottlerocket that you want to lock to (e.g. `1.12.0`, not `1.12`). - - If you are using EKS, select all nodes in a given EKS cluster by specifying an instance tag in the "Target selection" section of the page. - Specify `eks:cluster-name` as the tag key, with the tag value set to your cluster name. -2. Next, tell your Bottlerocket nodes to prepare to boot into that specific version. - - Apply the [`update-bottlerocket-node` SSM Command Document](../methods/in-place/#ssm-command-document-check-for-and-apply-updates-to-a-bottlerocket-node), described in the [in-place update documentation](../methods/in-place/). -3. Finally, reboot your Bottlerocket nodes into the version you locked to. - - Apply the [`reboot-bottlerocket-node` SSM Command Document](../methods/in-place/#ssm-command-document-reboot-a-bottlerocket-node), described in the [in-place update documentation](../methods/in-place/). - -## Removing a Version Lock - -In order to remove a version lock using SSM, [create](https://docs.aws.amazon.com/systems-manager/latest/userguide/create-ssm-console.html) and [apply](https://docs.aws.amazon.com/systems-manager/latest/userguide/running-commands-console.html) the following SSM Command Document to the Bottlerocket nodes you want to remove a Version Lock from (the SSM Command Document can be named `version-unlock-bottlerocket-node` for example): - -### SSM Command Document: Remove a Version Lock - -```yaml ---- -schemaVersion: "2.2" -description: "Remove a Version Lock from a Bottlerocket host via the Bottlerocket Settings API" -mainSteps: - - name: "unsetTargetVersion" - action: "aws:runShellScript" - inputs: - timeoutSeconds: '20' - runCommand: - - "apiclient set updates.version-lock=\"latest\" updates.ignore-waves=false" -``` - -{{< on-github >}} diff --git a/content/en/os/1.20.x/update/methods/_index.markdown b/content/en/os/1.20.x/update/methods/_index.markdown deleted file mode 100644 index d8648712..00000000 --- a/content/en/os/1.20.x/update/methods/_index.markdown +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title="Update Methods" -type="docs" -description="Methods to update Bottlerocket clusters" -+++ diff --git a/content/en/os/1.20.x/update/methods/in-place/index.markdown b/content/en/os/1.20.x/update/methods/in-place/index.markdown deleted file mode 100644 index 4ac6c434..00000000 --- a/content/en/os/1.20.x/update/methods/in-place/index.markdown +++ /dev/null @@ -1,165 +0,0 @@ -+++ -title = "In-Place Updates" -type = "docs" -description = "How to update a Bottlerocket node in-place" -+++ - -Bottlerocket clusters can be updated in-place, meaning that the existing Bottlerocket nodes will download updated software to use, without re-provisioning the nodes. -There are different ways to update in-place depending on your environment. - -## `apiclient` Commands - -At its core, updating Bottlerocket consists of three steps: checking for an update, applying an update, and rebooting into the new Bottlerocket version. - -These steps have specific `apiclient` commands associated with them: - -### Check for Update - -In order to check for an update using `apiclient`, issue the following command in the control container: - -```bash -apiclient update check -``` - -### Apply Update - -If an update is found while checking for an update, apply the update using the following command: - -```bash -apiclient update apply -``` - -That command downloads the updated Bottlerocket image, apply it to a separate partition on disk, and prepare the system to use the new version of Bottlerocket. -In particular, [the partition that was just updated with the new Bottlerocket image is marked as the "active" next boot partition](https://github.com/bottlerocket-os/bottlerocket#updates-1). - -It is also possible to combine the Check and Apply steps into a single command: - -```bash -apiclient update apply --check -``` - -That command first checks for an update, and then applies the update if one is found. - -### Reboot Into the New Version - -After applying the update, reboot the system in order to begin using the new version of Bottlerocket. -That can be done with the following command: - -```bash -apiclient reboot -``` - -## ECS - -For the `aws-ecs-*` variants of Bottlerocket, use the [ECS updater](https://github.com/bottlerocket-os/bottlerocket-ecs-updater#how-it-works). -See the [ECS updater installation documentation](https://github.com/bottlerocket-os/bottlerocket-ecs-updater#installation) for more information on how to install and use the ECS updater. - -By default, the ECS updater checks for updates every 12 hours. - -In order to install the ECS updater, you need a few different pieces of information: the subnet information for your cluster, the name of the CloudWatch Logs log group where you want logs stored, and the name of the ECS cluster you want the ECS updater to keep updated. -Further information on how to get that information can be found in the [Getting Started section of the ECS updater documentation](https://github.com/bottlerocket-os/bottlerocket-ecs-updater#getting-started). -After you've gathered those three values, you are ready to install the ECS updater. - -Detailed installation steps, including commands to run, are provided in the [Install section of the ECS updater documentation](https://github.com/bottlerocket-os/bottlerocket-ecs-updater#install). - -## Kubernetes - -For the `aws-k8s-*` variants of Bottlerocket, there are a handful of possible ways to update Bottlerocket: Brupop, the EKS Console, `eksctl`, and SSM Command Documents. -The following sections discuss each of these methods. - -### Brupop - -The recommended method to update your Bottlerocket nodes on Kubernetes is with Brupop. - -#### Brupop: Install via Released YAML - -Brupop installation via the released YAML file is covered in the [Brupop documentation](https://github.com/bottlerocket-os/bottlerocket-update-operator#installation). - -## SSM - -If your Bottlerocket nodes are registered with AWS Systems Manager (SSM), it may be convenient for you to use SSM Command Documents to update your Bottlerocket nodes. - -**Important:** when using the SSM instructions below to update Bottlerocket nodes, workloads will _not_ be drained from the node before rebooting the node, causing interruptions to the workloads (unlike when using Brupop, for example). - -### SSM Command Document Method - -This method performs the same action as the [`apiclient` commands](#apiclient-commands) method above, but uses SSM Command Documents rather than interactively running the `apiclient` commands from the [control container](https://github.com/bottlerocket-os/bottlerocket#control-container). -SSM Command Documents allow you to specify shell commands to run on target nodes. -Use the `aws:runShellScript` SSM Action inside SSM Command Documents to run the `apiclient update` command on your Bottlerocket nodes. -See the [`apiclient` documentation](https://github.com/bottlerocket-os/bottlerocket/blob/develop/sources/api/apiclient/README.md#update-mode) to learn more about `apiclient update`. - -The following three subsections cover how to create two SSM Command Documents and apply them to your Bottlerocket nodes: one Command Document updates and prepares a Bottlerocket node to use the latest available version of the Bottlerocket image, and the other Command Document reboots a Bottlerocket node in order to use that latest acquired Bottlerocket image. - -Both the update and reboot steps can be combined into a single SSM Command Document, however keeping the two steps separate allows you to apply updates and reboot your Bottlerocket nodes in separate patterns, if needed. -For example, you may want to apply updates to your Bottlerocket nodes all at once, but reboot them in groups. - -#### 1. Create the SSM Command Document for Updating Nodes - -To create an SSM Command Document, follow the steps in the [AWS Systems Manager User Guide: "Create an SSM document (console)"](https://docs.aws.amazon.com/systems-manager/latest/userguide/create-ssm-console.html). -Remember to select "YAML" in the "Content" box, since the [SSM Command Document below](#ssm-command-document-check-for-and-apply-updates-to-a-bottlerocket-node) is formatted in YAML. - -A quick overview of what `apiclient update apply --check` does: - -1. First, the `--check` flag executes: `apiclient` checks for the available Bottlerocket OS images and selects the latest one. -2. Next, the `apply` subcommand executes: `apiclient` downloads the latest Bottlerocket OS image and prepares the Bottlerocket node to use it. - -##### SSM Command Document: Check For and Apply Updates to a Bottlerocket Node - -The following SSM Command Document is referred to in this documentation as `update-bottlerocket-node`: - -```yaml ---- -schemaVersion: "2.2" -description: "Update a Bottlerocket host via the Bottlerocket Update API" -mainSteps: - - name: "updateBottlerocket" - action: "aws:runShellScript" - inputs: - timeoutSeconds: '120' - runCommand: - - "apiclient update apply --check" -``` - -Congratulations! -You now have an SSM Command Document that updates a Bottlerocket node to the latest version of Bottlerocket. - -#### 2. Create the SSM Command Document for Rebooting Nodes - -To create an SSM Command Document, follow the steps in the [AWS Systems Manager User Guide: "Create an SSM document (console)"](https://docs.aws.amazon.com/systems-manager/latest/userguide/create-ssm-console.html). -Remember to select "YAML" in the "Content" box, since the [SSM Command Document below](#ssm-command-document-reboot-a-bottlerocket-node) is formatted in YAML. - -##### SSM Command Document: Reboot a Bottlerocket Node - -The following SSM Command Document is referred to in this documentation as `reboot-bottlerocket-node`: - -```yaml ---- -schemaVersion: "2.2" -description: "Reboot a Bottlerocket host via the Bottlerocket API" -mainSteps: - - name: "updateBottlerocket" - action: "aws:runShellScript" - inputs: - timeoutSeconds: '120' - runCommand: - - "apiclient reboot" -``` - -Congratulations! -You now have an SSM Command Document that reboots a Bottlerocket node. - -#### 3. Apply the SSM Command Documents to Your Bottlerocket Nodes - -After creating the two SSM Command Documents above ([`update-bottlerocket-node`](#ssm-command-document-check-for-and-apply-updates-to-a-bottlerocket-node) and [`reboot-bottlerocket-node`](#ssm-command-document-reboot-a-bottlerocket-node)), apply them to your Bottlerocket nodes. - -To apply SSM Command Documents to your Bottlerocket nodes, follow the steps in the [AWS Systems Manager User Guide: "To send a command using Run Command"](https://docs.aws.amazon.com/systems-manager/latest/userguide/running-commands-console.html). - -If you are using EKS, select all nodes in a given EKS cluster by specifying an instance tag in the "Target selection" section of the page. -Specify `eks:cluster-name` as the tag key, with the tag value set to your cluster name. - -After running the SSM Command Document, you are taken to the SSM Command status page. -If you would like to see the output of the SSM Command Document that you just ran, click on an Instance ID in the "Targets and outputs" section of the page and see any output or errors. - -Once the [first SSM Command Document (`update-bottlerocket-node`)](#ssm-command-document-check-for-and-apply-updates-to-a-bottlerocket-node) has finished running, apply the [second SSM Command Document (`reboot-bottlerocket-node`)](#ssm-command-document-reboot-a-bottlerocket-node) to your Bottlerocket nodes using the same process as above. - -{{< on-github >}} diff --git a/content/en/os/1.20.x/update/methods/node-replacement/index.markdown b/content/en/os/1.20.x/update/methods/node-replacement/index.markdown deleted file mode 100644 index 47211817..00000000 --- a/content/en/os/1.20.x/update/methods/node-replacement/index.markdown +++ /dev/null @@ -1,24 +0,0 @@ -+++ -title = "Node Replacement" -type = "docs" -description = "How to update a Bottlerocket cluster by replacing nodes" -+++ - -Bottlerocket clusters can be updated via node replacement, meaning that the existing Bottlerocket nodes will be replaced by new Bottlerocket nodes that run updated software. -This requires nodes to be reprovisioned. - -## EKS - -When running the `aws-k8s-*` variants of Bottlerocket on EKS, use either the EKS Console or [`eksctl`](https://eksctl.io/) to update your Bottlerocket nodes using the _node replacement_ method. -This means that you are replacing your existing Bottlerocket nodes with new Bottlerocket nodes, rather than updating your existing Bottlerocket nodes in-place. - -### EKS Console - -In order to update your Bottlerocket nodes in an EKS cluster using the EKS Console, follow the [steps found under the "AWS Management Console" tab, in the EKS User Guide](https://docs.aws.amazon.com/eks/latest/userguide/update-managed-node-group.html#mng-update). - -### `eksctl` - -Using [`eksctl`](https://eksctl.io/) is another option to update your Bottlerocket nodes. -Specific commands can be found in the [EKS User Guide: "Update a node group version", on the `eksctl` tab](https://docs.aws.amazon.com/eks/latest/userguide/update-managed-node-group.html#mng-update). - -{{< on-github >}} diff --git a/content/en/os/1.20.x/version-information/_index.markdown b/content/en/os/1.20.x/version-information/_index.markdown deleted file mode 100644 index 66ad9de4..00000000 --- a/content/en/os/1.20.x/version-information/_index.markdown +++ /dev/null @@ -1,6 +0,0 @@ -+++ -title = "Version Information" -description = "Information specific to this version of Bottlerocket" -type = "docs" -weight="50" -+++ \ No newline at end of file diff --git a/content/en/os/1.20.x/version-information/gpu-drivers/1.20.0/index.markdown b/content/en/os/1.20.x/version-information/gpu-drivers/1.20.0/index.markdown deleted file mode 100644 index 24d94fc0..00000000 --- a/content/en/os/1.20.x/version-information/gpu-drivers/1.20.0/index.markdown +++ /dev/null @@ -1,7 +0,0 @@ -+++ -title = "1.20.0" -description = "Drivers included in each GPU-enabled variant" -type = "docs" -+++ - -{{< nvidia-versions >}} diff --git a/content/en/os/1.20.x/version-information/gpu-drivers/1.20.1/index.markdown b/content/en/os/1.20.x/version-information/gpu-drivers/1.20.1/index.markdown deleted file mode 100644 index d38660cf..00000000 --- a/content/en/os/1.20.x/version-information/gpu-drivers/1.20.1/index.markdown +++ /dev/null @@ -1,7 +0,0 @@ -+++ -title = "1.20.1" -description = "Drivers included in each GPU-enabled variant" -type = "docs" -+++ - -{{< nvidia-versions >}} diff --git a/content/en/os/1.20.x/version-information/gpu-drivers/1.20.2/index.markdown b/content/en/os/1.20.x/version-information/gpu-drivers/1.20.2/index.markdown deleted file mode 100644 index 7d699de2..00000000 --- a/content/en/os/1.20.x/version-information/gpu-drivers/1.20.2/index.markdown +++ /dev/null @@ -1,7 +0,0 @@ -+++ -title = "1.20.2" -description = "Drivers included in each GPU-enabled variant" -type = "docs" -+++ - -{{< nvidia-versions >}} diff --git a/content/en/os/1.20.x/version-information/gpu-drivers/1.20.3/index.markdown b/content/en/os/1.20.x/version-information/gpu-drivers/1.20.3/index.markdown deleted file mode 100644 index 0cf3d598..00000000 --- a/content/en/os/1.20.x/version-information/gpu-drivers/1.20.3/index.markdown +++ /dev/null @@ -1,7 +0,0 @@ -+++ -title = "1.20.3" -description = "Drivers included in each GPU-enabled variant" -type = "docs" -+++ - -{{< nvidia-versions >}} diff --git a/content/en/os/1.20.x/version-information/gpu-drivers/_index.markdown b/content/en/os/1.20.x/version-information/gpu-drivers/_index.markdown deleted file mode 100644 index 9a3a5bce..00000000 --- a/content/en/os/1.20.x/version-information/gpu-drivers/_index.markdown +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title = "GPU Driver Versions" -description = "Versions of GPU drivers included in each patch release of Bottlerocket" -type = "docs" -+++ \ No newline at end of file diff --git a/content/en/os/1.20.x/version-information/packages-by-variant/index.markdown b/content/en/os/1.20.x/version-information/packages-by-variant/index.markdown deleted file mode 100644 index f883e4f1..00000000 --- a/content/en/os/1.20.x/version-information/packages-by-variant/index.markdown +++ /dev/null @@ -1,10 +0,0 @@ -+++ -title = "Packages by Variant" -description = "Packages contained in each variant" -type = "docs" -+++ -Legend: - -⬤ Has package, ◯ Does __not__ have package - -{{< packages-by-variant >}} diff --git a/content/en/os/1.20.x/version-information/packages/1.20.0/index.markdown b/content/en/os/1.20.x/version-information/packages/1.20.0/index.markdown deleted file mode 100644 index 45275b3b..00000000 --- a/content/en/os/1.20.x/version-information/packages/1.20.0/index.markdown +++ /dev/null @@ -1,468 +0,0 @@ ---- -title: "1.20.0" -type: "docs" -description: "Package Versions in Bottlerocket Release 1.20.0" -packages: - - package: acpid - version: 2.0.34 - patches: - - "0001-Remove-shell-dependency-by-only-shutting-down.patch" - - package: amazon-ssm-agent - version: 3.3.418.0 - - package: aws-iam-authenticator - version: 0.6.14 - - package: aws-signing-helper - version: 1.1.1 - - package: bash - version: 5.2.21 - patches: - - "bash-5.0-patch-1.patch" - - "bash-4.4-no-loadable-builtins.patch" - - "bash-5.0-patch-2.patch" - - package: binutils - version: 2.38 - - package: ca-certificates - version: 2024.03.11 - - package: chrony - version: 4.5 - - package: cni - version: 1.1.2 - - package: cni-plugins - version: 1.4.0 - - package: conntrack-tools - version: 1.4.8 - patches: - - "0001-disable-RPC-helper.patch" - - package: containerd - version: 1.6.31 - - package: coreutils - version: 9.5 - - package: dbus-broker - version: 35 - patches: - - "0001-c-utf8-disable-strict-aliasing-optimizations.patch" - - package: docker-cli - version: 25.0.2 - patches: - - "0001-non-tcp-host-header.patch" - - package: docker-engine - version: 25.0.2 - patches: - - "0001-Change-default-capabilities-using-daemon-config.patch" - - package: docker-init - version: 19.03.15 - - package: e2fsprogs - version: 1.47.0 - - package: early-boot-config - version: 0.1 - - package: ecr-credential-provider - version: 1.25.3 - - package: ecr-credential-provider-1.27 - version: 1.27.1 - - package: ecr-credential-provider-1.29 - version: 1.29.0 - - package: ecr-credential-provider-1.30 - version: 1.30.0 - - package: ecs-agent - version: 1.82.3 - patches: - - "0005-bottlerocket-change-execcmd-directories-for-Bottlero.patch" - - "1001-bottlerocket-default-filesystem-locations.patch" - - "0006-containermetadata-don-t-use-dataDirOnHost-for-metada.patch" - - "0001-bottlerocket-default-filesystem-locations.patch" - - "0002-bottlerocket-remove-unsupported-capabilities.patch" - - "0004-bottlerocket-fix-procfs-path-on-host.patch" - - "0003-bottlerocket-bind-introspection-to-localhost.patch" - - package: ecs-gpu-init - version: 0.0 - - package: ethtool - version: 6.7 - - package: filesystem - version: 1.0 - - package: findutils - version: 4.9.0 - - package: glibc - version: 2.38 - patches: - - "0047-sparc-Fix-broken-memset-for-sparc32-BZ-31068.patch" - - "0059-AArch64-Cleanup-emag-memset.patch" - - "0016-elf-Remove-unused-l_text_end-field-from-struct-link_.patch" - - "0011-sysdeps-tst-bz21269-fix-Wreturn-type.patch" - - "0018-NEWS-Add-the-2.38.1-bug-list.patch" - - "0027-tunables-Terminate-if-end-of-input-is-reached-CVE-20.patch" - - "0008-malloc-Remove-bin-scanning-from-memalign-bug-30723.patch" - - "0066-iconv-ISO-2022-CN-EXT-fix-out-of-bound-writes-when-w.patch" - - "0057-AArch64-Add-support-for-MOPS-memcpy-memmove-memset.patch" - - "0068-login-Check-default-sizes-of-structs-utmp-utmpx-last.patch" - - "0007-malloc-Enable-merging-of-remainders-in-memalign-bug-.patch" - - "0042-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch" - - "0024-Fix-leak-in-getaddrinfo-introduced-by-the-fix-for-CV.patch" - - "9001-move-ldconfig-cache-to-ephemeral-storage.patch" - - "0055-LoongArch-Correct-__ieee754-_-_scalb-__ieee754-_-_sc.patch" - - "0017-elf-Move-l_init_called_next-to-old-place-of-l_text_e.patch" - - "0021-iconv-restore-verbosity-with-unrecognized-encoding-n.patch" - - "0032-elf-Fix-wrong-break-removal-from-8ee878592c.patch" - - "0058-AArch64-Cleanup-ifuncs.patch" - - "0043-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch" - - "0023-manual-jobs.texi-Add-missing-item-EPERM-for-getpgid.patch" - - "0020-getaddrinfo-Fix-use-after-free-in-getcanonname-CVE-2.patch" - - "0030-Revert-elf-Move-l_init_called_next-to-old-place-of-l.patch" - - "0060-AArch64-Add-memset_zva64.patch" - - "0046-S390-Fix-building-with-disable-mutli-arch-BZ-31196.patch" - - "0005-x86_64-Fix-build-with-disable-multiarch-BZ-30721.patch" - - "0013-libio-Fix-oversized-__io_vtables.patch" - - "0038-NEWS-Mention-bug-fixes-for-29039-30694-30709-30721.patch" - - "HACK-only-build-and-install-localedef.patch" - - "0054-linux-Use-rseq-area-unconditionally-in-sched_getcpu-.patch" - - "0036-x86-64-Fix-the-dtv-field-load-for-x32-BZ-31184.patch" - - "0052-malloc-Use-__get_nprocs-on-arena_get2-BZ-30945.patch" - - "0015-elf-Always-call-destructors-in-reverse-constructor-o.patch" - - "0028-Revert-elf-Remove-unused-l_text_end-field-from-struc.patch" - - "0025-Document-CVE-2023-4806-and-CVE-2023-5156-in-NEWS.patch" - - "0063-aarch64-fix-check-for-SVE-support-in-assembler.patch" - - "0064-AArch64-Check-kernel-version-for-SVE-ifuncs.patch" - - "0029-Revert-elf-Always-call-destructors-in-reverse-constr.patch" - - "0065-powerpc-Fix-ld.so-address-determination-for-PCREL-mo.patch" - - "0009-sysdeps-tst-bz21269-fix-test-parameter.patch" - - "0051-arm-Remove-wrong-ldr-from-_dl_start_user-BZ-31339.patch" - - "glibc-cs-path.patch" - - "0034-elf-Fix-TLS-modid-reuse-generation-assignment-BZ-290.patch" - - "0039-NEWS-Mention-bug-fixes-for-30745-30843.patch" - - "0067-sparc-Remove-64-bit-check-on-sparc32-wordsize-BZ-275.patch" - - "0045-x86_64-Optimize-ffsll-function-code-size.patch" - - "0031-sysdeps-sem_open-Clear-O_CREAT-when-semaphore-file-i.patch" - - "0004-x86-Fix-incorrect-scope-of-setting-shared_per_thread.patch" - - "0053-S390-Do-not-clobber-r7-in-clone-BZ-31402.patch" - - "0041-libio-Check-remaining-buffer-size-in-_IO_wdo_write-b.patch" - - "0019-CVE-2023-4527-Stack-read-overflow-with-large-TCP-res.patch" - - "0014-elf-Do-not-run-constructors-for-proxy-objects.patch" - - "0048-sparc64-Remove-unwind-information-from-signal-return.patch" - - "0070-nptl-Fix-tst-cancel30-on-kernels-without-ppoll_time6.patch" - - "0033-LoongArch-Delete-excessively-allocated-memory.patch" - - "0050-sparc-Remove-unwind-information-from-signal-return-s.patch" - - "0049-sparc-Fix-sparc64-memmove-length-comparison-BZ-31266.patch" - - "0044-syslog-Fix-integer-overflow-in-__vsyslog_internal-CV.patch" - - "0061-AArch64-Remove-Falkor-memcpy.patch" - - "0035-elf-Add-TLS-modid-reuse-test-for-bug-29039.patch" - - "0062-aarch64-correct-CFI-in-rawmemchr-bug-31113.patch" - - "0012-io-Fix-record-locking-contants-for-powerpc64-with-__.patch" - - "0003-nscd-Do-not-rebuild-getaddrinfo-bug-30709.patch" - - "0010-sysdeps-tst-bz21269-handle-ENOSYS-skip-appropriately.patch" - - "0069-login-structs-utmp-utmpx-lastlog-_TIME_BITS-independ.patch" - - "0022-string-Fix-tester-build-with-fortify-enable-with-gcc.patch" - - "0037-x86-64-Fix-the-tcb-field-load-for-x32-BZ-31185.patch" - - "0040-getaddrinfo-translate-ENOMEM-to-EAI_MEMORY-bug-31163.patch" - - "0056-Add-HWCAP2_MOPS-from-Linux-6.5-to-AArch64-bits-hwcap.patch" - - "0002-x86-Fix-for-cache-computation-on-AMD-legacy-cpus.patch" - - "0026-Propagate-GLIBC_TUNABLES-in-setxid-binaries.patch" - - "0001-stdlib-Improve-tst-realpath-compatibility-with-sourc.patch" - - "0006-i686-Fix-build-with-disable-multiarch.patch" - - package: grep - version: 3.9 - - package: grub - version: 2.06 - patches: - - "0024-gptprio_test-check-GPT-is-repaired-when-appropriate.patch" - - "0027-gpt-add-helper-for-picking-a-valid-header.patch" - - "0008-gpt-add-a-new-generic-GUID-type.patch" - - "0037-gpt-read-entries-table-at-the-same-time-as-the-heade.patch" - - "0001-setup-Add-root-device-argument-to-grub-setup.patch" - - "0023-gptrepair_test-fix-typo-in-cleanup-trap.patch" - - "0010-gpt-split-out-checksum-recomputation.patch" - - "0048-add-flag-to-only-search-root-dev.patch" - - "0005-gpt-consolidate-crc32-computation-code.patch" - - "0035-gpt-always-revalidate-when-recomputing-checksums.patch" - - "0012-gpt-switch-partition-names-to-a-16-bit-type.patch" - - "0004-gpt-record-size-of-of-the-entries-table.patch" - - "0014-gpt-add-search-by-partition-label-and-uuid-commands.patch" - - "0017-gpt-add-search-by-disk-uuid-command.patch" - - "0007-gpt-add-write-function-and-gptrepair-command.patch" - - "0009-gpt-new-gptprio.next-command-for-selecting-priority-.patch" - - "0021-gpt-refuse-to-write-to-sector-0.patch" - - "0013-tests-add-some-partitions-to-the-gpt-unit-test-data.patch" - - "0016-gpt-minor-cleanup.patch" - - "0011-gpt-move-gpt-guid-printing-function-to-common-librar.patch" - - "0046-Revert-sb-Add-fallback-to-EFI-LoadImage-if-shim_lock.patch" - - "0015-gpt-clean-up-little-endian-crc32-computation.patch" - - "0036-gpt-include-backup-in-sync-check-in-revalidation.patch" - - "0040-gpt-write-backup-GPT-first-skip-if-inaccessible.patch" - - "0019-gpt-add-verbose-debug-logging.patch" - - "0018-gpt-do-not-use-disk-sizes-GRUB-will-reject-as-invali.patch" - - "0041-gptprio-Use-Bottlerocket-boot-partition-type-GUID.patch" - - "0022-gpt-properly-detect-and-repair-invalid-tables.patch" - - "0032-gpt-check-header-and-entries-status-bits-together.patch" - - "0006-gpt-add-new-repair-function-to-sync-up-primary-and-b.patch" - - "0039-gpt-rename-and-update-documentation-for-grub_gpt_upd.patch" - - "0044-efi-return-virtual-size-of-section-found-by-grub_efi.patch" - - "0020-gpt-improve-validation-of-GPT-headers.patch" - - "0026-gpt-prefer-disk-size-from-header-over-firmware.patch" - - "0043-util-mkimage-avoid-adding-section-table-entry-outsid.patch" - - "0047-Revert-UBUNTU-Move-verifiers-after-decompressors.patch" - - "0045-mkimage-pgp-move-single-public-key-into-its-own-sect.patch" - - "0031-gpt-do-not-use-an-enum-for-status-bit-values.patch" - - "0033-gpt-be-more-careful-about-relocating-backup-header.patch" - - "0028-gptrepair-fix-status-checking.patch" - - "0042-util-mkimage-Bump-EFI-PE-header-size-to-accommodate-.patch" - - "0029-gpt-use-inline-functions-for-checking-status-bits.patch" - - "0025-gpt-fix-partition-table-indexing-and-validation.patch" - - "0003-gpt-rename-misnamed-header-location-fields.patch" - - "0002-gpt-start-new-GPT-module.patch" - - "0038-gpt-report-all-revalidation-errors.patch" - - "0030-gpt-allow-repair-function-to-noop.patch" - - "0034-gpt-selectively-update-fields-during-repair.patch" - - package: host-ctr - version: 0.0 - - package: iproute - version: 6.4.0 - patches: - - "0001-skip-libelf-check.patch" - - package: iptables - version: 1.8.9 - patches: - - "1001-extensions-NAT-Fix-for-Werror-format-security.patch" - - "1002-ip6tables-Fix-checking-existence-of-rule.patch" - - package: iputils - version: 20240117 - - package: kernel-5.10 - version: 5.10.215 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "5001-Revert-netfilter-nf_tables-drop-map-element-referenc.patch" - - "1003-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "2000-kbuild-move-module-strip-compression-code-into-scrip.patch" - - "1002-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - "2001-kbuild-add-support-for-zstd-compressed-modules.patch" - - package: kernel-5.15 - version: 5.15.156 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "1002-Revert-kbuild-hide-tools-build-targets-from-external.patch" - - "1004-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "1003-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - package: kernel-6.1 - version: 6.1.87 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "1002-Revert-kbuild-hide-tools-build-targets-from-external.patch" - - "1004-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "1003-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - "1005-Revert-Revert-drm-fb_helper-improve-CONFIG_FB-depend.patch" - - package: kexec-tools - version: 2.0.28 - - package: keyutils - version: 1.6.1 - - package: kmod - version: 31 - - package: kubernetes-1.23 - version: 1.23.17 - - package: kubernetes-1.24 - version: 1.24.17 - - package: kubernetes-1.25 - version: 1.25.16 - - package: kubernetes-1.26 - version: 1.26.14 - - package: kubernetes-1.27 - version: 1.27.11 - - package: kubernetes-1.28 - version: 1.28.7 - - package: kubernetes-1.29 - version: 1.29.1 - - package: kubernetes-1.30 - version: 1.30.0 - - package: libacl - version: 2.3.2 - - package: libattr - version: 2.5.2 - - package: libaudit - version: 3.1.4 - - package: libcap - version: 2.69 - patches: - - "9001-dont-test-during-install.patch" - - package: libdbus - version: 1.15.6 - - package: libelf - version: 0.191 - - package: libexpat - version: 2.6.2 - - package: libffi - version: 3.4.6 - - package: libgcc - version: 0.0 - - package: libglib - version: 2.78.4 - - package: libinih - version: 58 - - package: libiw - version: 29 - patches: - - "wireless-tools-29-makefile.patch" - - package: libkcapi - version: 1.5.0 - - package: libmnl - version: 1.0.5 - - package: libncurses - version: 6.4 - patches: - - "ncurses-config.patch" - - "ncurses-libs.patch" - - "ncurses-urxvt.patch" - - "ncurses-kbs.patch" - - package: libnetfilter_conntrack - version: 1.0.9 - - package: libnetfilter_cthelper - version: 1.0.1 - - package: libnetfilter_cttimeout - version: 1.0.1 - - package: libnetfilter_queue - version: 1.0.5 - - package: libnfnetlink - version: 1.0.2 - - package: libnftnl - version: 1.2.6 - - package: libnl - version: 3.9.0 - - package: libnvidia-container - version: 1.13.5 - patches: - - "0004-Use-NVIDIA_PATH-to-look-up-binaries.patch" - - "0002-use-prefix-from-environment.patch" - - "0001-use-shared-libtirpc.patch" - - "0003-keep-debug-symbols.patch" - - "0005-makefile-avoid-ldconfig-when-cross-compiling.patch" - - package: libpcre - version: 10.43 - - package: libseccomp - version: 2.5.5 - - package: libselinux - version: 3.6 - - package: libsemanage - version: 3.6 - patches: - - "0001-remove-bzip2-dependency.patch" - - package: libsepol - version: 3.6 - patches: - - "0001-libsepol-cil-Check-common-perms-when-verifiying-all.patch" - - package: libstd-rust - version: 0.0 - - package: libtirpc - version: 1.3.4 - - package: liburcu - version: 0.14.0 - - package: libxcrypt - version: 4.4.36 - - package: libz - version: 1.3.1 - - package: libzstd - version: 1.5.6 - - package: linux-firmware - version: 20230625 - patches: - - "0005-linux-firmware-usb-remove-firmware-for-USB-Serial-PC.patch" - - "0001-linux-firmware-snd-remove-firmware-for-snd-audio-dev.patch" - - "0007-linux-firmware-Remove-firmware-for-Accelarator-devic.patch" - - "0002-linux-firmware-video-Remove-firmware-for-video-broad.patch" - - "0006-linux-firmware-ethernet-Remove-firmware-for-ethernet.patch" - - "0004-linux-firmware-scsi-Remove-firmware-for-SCSI-devices.patch" - - "0010-linux-firmware-amd-ucode-Remove-amd-microcode.patch" - - "0009-linux-firmware-various-Remove-firmware-for-various-d.patch" - - "0008-linux-firmware-gpu-Remove-firmware-for-GPU-devices.patch" - - "0003-linux-firmware-bt-wifi-Remove-firmware-for-Bluetooth.patch" - - package: login - version: 0.0.1 - - package: makedumpfile - version: 1.7.5 - patches: - - "0000-fix-strip-invocation-for-TARGET-env-variable.patch" - - "0001-do-not-overlink-with-bzip2.patch" - - package: microcode - version: 0.0 - - package: netdog - version: 0.1.1 - - package: nvidia-container-toolkit - version: 1.13.5 - - package: nvidia-k8s-device-plugin - version: 0.14.4 - - package: oci-add-hooks - version: 1.0.0 - - package: open-vm-tools - version: 12.3.5 - patches: - - "0002-dont-force-cppflags.patch" - - "0003-Update-shutdown-code-to-work-for-Bottlerocket.patch" - - "0001-no_cflags_werror.patch" - - package: os - version: 0.0 - - package: pigz - version: 2.8 - - package: policycoreutils - version: 3.6 - - package: procps - version: 4.0.4 - - package: readline - version: 8.2 - patches: - - "readline-8.2-shlib.patch" - - package: release - version: 0.0 - - package: runc - version: 1.1.12 - - package: selinux-policy - version: 0.0 - - package: settings-aws - version: 0.0 - - package: settings-container-registry - version: 0.0 - - package: settings-kernel - version: 0.0 - - package: settings-motd - version: 0.0 - - package: settings-ntp - version: 0.0 - - package: settings-updates - version: 0.0 - - package: shim - version: 15.8 - - package: static-pods - version: 0.1 - - package: strace - version: 6.8 - - package: systemd - version: 252.22 - patches: - - "9013-sd-dhcp-lease-parse-multiple-domains-in-option-15.patch" - - "9010-units-keep-modprobe-service-units-running.patch" - - "9004-units-mount-tmp-with-noexec.patch" - - "9007-pkg-config-stop-hardcoding-prefix-to-usr.patch" - - "9014-meson-make-gpt-auto-generator-selectable-at-build-ti.patch" - - "1001-sd-netlink-make-calc_elapse-return-USEC_INFINITY-whe.patch" - - "9012-core-mount-increase-mount-rate-limit-burst-to-25.patch" - - "9009-sysusers-set-root-shell-to-sbin-nologin.patch" - - "9002-core-add-separate-timeout-for-system-shutdown.patch" - - "9006-mount-setup-mount-etc-with-specific-label.patch" - - "9011-systemd-networkd-Conditionalize-hostnamed-timezoned-.patch" - - "9008-sysctl-do-not-set-rp_filter-via-wildcard.patch" - - "9001-use-absolute-path-for-var-run-symlink.patch" - - "9005-mount-setup-apply-noexec-to-more-mounts.patch" - - "9003-machine-id-setup-generate-stable-ID-under-Xen-and-VM.patch" - - "1002-sd-netlink-make-the-default-timeout-configurable-by-.patch" - - package: util-linux - version: 2.39.3 - - package: wicked - version: 0.6.68 - patches: - - "1003-ship-mkconst-and-schema-sources-for-runtime-use.patch" - - "0001-dhcp6-refresh-ipv6-flags-on-staring-in-auto-mode.patch" - - "1005-client-validate-ethernet-namespace-node.patch" - - "1004-adjust-safeguard-for-dhcp6-defer-timeout.patch" - - "1007-dhpc6-don-t-cancel-transmission-if-random-delay-happ.patch" - - "1001-avoid-gcrypt-dependency.patch" - - "1006-server-discover-hardware-address-of-unconfigured-int.patch" - - "1002-exclude-unused-components.patch" - - "1008-dhcp6-reduce-maximum-initial-solicitation-delay-to-1.patch" - - package: xfsprogs - version: 6.7.0 ---- - -{{< packages-table >}} diff --git a/content/en/os/1.20.x/version-information/packages/1.20.1/index.markdown b/content/en/os/1.20.x/version-information/packages/1.20.1/index.markdown deleted file mode 100644 index f6d3f896..00000000 --- a/content/en/os/1.20.x/version-information/packages/1.20.1/index.markdown +++ /dev/null @@ -1,474 +0,0 @@ ---- -title: "1.20.1" -type: "docs" -description: "Package Versions in Bottlerocket Release 1.20.1" -packages: - - package: acpid - version: 2.0.34 - patches: - - "0001-Remove-shell-dependency-by-only-shutting-down.patch" - - package: amazon-ssm-agent - version: 3.3.418.0 - - package: aws-iam-authenticator - version: 0.6.14 - - package: aws-signing-helper - version: 1.1.1 - - package: bash - version: 5.2.21 - patches: - - "bash-5.0-patch-1.patch" - - "bash-4.4-no-loadable-builtins.patch" - - "bash-5.0-patch-2.patch" - - package: binutils - version: 2.38 - - package: ca-certificates - version: 2024.03.11 - - package: chrony - version: 4.5 - - package: cni - version: 1.1.2 - - package: cni-plugins - version: 1.4.0 - - package: conntrack-tools - version: 1.4.8 - patches: - - "0001-disable-RPC-helper.patch" - - package: containerd - version: 1.6.31 - - package: coreutils - version: 9.5 - - package: dbus-broker - version: 35 - patches: - - "0001-c-utf8-disable-strict-aliasing-optimizations.patch" - - package: docker-cli - version: 25.0.2 - patches: - - "0001-non-tcp-host-header.patch" - - package: docker-engine - version: 25.0.2 - patches: - - "0001-Change-default-capabilities-using-daemon-config.patch" - - package: docker-init - version: 19.03.15 - - package: e2fsprogs - version: 1.47.0 - - package: early-boot-config - version: 0.1 - - package: ecr-credential-provider - version: 1.25.3 - - package: ecr-credential-provider-1.27 - version: 1.27.1 - - package: ecr-credential-provider-1.29 - version: 1.29.0 - - package: ecr-credential-provider-1.30 - version: 1.30.0 - - package: ecs-agent - version: 1.82.3 - patches: - - "0005-bottlerocket-change-execcmd-directories-for-Bottlero.patch" - - "1001-bottlerocket-default-filesystem-locations.patch" - - "0006-containermetadata-don-t-use-dataDirOnHost-for-metada.patch" - - "0001-bottlerocket-default-filesystem-locations.patch" - - "0002-bottlerocket-remove-unsupported-capabilities.patch" - - "0004-bottlerocket-fix-procfs-path-on-host.patch" - - "0003-bottlerocket-bind-introspection-to-localhost.patch" - - package: ecs-gpu-init - version: 0.0 - - package: ethtool - version: 6.7 - - package: filesystem - version: 1.0 - - package: findutils - version: 4.9.0 - - package: glibc - version: 2.38 - patches: - - "0047-sparc-Fix-broken-memset-for-sparc32-BZ-31068.patch" - - "0059-AArch64-Cleanup-emag-memset.patch" - - "0016-elf-Remove-unused-l_text_end-field-from-struct-link_.patch" - - "0011-sysdeps-tst-bz21269-fix-Wreturn-type.patch" - - "0018-NEWS-Add-the-2.38.1-bug-list.patch" - - "0027-tunables-Terminate-if-end-of-input-is-reached-CVE-20.patch" - - "0008-malloc-Remove-bin-scanning-from-memalign-bug-30723.patch" - - "0066-iconv-ISO-2022-CN-EXT-fix-out-of-bound-writes-when-w.patch" - - "0057-AArch64-Add-support-for-MOPS-memcpy-memmove-memset.patch" - - "0068-login-Check-default-sizes-of-structs-utmp-utmpx-last.patch" - - "0007-malloc-Enable-merging-of-remainders-in-memalign-bug-.patch" - - "0042-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch" - - "0024-Fix-leak-in-getaddrinfo-introduced-by-the-fix-for-CV.patch" - - "9001-move-ldconfig-cache-to-ephemeral-storage.patch" - - "0055-LoongArch-Correct-__ieee754-_-_scalb-__ieee754-_-_sc.patch" - - "0017-elf-Move-l_init_called_next-to-old-place-of-l_text_e.patch" - - "0021-iconv-restore-verbosity-with-unrecognized-encoding-n.patch" - - "0032-elf-Fix-wrong-break-removal-from-8ee878592c.patch" - - "0058-AArch64-Cleanup-ifuncs.patch" - - "0043-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch" - - "0023-manual-jobs.texi-Add-missing-item-EPERM-for-getpgid.patch" - - "0020-getaddrinfo-Fix-use-after-free-in-getcanonname-CVE-2.patch" - - "0030-Revert-elf-Move-l_init_called_next-to-old-place-of-l.patch" - - "0060-AArch64-Add-memset_zva64.patch" - - "0046-S390-Fix-building-with-disable-mutli-arch-BZ-31196.patch" - - "0005-x86_64-Fix-build-with-disable-multiarch-BZ-30721.patch" - - "0013-libio-Fix-oversized-__io_vtables.patch" - - "0038-NEWS-Mention-bug-fixes-for-29039-30694-30709-30721.patch" - - "HACK-only-build-and-install-localedef.patch" - - "0054-linux-Use-rseq-area-unconditionally-in-sched_getcpu-.patch" - - "0036-x86-64-Fix-the-dtv-field-load-for-x32-BZ-31184.patch" - - "0052-malloc-Use-__get_nprocs-on-arena_get2-BZ-30945.patch" - - "0015-elf-Always-call-destructors-in-reverse-constructor-o.patch" - - "0028-Revert-elf-Remove-unused-l_text_end-field-from-struc.patch" - - "0025-Document-CVE-2023-4806-and-CVE-2023-5156-in-NEWS.patch" - - "0063-aarch64-fix-check-for-SVE-support-in-assembler.patch" - - "0064-AArch64-Check-kernel-version-for-SVE-ifuncs.patch" - - "0029-Revert-elf-Always-call-destructors-in-reverse-constr.patch" - - "0065-powerpc-Fix-ld.so-address-determination-for-PCREL-mo.patch" - - "0009-sysdeps-tst-bz21269-fix-test-parameter.patch" - - "0051-arm-Remove-wrong-ldr-from-_dl_start_user-BZ-31339.patch" - - "glibc-cs-path.patch" - - "0034-elf-Fix-TLS-modid-reuse-generation-assignment-BZ-290.patch" - - "0039-NEWS-Mention-bug-fixes-for-30745-30843.patch" - - "0067-sparc-Remove-64-bit-check-on-sparc32-wordsize-BZ-275.patch" - - "0045-x86_64-Optimize-ffsll-function-code-size.patch" - - "0031-sysdeps-sem_open-Clear-O_CREAT-when-semaphore-file-i.patch" - - "0004-x86-Fix-incorrect-scope-of-setting-shared_per_thread.patch" - - "0053-S390-Do-not-clobber-r7-in-clone-BZ-31402.patch" - - "0041-libio-Check-remaining-buffer-size-in-_IO_wdo_write-b.patch" - - "0019-CVE-2023-4527-Stack-read-overflow-with-large-TCP-res.patch" - - "0014-elf-Do-not-run-constructors-for-proxy-objects.patch" - - "0048-sparc64-Remove-unwind-information-from-signal-return.patch" - - "0070-nptl-Fix-tst-cancel30-on-kernels-without-ppoll_time6.patch" - - "0033-LoongArch-Delete-excessively-allocated-memory.patch" - - "0050-sparc-Remove-unwind-information-from-signal-return-s.patch" - - "0049-sparc-Fix-sparc64-memmove-length-comparison-BZ-31266.patch" - - "0044-syslog-Fix-integer-overflow-in-__vsyslog_internal-CV.patch" - - "0061-AArch64-Remove-Falkor-memcpy.patch" - - "0035-elf-Add-TLS-modid-reuse-test-for-bug-29039.patch" - - "0062-aarch64-correct-CFI-in-rawmemchr-bug-31113.patch" - - "0012-io-Fix-record-locking-contants-for-powerpc64-with-__.patch" - - "0003-nscd-Do-not-rebuild-getaddrinfo-bug-30709.patch" - - "0010-sysdeps-tst-bz21269-handle-ENOSYS-skip-appropriately.patch" - - "0069-login-structs-utmp-utmpx-lastlog-_TIME_BITS-independ.patch" - - "0022-string-Fix-tester-build-with-fortify-enable-with-gcc.patch" - - "0037-x86-64-Fix-the-tcb-field-load-for-x32-BZ-31185.patch" - - "0040-getaddrinfo-translate-ENOMEM-to-EAI_MEMORY-bug-31163.patch" - - "0056-Add-HWCAP2_MOPS-from-Linux-6.5-to-AArch64-bits-hwcap.patch" - - "0002-x86-Fix-for-cache-computation-on-AMD-legacy-cpus.patch" - - "0026-Propagate-GLIBC_TUNABLES-in-setxid-binaries.patch" - - "0001-stdlib-Improve-tst-realpath-compatibility-with-sourc.patch" - - "0006-i686-Fix-build-with-disable-multiarch.patch" - - package: grep - version: 3.9 - - package: grub - version: 2.06 - patches: - - "0024-gptprio_test-check-GPT-is-repaired-when-appropriate.patch" - - "0027-gpt-add-helper-for-picking-a-valid-header.patch" - - "0008-gpt-add-a-new-generic-GUID-type.patch" - - "0037-gpt-read-entries-table-at-the-same-time-as-the-heade.patch" - - "0001-setup-Add-root-device-argument-to-grub-setup.patch" - - "0023-gptrepair_test-fix-typo-in-cleanup-trap.patch" - - "0010-gpt-split-out-checksum-recomputation.patch" - - "0048-add-flag-to-only-search-root-dev.patch" - - "0005-gpt-consolidate-crc32-computation-code.patch" - - "0035-gpt-always-revalidate-when-recomputing-checksums.patch" - - "0012-gpt-switch-partition-names-to-a-16-bit-type.patch" - - "0004-gpt-record-size-of-of-the-entries-table.patch" - - "0014-gpt-add-search-by-partition-label-and-uuid-commands.patch" - - "0017-gpt-add-search-by-disk-uuid-command.patch" - - "0007-gpt-add-write-function-and-gptrepair-command.patch" - - "0009-gpt-new-gptprio.next-command-for-selecting-priority-.patch" - - "0021-gpt-refuse-to-write-to-sector-0.patch" - - "0013-tests-add-some-partitions-to-the-gpt-unit-test-data.patch" - - "0016-gpt-minor-cleanup.patch" - - "0011-gpt-move-gpt-guid-printing-function-to-common-librar.patch" - - "0046-Revert-sb-Add-fallback-to-EFI-LoadImage-if-shim_lock.patch" - - "0015-gpt-clean-up-little-endian-crc32-computation.patch" - - "0036-gpt-include-backup-in-sync-check-in-revalidation.patch" - - "0040-gpt-write-backup-GPT-first-skip-if-inaccessible.patch" - - "0019-gpt-add-verbose-debug-logging.patch" - - "0018-gpt-do-not-use-disk-sizes-GRUB-will-reject-as-invali.patch" - - "0041-gptprio-Use-Bottlerocket-boot-partition-type-GUID.patch" - - "0022-gpt-properly-detect-and-repair-invalid-tables.patch" - - "0032-gpt-check-header-and-entries-status-bits-together.patch" - - "0006-gpt-add-new-repair-function-to-sync-up-primary-and-b.patch" - - "0039-gpt-rename-and-update-documentation-for-grub_gpt_upd.patch" - - "0044-efi-return-virtual-size-of-section-found-by-grub_efi.patch" - - "0020-gpt-improve-validation-of-GPT-headers.patch" - - "0026-gpt-prefer-disk-size-from-header-over-firmware.patch" - - "0043-util-mkimage-avoid-adding-section-table-entry-outsid.patch" - - "0047-Revert-UBUNTU-Move-verifiers-after-decompressors.patch" - - "0045-mkimage-pgp-move-single-public-key-into-its-own-sect.patch" - - "0031-gpt-do-not-use-an-enum-for-status-bit-values.patch" - - "0033-gpt-be-more-careful-about-relocating-backup-header.patch" - - "0028-gptrepair-fix-status-checking.patch" - - "0042-util-mkimage-Bump-EFI-PE-header-size-to-accommodate-.patch" - - "0029-gpt-use-inline-functions-for-checking-status-bits.patch" - - "0025-gpt-fix-partition-table-indexing-and-validation.patch" - - "0003-gpt-rename-misnamed-header-location-fields.patch" - - "0002-gpt-start-new-GPT-module.patch" - - "0038-gpt-report-all-revalidation-errors.patch" - - "0030-gpt-allow-repair-function-to-noop.patch" - - "0034-gpt-selectively-update-fields-during-repair.patch" - - package: host-ctr - version: 0.0 - - package: iproute - version: 6.4.0 - patches: - - "0001-skip-libelf-check.patch" - - package: iptables - version: 1.8.9 - patches: - - "1001-extensions-NAT-Fix-for-Werror-format-security.patch" - - "1002-ip6tables-Fix-checking-existence-of-rule.patch" - - package: iputils - version: 20240117 - - package: kernel-5.10 - version: 5.10.216 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "5001-Revert-netfilter-nf_tables-drop-map-element-referenc.patch" - - "1003-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "2000-kbuild-move-module-strip-compression-code-into-scrip.patch" - - "1002-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - "2001-kbuild-add-support-for-zstd-compressed-modules.patch" - - package: kernel-5.15 - version: 5.15.158 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "1002-Revert-kbuild-hide-tools-build-targets-from-external.patch" - - "1004-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "1003-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - package: kernel-6.1 - version: 6.1.90 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "1002-Revert-kbuild-hide-tools-build-targets-from-external.patch" - - "1004-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "1003-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - "1005-Revert-Revert-drm-fb_helper-improve-CONFIG_FB-depend.patch" - - package: kexec-tools - version: 2.0.28 - - package: keyutils - version: 1.6.1 - - package: kmod - version: 31 - - package: kmod-5.10-nvidia - version: 1.0.0 - - package: kmod-5.15-nvidia - version: 1.0.0 - - package: kmod-6.1-nvidia - version: 1.0.0 - - package: kubernetes-1.23 - version: 1.23.17 - - package: kubernetes-1.24 - version: 1.24.17 - - package: kubernetes-1.25 - version: 1.25.16 - - package: kubernetes-1.26 - version: 1.26.14 - - package: kubernetes-1.27 - version: 1.27.11 - - package: kubernetes-1.28 - version: 1.28.7 - - package: kubernetes-1.29 - version: 1.29.1 - - package: kubernetes-1.30 - version: 1.30.0 - - package: libacl - version: 2.3.2 - - package: libattr - version: 2.5.2 - - package: libaudit - version: 3.1.4 - - package: libcap - version: 2.69 - patches: - - "9001-dont-test-during-install.patch" - - package: libdbus - version: 1.15.6 - - package: libelf - version: 0.191 - - package: libexpat - version: 2.6.2 - - package: libffi - version: 3.4.6 - - package: libgcc - version: 0.0 - - package: libglib - version: 2.78.4 - - package: libinih - version: 58 - - package: libiw - version: 29 - patches: - - "wireless-tools-29-makefile.patch" - - package: libkcapi - version: 1.5.0 - - package: libmnl - version: 1.0.5 - - package: libncurses - version: 6.4 - patches: - - "ncurses-config.patch" - - "ncurses-libs.patch" - - "ncurses-urxvt.patch" - - "ncurses-kbs.patch" - - package: libnetfilter_conntrack - version: 1.0.9 - - package: libnetfilter_cthelper - version: 1.0.1 - - package: libnetfilter_cttimeout - version: 1.0.1 - - package: libnetfilter_queue - version: 1.0.5 - - package: libnfnetlink - version: 1.0.2 - - package: libnftnl - version: 1.2.6 - - package: libnl - version: 3.9.0 - - package: libnvidia-container - version: 1.13.5 - patches: - - "0004-Use-NVIDIA_PATH-to-look-up-binaries.patch" - - "0002-use-prefix-from-environment.patch" - - "0001-use-shared-libtirpc.patch" - - "0003-keep-debug-symbols.patch" - - "0005-makefile-avoid-ldconfig-when-cross-compiling.patch" - - package: libpcre - version: 10.43 - - package: libseccomp - version: 2.5.5 - - package: libselinux - version: 3.6 - - package: libsemanage - version: 3.6 - patches: - - "0001-remove-bzip2-dependency.patch" - - package: libsepol - version: 3.6 - patches: - - "0001-libsepol-cil-Check-common-perms-when-verifiying-all.patch" - - package: libstd-rust - version: 0.0 - - package: libtirpc - version: 1.3.4 - - package: liburcu - version: 0.14.0 - - package: libxcrypt - version: 4.4.36 - - package: libz - version: 1.3.1 - - package: libzstd - version: 1.5.6 - - package: linux-firmware - version: 20230625 - patches: - - "0005-linux-firmware-usb-remove-firmware-for-USB-Serial-PC.patch" - - "0001-linux-firmware-snd-remove-firmware-for-snd-audio-dev.patch" - - "0007-linux-firmware-Remove-firmware-for-Accelarator-devic.patch" - - "0002-linux-firmware-video-Remove-firmware-for-video-broad.patch" - - "0006-linux-firmware-ethernet-Remove-firmware-for-ethernet.patch" - - "0004-linux-firmware-scsi-Remove-firmware-for-SCSI-devices.patch" - - "0010-linux-firmware-amd-ucode-Remove-amd-microcode.patch" - - "0009-linux-firmware-various-Remove-firmware-for-various-d.patch" - - "0008-linux-firmware-gpu-Remove-firmware-for-GPU-devices.patch" - - "0003-linux-firmware-bt-wifi-Remove-firmware-for-Bluetooth.patch" - - package: login - version: 0.0.1 - - package: makedumpfile - version: 1.7.5 - patches: - - "0000-fix-strip-invocation-for-TARGET-env-variable.patch" - - "0001-do-not-overlink-with-bzip2.patch" - - package: microcode - version: 0.0 - - package: netdog - version: 0.1.1 - - package: nvidia-container-toolkit - version: 1.13.5 - - package: nvidia-k8s-device-plugin - version: 0.14.4 - - package: oci-add-hooks - version: 1.0.0 - - package: open-vm-tools - version: 12.3.5 - patches: - - "0002-dont-force-cppflags.patch" - - "0003-Update-shutdown-code-to-work-for-Bottlerocket.patch" - - "0001-no_cflags_werror.patch" - - package: os - version: 0.0 - - package: pigz - version: 2.8 - - package: policycoreutils - version: 3.6 - - package: procps - version: 4.0.4 - - package: readline - version: 8.2 - patches: - - "readline-8.2-shlib.patch" - - package: release - version: 0.0 - - package: runc - version: 1.1.12 - - package: selinux-policy - version: 0.0 - - package: settings-aws - version: 0.0 - - package: settings-container-registry - version: 0.0 - - package: settings-kernel - version: 0.0 - - package: settings-motd - version: 0.0 - - package: settings-ntp - version: 0.0 - - package: settings-updates - version: 0.0 - - package: shim - version: 15.8 - - package: static-pods - version: 0.1 - - package: strace - version: 6.8 - - package: systemd - version: 252.22 - patches: - - "9013-sd-dhcp-lease-parse-multiple-domains-in-option-15.patch" - - "9010-units-keep-modprobe-service-units-running.patch" - - "9004-units-mount-tmp-with-noexec.patch" - - "9007-pkg-config-stop-hardcoding-prefix-to-usr.patch" - - "9014-meson-make-gpt-auto-generator-selectable-at-build-ti.patch" - - "1001-sd-netlink-make-calc_elapse-return-USEC_INFINITY-whe.patch" - - "9012-core-mount-increase-mount-rate-limit-burst-to-25.patch" - - "9009-sysusers-set-root-shell-to-sbin-nologin.patch" - - "9002-core-add-separate-timeout-for-system-shutdown.patch" - - "9006-mount-setup-mount-etc-with-specific-label.patch" - - "9011-systemd-networkd-Conditionalize-hostnamed-timezoned-.patch" - - "9008-sysctl-do-not-set-rp_filter-via-wildcard.patch" - - "9001-use-absolute-path-for-var-run-symlink.patch" - - "9005-mount-setup-apply-noexec-to-more-mounts.patch" - - "9003-machine-id-setup-generate-stable-ID-under-Xen-and-VM.patch" - - "1002-sd-netlink-make-the-default-timeout-configurable-by-.patch" - - package: util-linux - version: 2.39.3 - - package: wicked - version: 0.6.68 - patches: - - "1003-ship-mkconst-and-schema-sources-for-runtime-use.patch" - - "0001-dhcp6-refresh-ipv6-flags-on-staring-in-auto-mode.patch" - - "1005-client-validate-ethernet-namespace-node.patch" - - "1004-adjust-safeguard-for-dhcp6-defer-timeout.patch" - - "1007-dhpc6-don-t-cancel-transmission-if-random-delay-happ.patch" - - "1001-avoid-gcrypt-dependency.patch" - - "1006-server-discover-hardware-address-of-unconfigured-int.patch" - - "1002-exclude-unused-components.patch" - - "1008-dhcp6-reduce-maximum-initial-solicitation-delay-to-1.patch" - - package: xfsprogs - version: 6.7.0 ---- - -{{< packages-table >}} diff --git a/content/en/os/1.20.x/version-information/packages/1.20.2/index.markdown b/content/en/os/1.20.x/version-information/packages/1.20.2/index.markdown deleted file mode 100644 index 6ecc36d0..00000000 --- a/content/en/os/1.20.x/version-information/packages/1.20.2/index.markdown +++ /dev/null @@ -1,475 +0,0 @@ ---- -title: "1.20.2" -type: "docs" -description: "Package Versions in Bottlerocket Release 1.20.2" -packages: - - package: acpid - version: 2.0.34 - patches: - - "0001-Remove-shell-dependency-by-only-shutting-down.patch" - - package: amazon-ssm-agent - version: 3.3.418.0 - - package: aws-iam-authenticator - version: 0.6.14 - - package: aws-signing-helper - version: 1.1.1 - - package: bash - version: 5.2.21 - patches: - - "bash-5.0-patch-1.patch" - - "bash-4.4-no-loadable-builtins.patch" - - "bash-5.0-patch-2.patch" - - package: binutils - version: 2.38 - - package: ca-certificates - version: 2024.03.11 - - package: chrony - version: 4.5 - - package: cni - version: 1.1.2 - - package: cni-plugins - version: 1.4.0 - - package: conntrack-tools - version: 1.4.8 - patches: - - "0001-disable-RPC-helper.patch" - - package: containerd - version: 1.6.31 - - package: coreutils - version: 9.5 - - package: dbus-broker - version: 35 - patches: - - "0001-c-utf8-disable-strict-aliasing-optimizations.patch" - - package: docker-cli - version: 25.0.2 - patches: - - "0001-non-tcp-host-header.patch" - - package: docker-engine - version: 25.0.2 - patches: - - "0002-oci-inject-kmod-in-all-containers.patch" - - "0001-Change-default-capabilities-using-daemon-config.patch" - - package: docker-init - version: 19.03.15 - - package: e2fsprogs - version: 1.47.0 - - package: early-boot-config - version: 0.1 - - package: ecr-credential-provider - version: 1.25.3 - - package: ecr-credential-provider-1.27 - version: 1.27.1 - - package: ecr-credential-provider-1.29 - version: 1.29.0 - - package: ecr-credential-provider-1.30 - version: 1.30.0 - - package: ecs-agent - version: 1.82.3 - patches: - - "0005-bottlerocket-change-execcmd-directories-for-Bottlero.patch" - - "1001-bottlerocket-default-filesystem-locations.patch" - - "0006-containermetadata-don-t-use-dataDirOnHost-for-metada.patch" - - "0001-bottlerocket-default-filesystem-locations.patch" - - "0002-bottlerocket-remove-unsupported-capabilities.patch" - - "0004-bottlerocket-fix-procfs-path-on-host.patch" - - "0003-bottlerocket-bind-introspection-to-localhost.patch" - - package: ecs-gpu-init - version: 0.0 - - package: ethtool - version: 6.7 - - package: filesystem - version: 1.0 - - package: findutils - version: 4.9.0 - - package: glibc - version: 2.38 - patches: - - "0047-sparc-Fix-broken-memset-for-sparc32-BZ-31068.patch" - - "0059-AArch64-Cleanup-emag-memset.patch" - - "0016-elf-Remove-unused-l_text_end-field-from-struct-link_.patch" - - "0011-sysdeps-tst-bz21269-fix-Wreturn-type.patch" - - "0018-NEWS-Add-the-2.38.1-bug-list.patch" - - "0027-tunables-Terminate-if-end-of-input-is-reached-CVE-20.patch" - - "0008-malloc-Remove-bin-scanning-from-memalign-bug-30723.patch" - - "0066-iconv-ISO-2022-CN-EXT-fix-out-of-bound-writes-when-w.patch" - - "0057-AArch64-Add-support-for-MOPS-memcpy-memmove-memset.patch" - - "0068-login-Check-default-sizes-of-structs-utmp-utmpx-last.patch" - - "0007-malloc-Enable-merging-of-remainders-in-memalign-bug-.patch" - - "0042-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch" - - "0024-Fix-leak-in-getaddrinfo-introduced-by-the-fix-for-CV.patch" - - "9001-move-ldconfig-cache-to-ephemeral-storage.patch" - - "0055-LoongArch-Correct-__ieee754-_-_scalb-__ieee754-_-_sc.patch" - - "0017-elf-Move-l_init_called_next-to-old-place-of-l_text_e.patch" - - "0021-iconv-restore-verbosity-with-unrecognized-encoding-n.patch" - - "0032-elf-Fix-wrong-break-removal-from-8ee878592c.patch" - - "0058-AArch64-Cleanup-ifuncs.patch" - - "0043-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch" - - "0023-manual-jobs.texi-Add-missing-item-EPERM-for-getpgid.patch" - - "0020-getaddrinfo-Fix-use-after-free-in-getcanonname-CVE-2.patch" - - "0030-Revert-elf-Move-l_init_called_next-to-old-place-of-l.patch" - - "0060-AArch64-Add-memset_zva64.patch" - - "0046-S390-Fix-building-with-disable-mutli-arch-BZ-31196.patch" - - "0005-x86_64-Fix-build-with-disable-multiarch-BZ-30721.patch" - - "0013-libio-Fix-oversized-__io_vtables.patch" - - "0038-NEWS-Mention-bug-fixes-for-29039-30694-30709-30721.patch" - - "HACK-only-build-and-install-localedef.patch" - - "0054-linux-Use-rseq-area-unconditionally-in-sched_getcpu-.patch" - - "0036-x86-64-Fix-the-dtv-field-load-for-x32-BZ-31184.patch" - - "0052-malloc-Use-__get_nprocs-on-arena_get2-BZ-30945.patch" - - "0015-elf-Always-call-destructors-in-reverse-constructor-o.patch" - - "0028-Revert-elf-Remove-unused-l_text_end-field-from-struc.patch" - - "0025-Document-CVE-2023-4806-and-CVE-2023-5156-in-NEWS.patch" - - "0063-aarch64-fix-check-for-SVE-support-in-assembler.patch" - - "0064-AArch64-Check-kernel-version-for-SVE-ifuncs.patch" - - "0029-Revert-elf-Always-call-destructors-in-reverse-constr.patch" - - "0065-powerpc-Fix-ld.so-address-determination-for-PCREL-mo.patch" - - "0009-sysdeps-tst-bz21269-fix-test-parameter.patch" - - "0051-arm-Remove-wrong-ldr-from-_dl_start_user-BZ-31339.patch" - - "glibc-cs-path.patch" - - "0034-elf-Fix-TLS-modid-reuse-generation-assignment-BZ-290.patch" - - "0039-NEWS-Mention-bug-fixes-for-30745-30843.patch" - - "0067-sparc-Remove-64-bit-check-on-sparc32-wordsize-BZ-275.patch" - - "0045-x86_64-Optimize-ffsll-function-code-size.patch" - - "0031-sysdeps-sem_open-Clear-O_CREAT-when-semaphore-file-i.patch" - - "0004-x86-Fix-incorrect-scope-of-setting-shared_per_thread.patch" - - "0053-S390-Do-not-clobber-r7-in-clone-BZ-31402.patch" - - "0041-libio-Check-remaining-buffer-size-in-_IO_wdo_write-b.patch" - - "0019-CVE-2023-4527-Stack-read-overflow-with-large-TCP-res.patch" - - "0014-elf-Do-not-run-constructors-for-proxy-objects.patch" - - "0048-sparc64-Remove-unwind-information-from-signal-return.patch" - - "0070-nptl-Fix-tst-cancel30-on-kernels-without-ppoll_time6.patch" - - "0033-LoongArch-Delete-excessively-allocated-memory.patch" - - "0050-sparc-Remove-unwind-information-from-signal-return-s.patch" - - "0049-sparc-Fix-sparc64-memmove-length-comparison-BZ-31266.patch" - - "0044-syslog-Fix-integer-overflow-in-__vsyslog_internal-CV.patch" - - "0061-AArch64-Remove-Falkor-memcpy.patch" - - "0035-elf-Add-TLS-modid-reuse-test-for-bug-29039.patch" - - "0062-aarch64-correct-CFI-in-rawmemchr-bug-31113.patch" - - "0012-io-Fix-record-locking-contants-for-powerpc64-with-__.patch" - - "0003-nscd-Do-not-rebuild-getaddrinfo-bug-30709.patch" - - "0010-sysdeps-tst-bz21269-handle-ENOSYS-skip-appropriately.patch" - - "0069-login-structs-utmp-utmpx-lastlog-_TIME_BITS-independ.patch" - - "0022-string-Fix-tester-build-with-fortify-enable-with-gcc.patch" - - "0037-x86-64-Fix-the-tcb-field-load-for-x32-BZ-31185.patch" - - "0040-getaddrinfo-translate-ENOMEM-to-EAI_MEMORY-bug-31163.patch" - - "0056-Add-HWCAP2_MOPS-from-Linux-6.5-to-AArch64-bits-hwcap.patch" - - "0002-x86-Fix-for-cache-computation-on-AMD-legacy-cpus.patch" - - "0026-Propagate-GLIBC_TUNABLES-in-setxid-binaries.patch" - - "0001-stdlib-Improve-tst-realpath-compatibility-with-sourc.patch" - - "0006-i686-Fix-build-with-disable-multiarch.patch" - - package: grep - version: 3.9 - - package: grub - version: 2.06 - patches: - - "0024-gptprio_test-check-GPT-is-repaired-when-appropriate.patch" - - "0027-gpt-add-helper-for-picking-a-valid-header.patch" - - "0008-gpt-add-a-new-generic-GUID-type.patch" - - "0037-gpt-read-entries-table-at-the-same-time-as-the-heade.patch" - - "0001-setup-Add-root-device-argument-to-grub-setup.patch" - - "0023-gptrepair_test-fix-typo-in-cleanup-trap.patch" - - "0010-gpt-split-out-checksum-recomputation.patch" - - "0048-add-flag-to-only-search-root-dev.patch" - - "0005-gpt-consolidate-crc32-computation-code.patch" - - "0035-gpt-always-revalidate-when-recomputing-checksums.patch" - - "0012-gpt-switch-partition-names-to-a-16-bit-type.patch" - - "0004-gpt-record-size-of-of-the-entries-table.patch" - - "0014-gpt-add-search-by-partition-label-and-uuid-commands.patch" - - "0017-gpt-add-search-by-disk-uuid-command.patch" - - "0007-gpt-add-write-function-and-gptrepair-command.patch" - - "0009-gpt-new-gptprio.next-command-for-selecting-priority-.patch" - - "0021-gpt-refuse-to-write-to-sector-0.patch" - - "0013-tests-add-some-partitions-to-the-gpt-unit-test-data.patch" - - "0016-gpt-minor-cleanup.patch" - - "0011-gpt-move-gpt-guid-printing-function-to-common-librar.patch" - - "0046-Revert-sb-Add-fallback-to-EFI-LoadImage-if-shim_lock.patch" - - "0015-gpt-clean-up-little-endian-crc32-computation.patch" - - "0036-gpt-include-backup-in-sync-check-in-revalidation.patch" - - "0040-gpt-write-backup-GPT-first-skip-if-inaccessible.patch" - - "0019-gpt-add-verbose-debug-logging.patch" - - "0018-gpt-do-not-use-disk-sizes-GRUB-will-reject-as-invali.patch" - - "0041-gptprio-Use-Bottlerocket-boot-partition-type-GUID.patch" - - "0022-gpt-properly-detect-and-repair-invalid-tables.patch" - - "0032-gpt-check-header-and-entries-status-bits-together.patch" - - "0006-gpt-add-new-repair-function-to-sync-up-primary-and-b.patch" - - "0039-gpt-rename-and-update-documentation-for-grub_gpt_upd.patch" - - "0044-efi-return-virtual-size-of-section-found-by-grub_efi.patch" - - "0020-gpt-improve-validation-of-GPT-headers.patch" - - "0026-gpt-prefer-disk-size-from-header-over-firmware.patch" - - "0043-util-mkimage-avoid-adding-section-table-entry-outsid.patch" - - "0047-Revert-UBUNTU-Move-verifiers-after-decompressors.patch" - - "0045-mkimage-pgp-move-single-public-key-into-its-own-sect.patch" - - "0031-gpt-do-not-use-an-enum-for-status-bit-values.patch" - - "0033-gpt-be-more-careful-about-relocating-backup-header.patch" - - "0028-gptrepair-fix-status-checking.patch" - - "0042-util-mkimage-Bump-EFI-PE-header-size-to-accommodate-.patch" - - "0029-gpt-use-inline-functions-for-checking-status-bits.patch" - - "0025-gpt-fix-partition-table-indexing-and-validation.patch" - - "0003-gpt-rename-misnamed-header-location-fields.patch" - - "0002-gpt-start-new-GPT-module.patch" - - "0038-gpt-report-all-revalidation-errors.patch" - - "0030-gpt-allow-repair-function-to-noop.patch" - - "0034-gpt-selectively-update-fields-during-repair.patch" - - package: host-ctr - version: 0.0 - - package: iproute - version: 6.4.0 - patches: - - "0001-skip-libelf-check.patch" - - package: iptables - version: 1.8.9 - patches: - - "1001-extensions-NAT-Fix-for-Werror-format-security.patch" - - "1002-ip6tables-Fix-checking-existence-of-rule.patch" - - package: iputils - version: 20240117 - - package: kernel-5.10 - version: 5.10.217 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "5001-Revert-netfilter-nf_tables-drop-map-element-referenc.patch" - - "1003-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "2000-kbuild-move-module-strip-compression-code-into-scrip.patch" - - "1002-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - "2001-kbuild-add-support-for-zstd-compressed-modules.patch" - - package: kernel-5.15 - version: 5.15.158 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "1002-Revert-kbuild-hide-tools-build-targets-from-external.patch" - - "1004-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "1003-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - package: kernel-6.1 - version: 6.1.90 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "1002-Revert-kbuild-hide-tools-build-targets-from-external.patch" - - "1004-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "1003-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - "1005-Revert-Revert-drm-fb_helper-improve-CONFIG_FB-depend.patch" - - package: kexec-tools - version: 2.0.28 - - package: keyutils - version: 1.6.1 - - package: kmod - version: 31 - - package: kmod-5.10-nvidia - version: 1.0.0 - - package: kmod-5.15-nvidia - version: 1.0.0 - - package: kmod-6.1-nvidia - version: 1.0.0 - - package: kubernetes-1.23 - version: 1.23.17 - - package: kubernetes-1.24 - version: 1.24.17 - - package: kubernetes-1.25 - version: 1.25.16 - - package: kubernetes-1.26 - version: 1.26.14 - - package: kubernetes-1.27 - version: 1.27.11 - - package: kubernetes-1.28 - version: 1.28.7 - - package: kubernetes-1.29 - version: 1.29.1 - - package: kubernetes-1.30 - version: 1.30.0 - - package: libacl - version: 2.3.2 - - package: libattr - version: 2.5.2 - - package: libaudit - version: 3.1.4 - - package: libcap - version: 2.69 - patches: - - "9001-dont-test-during-install.patch" - - package: libdbus - version: 1.15.6 - - package: libelf - version: 0.191 - - package: libexpat - version: 2.6.2 - - package: libffi - version: 3.4.6 - - package: libgcc - version: 0.0 - - package: libglib - version: 2.78.4 - - package: libinih - version: 58 - - package: libiw - version: 29 - patches: - - "wireless-tools-29-makefile.patch" - - package: libkcapi - version: 1.5.0 - - package: libmnl - version: 1.0.5 - - package: libncurses - version: 6.4 - patches: - - "ncurses-config.patch" - - "ncurses-libs.patch" - - "ncurses-urxvt.patch" - - "ncurses-kbs.patch" - - package: libnetfilter_conntrack - version: 1.0.9 - - package: libnetfilter_cthelper - version: 1.0.1 - - package: libnetfilter_cttimeout - version: 1.0.1 - - package: libnetfilter_queue - version: 1.0.5 - - package: libnfnetlink - version: 1.0.2 - - package: libnftnl - version: 1.2.6 - - package: libnl - version: 3.9.0 - - package: libnvidia-container - version: 1.13.5 - patches: - - "0004-Use-NVIDIA_PATH-to-look-up-binaries.patch" - - "0002-use-prefix-from-environment.patch" - - "0001-use-shared-libtirpc.patch" - - "0003-keep-debug-symbols.patch" - - "0005-makefile-avoid-ldconfig-when-cross-compiling.patch" - - package: libpcre - version: 10.43 - - package: libseccomp - version: 2.5.5 - - package: libselinux - version: 3.6 - - package: libsemanage - version: 3.6 - patches: - - "0001-remove-bzip2-dependency.patch" - - package: libsepol - version: 3.6 - patches: - - "0001-libsepol-cil-Check-common-perms-when-verifiying-all.patch" - - package: libstd-rust - version: 0.0 - - package: libtirpc - version: 1.3.4 - - package: liburcu - version: 0.14.0 - - package: libxcrypt - version: 4.4.36 - - package: libz - version: 1.3.1 - - package: libzstd - version: 1.5.6 - - package: linux-firmware - version: 20230625 - patches: - - "0005-linux-firmware-usb-remove-firmware-for-USB-Serial-PC.patch" - - "0001-linux-firmware-snd-remove-firmware-for-snd-audio-dev.patch" - - "0007-linux-firmware-Remove-firmware-for-Accelarator-devic.patch" - - "0002-linux-firmware-video-Remove-firmware-for-video-broad.patch" - - "0006-linux-firmware-ethernet-Remove-firmware-for-ethernet.patch" - - "0004-linux-firmware-scsi-Remove-firmware-for-SCSI-devices.patch" - - "0010-linux-firmware-amd-ucode-Remove-amd-microcode.patch" - - "0009-linux-firmware-various-Remove-firmware-for-various-d.patch" - - "0008-linux-firmware-gpu-Remove-firmware-for-GPU-devices.patch" - - "0003-linux-firmware-bt-wifi-Remove-firmware-for-Bluetooth.patch" - - package: login - version: 0.0.1 - - package: makedumpfile - version: 1.7.5 - patches: - - "0000-fix-strip-invocation-for-TARGET-env-variable.patch" - - "0001-do-not-overlink-with-bzip2.patch" - - package: microcode - version: 0.0 - - package: netdog - version: 0.1.1 - - package: nvidia-container-toolkit - version: 1.13.5 - - package: nvidia-k8s-device-plugin - version: 0.14.4 - - package: oci-add-hooks - version: 1.0.0 - - package: open-vm-tools - version: 12.3.5 - patches: - - "0002-dont-force-cppflags.patch" - - "0003-Update-shutdown-code-to-work-for-Bottlerocket.patch" - - "0001-no_cflags_werror.patch" - - package: os - version: 0.0 - - package: pigz - version: 2.8 - - package: policycoreutils - version: 3.6 - - package: procps - version: 4.0.4 - - package: readline - version: 8.2 - patches: - - "readline-8.2-shlib.patch" - - package: release - version: 0.0 - - package: runc - version: 1.1.12 - - package: selinux-policy - version: 0.0 - - package: settings-aws - version: 0.0 - - package: settings-container-registry - version: 0.0 - - package: settings-kernel - version: 0.0 - - package: settings-motd - version: 0.0 - - package: settings-ntp - version: 0.0 - - package: settings-updates - version: 0.0 - - package: shim - version: 15.8 - - package: static-pods - version: 0.1 - - package: strace - version: 6.8 - - package: systemd - version: 252.22 - patches: - - "9013-sd-dhcp-lease-parse-multiple-domains-in-option-15.patch" - - "9010-units-keep-modprobe-service-units-running.patch" - - "9004-units-mount-tmp-with-noexec.patch" - - "9007-pkg-config-stop-hardcoding-prefix-to-usr.patch" - - "9014-meson-make-gpt-auto-generator-selectable-at-build-ti.patch" - - "1001-sd-netlink-make-calc_elapse-return-USEC_INFINITY-whe.patch" - - "9012-core-mount-increase-mount-rate-limit-burst-to-25.patch" - - "9009-sysusers-set-root-shell-to-sbin-nologin.patch" - - "9002-core-add-separate-timeout-for-system-shutdown.patch" - - "9006-mount-setup-mount-etc-with-specific-label.patch" - - "9011-systemd-networkd-Conditionalize-hostnamed-timezoned-.patch" - - "9008-sysctl-do-not-set-rp_filter-via-wildcard.patch" - - "9001-use-absolute-path-for-var-run-symlink.patch" - - "9005-mount-setup-apply-noexec-to-more-mounts.patch" - - "9003-machine-id-setup-generate-stable-ID-under-Xen-and-VM.patch" - - "1002-sd-netlink-make-the-default-timeout-configurable-by-.patch" - - package: util-linux - version: 2.39.3 - - package: wicked - version: 0.6.68 - patches: - - "1003-ship-mkconst-and-schema-sources-for-runtime-use.patch" - - "0001-dhcp6-refresh-ipv6-flags-on-staring-in-auto-mode.patch" - - "1005-client-validate-ethernet-namespace-node.patch" - - "1004-adjust-safeguard-for-dhcp6-defer-timeout.patch" - - "1007-dhpc6-don-t-cancel-transmission-if-random-delay-happ.patch" - - "1001-avoid-gcrypt-dependency.patch" - - "1006-server-discover-hardware-address-of-unconfigured-int.patch" - - "1002-exclude-unused-components.patch" - - "1008-dhcp6-reduce-maximum-initial-solicitation-delay-to-1.patch" - - package: xfsprogs - version: 6.7.0 ---- - -{{< packages-table >}} diff --git a/content/en/os/1.20.x/version-information/packages/1.20.3/index.markdown b/content/en/os/1.20.x/version-information/packages/1.20.3/index.markdown deleted file mode 100644 index dfc4f5de..00000000 --- a/content/en/os/1.20.x/version-information/packages/1.20.3/index.markdown +++ /dev/null @@ -1,475 +0,0 @@ ---- -title: "1.20.3" -type: "docs" -description: "Package Versions in Bottlerocket Release 1.20.3" -packages: - - package: acpid - version: 2.0.34 - patches: - - "0001-Remove-shell-dependency-by-only-shutting-down.patch" - - package: amazon-ssm-agent - version: 3.3.418.0 - - package: aws-iam-authenticator - version: 0.6.14 - - package: aws-signing-helper - version: 1.1.1 - - package: bash - version: 5.2.21 - patches: - - "bash-5.0-patch-1.patch" - - "bash-4.4-no-loadable-builtins.patch" - - "bash-5.0-patch-2.patch" - - package: binutils - version: 2.38 - - package: ca-certificates - version: 2024.03.11 - - package: chrony - version: 4.5 - - package: cni - version: 1.1.2 - - package: cni-plugins - version: 1.4.0 - - package: conntrack-tools - version: 1.4.8 - patches: - - "0001-disable-RPC-helper.patch" - - package: containerd - version: 1.6.31 - - package: coreutils - version: 9.5 - - package: dbus-broker - version: 35 - patches: - - "0001-c-utf8-disable-strict-aliasing-optimizations.patch" - - package: docker-cli - version: 25.0.2 - patches: - - "0001-non-tcp-host-header.patch" - - package: docker-engine - version: 25.0.2 - patches: - - "0002-oci-inject-kmod-in-all-containers.patch" - - "0001-Change-default-capabilities-using-daemon-config.patch" - - package: docker-init - version: 19.03.15 - - package: e2fsprogs - version: 1.47.0 - - package: early-boot-config - version: 0.1 - - package: ecr-credential-provider - version: 1.25.3 - - package: ecr-credential-provider-1.27 - version: 1.27.1 - - package: ecr-credential-provider-1.29 - version: 1.29.0 - - package: ecr-credential-provider-1.30 - version: 1.30.0 - - package: ecs-agent - version: 1.82.3 - patches: - - "0005-bottlerocket-change-execcmd-directories-for-Bottlero.patch" - - "1001-bottlerocket-default-filesystem-locations.patch" - - "0006-containermetadata-don-t-use-dataDirOnHost-for-metada.patch" - - "0001-bottlerocket-default-filesystem-locations.patch" - - "0002-bottlerocket-remove-unsupported-capabilities.patch" - - "0004-bottlerocket-fix-procfs-path-on-host.patch" - - "0003-bottlerocket-bind-introspection-to-localhost.patch" - - package: ecs-gpu-init - version: 0.0 - - package: ethtool - version: 6.7 - - package: filesystem - version: 1.0 - - package: findutils - version: 4.9.0 - - package: glibc - version: 2.38 - patches: - - "0047-sparc-Fix-broken-memset-for-sparc32-BZ-31068.patch" - - "0059-AArch64-Cleanup-emag-memset.patch" - - "0016-elf-Remove-unused-l_text_end-field-from-struct-link_.patch" - - "0011-sysdeps-tst-bz21269-fix-Wreturn-type.patch" - - "0018-NEWS-Add-the-2.38.1-bug-list.patch" - - "0027-tunables-Terminate-if-end-of-input-is-reached-CVE-20.patch" - - "0008-malloc-Remove-bin-scanning-from-memalign-bug-30723.patch" - - "0066-iconv-ISO-2022-CN-EXT-fix-out-of-bound-writes-when-w.patch" - - "0057-AArch64-Add-support-for-MOPS-memcpy-memmove-memset.patch" - - "0068-login-Check-default-sizes-of-structs-utmp-utmpx-last.patch" - - "0007-malloc-Enable-merging-of-remainders-in-memalign-bug-.patch" - - "0042-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch" - - "0024-Fix-leak-in-getaddrinfo-introduced-by-the-fix-for-CV.patch" - - "9001-move-ldconfig-cache-to-ephemeral-storage.patch" - - "0055-LoongArch-Correct-__ieee754-_-_scalb-__ieee754-_-_sc.patch" - - "0017-elf-Move-l_init_called_next-to-old-place-of-l_text_e.patch" - - "0021-iconv-restore-verbosity-with-unrecognized-encoding-n.patch" - - "0032-elf-Fix-wrong-break-removal-from-8ee878592c.patch" - - "0058-AArch64-Cleanup-ifuncs.patch" - - "0043-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch" - - "0023-manual-jobs.texi-Add-missing-item-EPERM-for-getpgid.patch" - - "0020-getaddrinfo-Fix-use-after-free-in-getcanonname-CVE-2.patch" - - "0030-Revert-elf-Move-l_init_called_next-to-old-place-of-l.patch" - - "0060-AArch64-Add-memset_zva64.patch" - - "0046-S390-Fix-building-with-disable-mutli-arch-BZ-31196.patch" - - "0005-x86_64-Fix-build-with-disable-multiarch-BZ-30721.patch" - - "0013-libio-Fix-oversized-__io_vtables.patch" - - "0038-NEWS-Mention-bug-fixes-for-29039-30694-30709-30721.patch" - - "HACK-only-build-and-install-localedef.patch" - - "0054-linux-Use-rseq-area-unconditionally-in-sched_getcpu-.patch" - - "0036-x86-64-Fix-the-dtv-field-load-for-x32-BZ-31184.patch" - - "0052-malloc-Use-__get_nprocs-on-arena_get2-BZ-30945.patch" - - "0015-elf-Always-call-destructors-in-reverse-constructor-o.patch" - - "0028-Revert-elf-Remove-unused-l_text_end-field-from-struc.patch" - - "0025-Document-CVE-2023-4806-and-CVE-2023-5156-in-NEWS.patch" - - "0063-aarch64-fix-check-for-SVE-support-in-assembler.patch" - - "0064-AArch64-Check-kernel-version-for-SVE-ifuncs.patch" - - "0029-Revert-elf-Always-call-destructors-in-reverse-constr.patch" - - "0065-powerpc-Fix-ld.so-address-determination-for-PCREL-mo.patch" - - "0009-sysdeps-tst-bz21269-fix-test-parameter.patch" - - "0051-arm-Remove-wrong-ldr-from-_dl_start_user-BZ-31339.patch" - - "glibc-cs-path.patch" - - "0034-elf-Fix-TLS-modid-reuse-generation-assignment-BZ-290.patch" - - "0039-NEWS-Mention-bug-fixes-for-30745-30843.patch" - - "0067-sparc-Remove-64-bit-check-on-sparc32-wordsize-BZ-275.patch" - - "0045-x86_64-Optimize-ffsll-function-code-size.patch" - - "0031-sysdeps-sem_open-Clear-O_CREAT-when-semaphore-file-i.patch" - - "0004-x86-Fix-incorrect-scope-of-setting-shared_per_thread.patch" - - "0053-S390-Do-not-clobber-r7-in-clone-BZ-31402.patch" - - "0041-libio-Check-remaining-buffer-size-in-_IO_wdo_write-b.patch" - - "0019-CVE-2023-4527-Stack-read-overflow-with-large-TCP-res.patch" - - "0014-elf-Do-not-run-constructors-for-proxy-objects.patch" - - "0048-sparc64-Remove-unwind-information-from-signal-return.patch" - - "0070-nptl-Fix-tst-cancel30-on-kernels-without-ppoll_time6.patch" - - "0033-LoongArch-Delete-excessively-allocated-memory.patch" - - "0050-sparc-Remove-unwind-information-from-signal-return-s.patch" - - "0049-sparc-Fix-sparc64-memmove-length-comparison-BZ-31266.patch" - - "0044-syslog-Fix-integer-overflow-in-__vsyslog_internal-CV.patch" - - "0061-AArch64-Remove-Falkor-memcpy.patch" - - "0035-elf-Add-TLS-modid-reuse-test-for-bug-29039.patch" - - "0062-aarch64-correct-CFI-in-rawmemchr-bug-31113.patch" - - "0012-io-Fix-record-locking-contants-for-powerpc64-with-__.patch" - - "0003-nscd-Do-not-rebuild-getaddrinfo-bug-30709.patch" - - "0010-sysdeps-tst-bz21269-handle-ENOSYS-skip-appropriately.patch" - - "0069-login-structs-utmp-utmpx-lastlog-_TIME_BITS-independ.patch" - - "0022-string-Fix-tester-build-with-fortify-enable-with-gcc.patch" - - "0037-x86-64-Fix-the-tcb-field-load-for-x32-BZ-31185.patch" - - "0040-getaddrinfo-translate-ENOMEM-to-EAI_MEMORY-bug-31163.patch" - - "0056-Add-HWCAP2_MOPS-from-Linux-6.5-to-AArch64-bits-hwcap.patch" - - "0002-x86-Fix-for-cache-computation-on-AMD-legacy-cpus.patch" - - "0026-Propagate-GLIBC_TUNABLES-in-setxid-binaries.patch" - - "0001-stdlib-Improve-tst-realpath-compatibility-with-sourc.patch" - - "0006-i686-Fix-build-with-disable-multiarch.patch" - - package: grep - version: 3.9 - - package: grub - version: 2.06 - patches: - - "0024-gptprio_test-check-GPT-is-repaired-when-appropriate.patch" - - "0027-gpt-add-helper-for-picking-a-valid-header.patch" - - "0008-gpt-add-a-new-generic-GUID-type.patch" - - "0037-gpt-read-entries-table-at-the-same-time-as-the-heade.patch" - - "0001-setup-Add-root-device-argument-to-grub-setup.patch" - - "0023-gptrepair_test-fix-typo-in-cleanup-trap.patch" - - "0010-gpt-split-out-checksum-recomputation.patch" - - "0048-add-flag-to-only-search-root-dev.patch" - - "0005-gpt-consolidate-crc32-computation-code.patch" - - "0035-gpt-always-revalidate-when-recomputing-checksums.patch" - - "0012-gpt-switch-partition-names-to-a-16-bit-type.patch" - - "0004-gpt-record-size-of-of-the-entries-table.patch" - - "0014-gpt-add-search-by-partition-label-and-uuid-commands.patch" - - "0017-gpt-add-search-by-disk-uuid-command.patch" - - "0007-gpt-add-write-function-and-gptrepair-command.patch" - - "0009-gpt-new-gptprio.next-command-for-selecting-priority-.patch" - - "0021-gpt-refuse-to-write-to-sector-0.patch" - - "0013-tests-add-some-partitions-to-the-gpt-unit-test-data.patch" - - "0016-gpt-minor-cleanup.patch" - - "0011-gpt-move-gpt-guid-printing-function-to-common-librar.patch" - - "0046-Revert-sb-Add-fallback-to-EFI-LoadImage-if-shim_lock.patch" - - "0015-gpt-clean-up-little-endian-crc32-computation.patch" - - "0036-gpt-include-backup-in-sync-check-in-revalidation.patch" - - "0040-gpt-write-backup-GPT-first-skip-if-inaccessible.patch" - - "0019-gpt-add-verbose-debug-logging.patch" - - "0018-gpt-do-not-use-disk-sizes-GRUB-will-reject-as-invali.patch" - - "0041-gptprio-Use-Bottlerocket-boot-partition-type-GUID.patch" - - "0022-gpt-properly-detect-and-repair-invalid-tables.patch" - - "0032-gpt-check-header-and-entries-status-bits-together.patch" - - "0006-gpt-add-new-repair-function-to-sync-up-primary-and-b.patch" - - "0039-gpt-rename-and-update-documentation-for-grub_gpt_upd.patch" - - "0044-efi-return-virtual-size-of-section-found-by-grub_efi.patch" - - "0020-gpt-improve-validation-of-GPT-headers.patch" - - "0026-gpt-prefer-disk-size-from-header-over-firmware.patch" - - "0043-util-mkimage-avoid-adding-section-table-entry-outsid.patch" - - "0047-Revert-UBUNTU-Move-verifiers-after-decompressors.patch" - - "0045-mkimage-pgp-move-single-public-key-into-its-own-sect.patch" - - "0031-gpt-do-not-use-an-enum-for-status-bit-values.patch" - - "0033-gpt-be-more-careful-about-relocating-backup-header.patch" - - "0028-gptrepair-fix-status-checking.patch" - - "0042-util-mkimage-Bump-EFI-PE-header-size-to-accommodate-.patch" - - "0029-gpt-use-inline-functions-for-checking-status-bits.patch" - - "0025-gpt-fix-partition-table-indexing-and-validation.patch" - - "0003-gpt-rename-misnamed-header-location-fields.patch" - - "0002-gpt-start-new-GPT-module.patch" - - "0038-gpt-report-all-revalidation-errors.patch" - - "0030-gpt-allow-repair-function-to-noop.patch" - - "0034-gpt-selectively-update-fields-during-repair.patch" - - package: host-ctr - version: 0.0 - - package: iproute - version: 6.4.0 - patches: - - "0001-skip-libelf-check.patch" - - package: iptables - version: 1.8.9 - patches: - - "1001-extensions-NAT-Fix-for-Werror-format-security.patch" - - "1002-ip6tables-Fix-checking-existence-of-rule.patch" - - package: iputils - version: 20240117 - - package: kernel-5.10 - version: 5.10.218 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "5001-Revert-netfilter-nf_tables-drop-map-element-referenc.patch" - - "1003-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "2000-kbuild-move-module-strip-compression-code-into-scrip.patch" - - "1002-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - "2001-kbuild-add-support-for-zstd-compressed-modules.patch" - - package: kernel-5.15 - version: 5.15.160 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "1002-Revert-kbuild-hide-tools-build-targets-from-external.patch" - - "1004-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "1003-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - package: kernel-6.1 - version: 6.1.92 - patches: - - "1001-Makefile-add-prepare-target-for-external-modules.patch" - - "1002-Revert-kbuild-hide-tools-build-targets-from-external.patch" - - "1004-af_unix-increase-default-max_dgram_qlen-to-512.patch" - - "1003-initramfs-unlink-INITRAMFS_FORCE-from-CMDLINE_-EXTEN.patch" - - "1005-Revert-Revert-drm-fb_helper-improve-CONFIG_FB-depend.patch" - - package: kexec-tools - version: 2.0.28 - - package: keyutils - version: 1.6.1 - - package: kmod - version: 31 - - package: kmod-5.10-nvidia - version: 1.0.0 - - package: kmod-5.15-nvidia - version: 1.0.0 - - package: kmod-6.1-nvidia - version: 1.0.0 - - package: kubernetes-1.23 - version: 1.23.17 - - package: kubernetes-1.24 - version: 1.24.17 - - package: kubernetes-1.25 - version: 1.25.16 - - package: kubernetes-1.26 - version: 1.26.14 - - package: kubernetes-1.27 - version: 1.27.11 - - package: kubernetes-1.28 - version: 1.28.7 - - package: kubernetes-1.29 - version: 1.29.1 - - package: kubernetes-1.30 - version: 1.30.0 - - package: libacl - version: 2.3.2 - - package: libattr - version: 2.5.2 - - package: libaudit - version: 3.1.4 - - package: libcap - version: 2.69 - patches: - - "9001-dont-test-during-install.patch" - - package: libdbus - version: 1.15.6 - - package: libelf - version: 0.191 - - package: libexpat - version: 2.6.2 - - package: libffi - version: 3.4.6 - - package: libgcc - version: 0.0 - - package: libglib - version: 2.78.4 - - package: libinih - version: 58 - - package: libiw - version: 29 - patches: - - "wireless-tools-29-makefile.patch" - - package: libkcapi - version: 1.5.0 - - package: libmnl - version: 1.0.5 - - package: libncurses - version: 6.4 - patches: - - "ncurses-config.patch" - - "ncurses-libs.patch" - - "ncurses-urxvt.patch" - - "ncurses-kbs.patch" - - package: libnetfilter_conntrack - version: 1.0.9 - - package: libnetfilter_cthelper - version: 1.0.1 - - package: libnetfilter_cttimeout - version: 1.0.1 - - package: libnetfilter_queue - version: 1.0.5 - - package: libnfnetlink - version: 1.0.2 - - package: libnftnl - version: 1.2.6 - - package: libnl - version: 3.9.0 - - package: libnvidia-container - version: 1.13.5 - patches: - - "0004-Use-NVIDIA_PATH-to-look-up-binaries.patch" - - "0002-use-prefix-from-environment.patch" - - "0001-use-shared-libtirpc.patch" - - "0003-keep-debug-symbols.patch" - - "0005-makefile-avoid-ldconfig-when-cross-compiling.patch" - - package: libpcre - version: 10.43 - - package: libseccomp - version: 2.5.5 - - package: libselinux - version: 3.6 - - package: libsemanage - version: 3.6 - patches: - - "0001-remove-bzip2-dependency.patch" - - package: libsepol - version: 3.6 - patches: - - "0001-libsepol-cil-Check-common-perms-when-verifiying-all.patch" - - package: libstd-rust - version: 0.0 - - package: libtirpc - version: 1.3.4 - - package: liburcu - version: 0.14.0 - - package: libxcrypt - version: 4.4.36 - - package: libz - version: 1.3.1 - - package: libzstd - version: 1.5.6 - - package: linux-firmware - version: 20230625 - patches: - - "0005-linux-firmware-usb-remove-firmware-for-USB-Serial-PC.patch" - - "0001-linux-firmware-snd-remove-firmware-for-snd-audio-dev.patch" - - "0007-linux-firmware-Remove-firmware-for-Accelarator-devic.patch" - - "0002-linux-firmware-video-Remove-firmware-for-video-broad.patch" - - "0006-linux-firmware-ethernet-Remove-firmware-for-ethernet.patch" - - "0004-linux-firmware-scsi-Remove-firmware-for-SCSI-devices.patch" - - "0010-linux-firmware-amd-ucode-Remove-amd-microcode.patch" - - "0009-linux-firmware-various-Remove-firmware-for-various-d.patch" - - "0008-linux-firmware-gpu-Remove-firmware-for-GPU-devices.patch" - - "0003-linux-firmware-bt-wifi-Remove-firmware-for-Bluetooth.patch" - - package: login - version: 0.0.1 - - package: makedumpfile - version: 1.7.5 - patches: - - "0000-fix-strip-invocation-for-TARGET-env-variable.patch" - - "0001-do-not-overlink-with-bzip2.patch" - - package: microcode - version: 0.0 - - package: netdog - version: 0.1.1 - - package: nvidia-container-toolkit - version: 1.13.5 - - package: nvidia-k8s-device-plugin - version: 0.14.4 - - package: oci-add-hooks - version: 1.0.0 - - package: open-vm-tools - version: 12.3.5 - patches: - - "0002-dont-force-cppflags.patch" - - "0003-Update-shutdown-code-to-work-for-Bottlerocket.patch" - - "0001-no_cflags_werror.patch" - - package: os - version: 0.0 - - package: pigz - version: 2.8 - - package: policycoreutils - version: 3.6 - - package: procps - version: 4.0.4 - - package: readline - version: 8.2 - patches: - - "readline-8.2-shlib.patch" - - package: release - version: 0.0 - - package: runc - version: 1.1.12 - - package: selinux-policy - version: 0.0 - - package: settings-aws - version: 0.0 - - package: settings-container-registry - version: 0.0 - - package: settings-kernel - version: 0.0 - - package: settings-motd - version: 0.0 - - package: settings-ntp - version: 0.0 - - package: settings-updates - version: 0.0 - - package: shim - version: 15.8 - - package: static-pods - version: 0.1 - - package: strace - version: 6.8 - - package: systemd - version: 252.22 - patches: - - "9013-sd-dhcp-lease-parse-multiple-domains-in-option-15.patch" - - "9010-units-keep-modprobe-service-units-running.patch" - - "9004-units-mount-tmp-with-noexec.patch" - - "9007-pkg-config-stop-hardcoding-prefix-to-usr.patch" - - "9014-meson-make-gpt-auto-generator-selectable-at-build-ti.patch" - - "1001-sd-netlink-make-calc_elapse-return-USEC_INFINITY-whe.patch" - - "9012-core-mount-increase-mount-rate-limit-burst-to-25.patch" - - "9009-sysusers-set-root-shell-to-sbin-nologin.patch" - - "9002-core-add-separate-timeout-for-system-shutdown.patch" - - "9006-mount-setup-mount-etc-with-specific-label.patch" - - "9011-systemd-networkd-Conditionalize-hostnamed-timezoned-.patch" - - "9008-sysctl-do-not-set-rp_filter-via-wildcard.patch" - - "9001-use-absolute-path-for-var-run-symlink.patch" - - "9005-mount-setup-apply-noexec-to-more-mounts.patch" - - "9003-machine-id-setup-generate-stable-ID-under-Xen-and-VM.patch" - - "1002-sd-netlink-make-the-default-timeout-configurable-by-.patch" - - package: util-linux - version: 2.39.3 - - package: wicked - version: 0.6.68 - patches: - - "1003-ship-mkconst-and-schema-sources-for-runtime-use.patch" - - "0001-dhcp6-refresh-ipv6-flags-on-staring-in-auto-mode.patch" - - "1005-client-validate-ethernet-namespace-node.patch" - - "1004-adjust-safeguard-for-dhcp6-defer-timeout.patch" - - "1007-dhpc6-don-t-cancel-transmission-if-random-delay-happ.patch" - - "1001-avoid-gcrypt-dependency.patch" - - "1006-server-discover-hardware-address-of-unconfigured-int.patch" - - "1002-exclude-unused-components.patch" - - "1008-dhcp6-reduce-maximum-initial-solicitation-delay-to-1.patch" - - package: xfsprogs - version: 6.7.0 ---- - -{{< packages-table >}} diff --git a/content/en/os/1.20.x/version-information/packages/_index.markdown b/content/en/os/1.20.x/version-information/packages/_index.markdown deleted file mode 100644 index d45e7bea..00000000 --- a/content/en/os/1.20.x/version-information/packages/_index.markdown +++ /dev/null @@ -1,5 +0,0 @@ -+++ -title="Package Versions" -type="docs" -description="Versions of packages included in this release of Bottlerocket" -+++ diff --git a/content/en/os/1.20.x/version-information/variants/index.markdown b/content/en/os/1.20.x/version-information/variants/index.markdown deleted file mode 100644 index 6570701f..00000000 --- a/content/en/os/1.20.x/version-information/variants/index.markdown +++ /dev/null @@ -1,10 +0,0 @@ -+++ -title = "Variants & Kernels" -description = "Kernel versions and parameters specific for each Bottlerocket variant" -type = "docs" -+++ -{{< page-ver >}} - -See [_Update Policy_ in the Security Features document on GitHub](https://github.com/bottlerocket-os/bottlerocket/blob/develop/SECURITY_FEATURES.md#update-policy) for information on when and how Bottlerocket applies security patches to variants. - -{{< kernel-variant-info >}} diff --git a/data/homepagediagrams/variants.toml b/data/homepagediagrams/variants.toml index d2291c11..16943cb1 100644 --- a/data/homepagediagrams/variants.toml +++ b/data/homepagediagrams/variants.toml @@ -1,11 +1,11 @@ # This drives the variants diagram on the homepage [bottlerocket_versions] major= 1 -minor= 20 +minor= 19 [k8s_versions] -newer= 1.30 -older= 1.29 +newer= 1.29 +older= 1.28 [ecs_versions] newer= 2 diff --git a/data/nvidia/1.20.0/kmod-5.10-nvidia.toml b/data/nvidia/1.20.0/kmod-5.10-nvidia.toml deleted file mode 100644 index a2ecbc1e..00000000 --- a/data/nvidia/1.20.0/kmod-5.10-nvidia.toml +++ /dev/null @@ -1,28 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-5.10-nvidia/Cargo.toml -[package] -name = "kmod-5_10-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-5.10-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/470.239.06/NVIDIA-Linux-x86_64-470.239.06.run" -sha512 = "92bdfb11db405071cd58deed2a0853448932657e256258e0a0bda5069f00485e2b6e49b4a0eeff499a4991be4f884273f3564c164110b1ed1f5d924506f13e2d" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/470.239.06/NVIDIA-Linux-aarch64-470.239.06.run" -sha512 = "e448c18cf243233387d3bde4fff4d6fa1eaccc743706f18fd3c6431ce73c8f4ac49009a18ff6bd7796456ce719905bb7611548bf68d61259285f5d5f1d061c0f" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-5_10 = { path = "../kernel-5.10" } diff --git a/data/nvidia/1.20.0/kmod-5.15-nvidia.toml b/data/nvidia/1.20.0/kmod-5.15-nvidia.toml deleted file mode 100644 index bee47130..00000000 --- a/data/nvidia/1.20.0/kmod-5.15-nvidia.toml +++ /dev/null @@ -1,38 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-5.15-nvidia/Cargo.toml -[package] -name = "kmod-5_15-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-5.15-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.161.07/NVIDIA-Linux-x86_64-535.161.07.run" -sha512 = "4e8dd709157c15519f01a8d419daa098da64666d20a80edf3894239707ff1e83b48553f3edc5d567109d36e52b31ac7c0c7218ea77862a04e89aa3cc1f16a5ba" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.161.07/NVIDIA-Linux-aarch64-535.161.07.run" -sha512 = "bb96a28b45197003480ae223c71a5426ef5258a31eaa485cab0cf4b86bed166482734784f20c6370a1155f3ff991652cac15f1b1083d2fb056677e6881b219e2" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/nvidia-driver/redist/fabricmanager/linux-x86_64/fabricmanager-linux-x86_64-535.161.07-archive.tar.xz" -sha512 = "868b35d567e4c6dccbff0f7e8f74bc55781c8d71db995fd9e471829afec0b44fd430caba964377052678e244d18ea999133487f9a3c50c7289f381480b24c55d" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/nvidia-driver/redist/fabricmanager/linux-sbsa/fabricmanager-linux-sbsa-535.161.07-archive.tar.xz" -sha512 = "f37f7a24e31dd6ed184d1041616abb8cfcb0ddaec79778930db79bbef8b23b3d468daaa9c156a6cf7a7f2ffc0507e78e2bb6215f70bc39d11bb0ee16c5ef4c82" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-5_15 = { path = "../kernel-5.15" } diff --git a/data/nvidia/1.20.0/kmod-6.1-nvidia.toml b/data/nvidia/1.20.0/kmod-6.1-nvidia.toml deleted file mode 100644 index 675476f4..00000000 --- a/data/nvidia/1.20.0/kmod-6.1-nvidia.toml +++ /dev/null @@ -1,38 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-6.1-nvidia/Cargo.toml -[package] -name = "kmod-6_1-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-6.1-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.161.07/NVIDIA-Linux-x86_64-535.161.07.run" -sha512 = "4e8dd709157c15519f01a8d419daa098da64666d20a80edf3894239707ff1e83b48553f3edc5d567109d36e52b31ac7c0c7218ea77862a04e89aa3cc1f16a5ba" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.161.07/NVIDIA-Linux-aarch64-535.161.07.run" -sha512 = "bb96a28b45197003480ae223c71a5426ef5258a31eaa485cab0cf4b86bed166482734784f20c6370a1155f3ff991652cac15f1b1083d2fb056677e6881b219e2" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/nvidia-driver/redist/fabricmanager/linux-x86_64/fabricmanager-linux-x86_64-535.161.07-archive.tar.xz" -sha512 = "868b35d567e4c6dccbff0f7e8f74bc55781c8d71db995fd9e471829afec0b44fd430caba964377052678e244d18ea999133487f9a3c50c7289f381480b24c55d" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/nvidia-driver/redist/fabricmanager/linux-sbsa/fabricmanager-linux-sbsa-535.161.07-archive.tar.xz" -sha512 = "f37f7a24e31dd6ed184d1041616abb8cfcb0ddaec79778930db79bbef8b23b3d468daaa9c156a6cf7a7f2ffc0507e78e2bb6215f70bc39d11bb0ee16c5ef4c82" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-6_1 = { path = "../kernel-6.1" } diff --git a/data/nvidia/1.20.1/kmod-5.10-nvidia.toml b/data/nvidia/1.20.1/kmod-5.10-nvidia.toml deleted file mode 100644 index c0634bac..00000000 --- a/data/nvidia/1.20.1/kmod-5.10-nvidia.toml +++ /dev/null @@ -1,32 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-5.10-nvidia/Cargo.toml -[package] -name = "kmod-5_10-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-5.10-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/470.256.02/NVIDIA-Linux-x86_64-470.256.02.run" -sha512 = "a837946dd24d7945c1962a695f1f31965f3ceb6927f52cd08fd51b8db138b7a888bbeab69243f5c8468a7bd7ccd47f5dbdb48a1ca81264866c1ebb7d88628f88" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/470.256.02/NVIDIA-Linux-aarch64-470.256.02.run" -sha512 = "38eee5933355c34ca816a2ac0fbc4f55c19c20e1322891bfc98cb6b37d99a31218eea9314877ab0e3cf3ac6eb61f9d9d4d09d0af304b689f18b4efa721b65d5c" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-5_10 = { path = "../kernel-5.10" } diff --git a/data/nvidia/1.20.1/kmod-5.15-nvidia.toml b/data/nvidia/1.20.1/kmod-5.15-nvidia.toml deleted file mode 100644 index ca2028ec..00000000 --- a/data/nvidia/1.20.1/kmod-5.15-nvidia.toml +++ /dev/null @@ -1,42 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-5.15-nvidia/Cargo.toml -[package] -name = "kmod-5_15-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-5.15-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-x86_64-535.183.01.run" -sha512 = "02b6b679f4fc1d5305f32fca8ce0875eef04cb99f5611d0bb85ac7607ecdd5b2aa4d60b51bf47546477464531a07fffa5bf3db3859868648bd5e86565d85afbb" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-aarch64-535.183.01.run" -sha512 = "d2ac1be8c19b359023c31941374911f3adfe1be34aa2821ef582df4c854ac4eefbbcb10aa22583ac8c9d5caf9326bda12ed1ce6343d67479ed37a4887bd17b5e" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/nvidia-fabric-manager-535.183.01-1.x86_64.rpm" -sha512 = "d52879d1e552b949a529ede9c4ce3e7b66af0df96e8f43906f211673b99815561c83a7c382be17950b1308457ca496ce49adca41766f808cc5a340471353494b" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/sbsa/nvidia-fabric-manager-535.183.01-1.aarch64.rpm" -sha512 = "75e1d306b9aa6cc8737bce50f39dc641f64de6a944c50f2c9706345c656f203c4706414dcb51def7671f0fd02fd18605aa3d62958b690d2705cb7011c54ff48e" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-5_15 = { path = "../kernel-5.15" } diff --git a/data/nvidia/1.20.1/kmod-6.1-nvidia.toml b/data/nvidia/1.20.1/kmod-6.1-nvidia.toml deleted file mode 100644 index bd5f034e..00000000 --- a/data/nvidia/1.20.1/kmod-6.1-nvidia.toml +++ /dev/null @@ -1,42 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-6.1-nvidia/Cargo.toml -[package] -name = "kmod-6_1-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-6.1-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-x86_64-535.183.01.run" -sha512 = "02b6b679f4fc1d5305f32fca8ce0875eef04cb99f5611d0bb85ac7607ecdd5b2aa4d60b51bf47546477464531a07fffa5bf3db3859868648bd5e86565d85afbb" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-aarch64-535.183.01.run" -sha512 = "d2ac1be8c19b359023c31941374911f3adfe1be34aa2821ef582df4c854ac4eefbbcb10aa22583ac8c9d5caf9326bda12ed1ce6343d67479ed37a4887bd17b5e" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/nvidia-fabric-manager-535.183.01-1.x86_64.rpm" -sha512 = "d52879d1e552b949a529ede9c4ce3e7b66af0df96e8f43906f211673b99815561c83a7c382be17950b1308457ca496ce49adca41766f808cc5a340471353494b" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/sbsa/nvidia-fabric-manager-535.183.01-1.aarch64.rpm" -sha512 = "75e1d306b9aa6cc8737bce50f39dc641f64de6a944c50f2c9706345c656f203c4706414dcb51def7671f0fd02fd18605aa3d62958b690d2705cb7011c54ff48e" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-6_1 = { path = "../kernel-6.1" } diff --git a/data/nvidia/1.20.2/kmod-5.10-nvidia.toml b/data/nvidia/1.20.2/kmod-5.10-nvidia.toml deleted file mode 100644 index c0634bac..00000000 --- a/data/nvidia/1.20.2/kmod-5.10-nvidia.toml +++ /dev/null @@ -1,32 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-5.10-nvidia/Cargo.toml -[package] -name = "kmod-5_10-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-5.10-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/470.256.02/NVIDIA-Linux-x86_64-470.256.02.run" -sha512 = "a837946dd24d7945c1962a695f1f31965f3ceb6927f52cd08fd51b8db138b7a888bbeab69243f5c8468a7bd7ccd47f5dbdb48a1ca81264866c1ebb7d88628f88" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/470.256.02/NVIDIA-Linux-aarch64-470.256.02.run" -sha512 = "38eee5933355c34ca816a2ac0fbc4f55c19c20e1322891bfc98cb6b37d99a31218eea9314877ab0e3cf3ac6eb61f9d9d4d09d0af304b689f18b4efa721b65d5c" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-5_10 = { path = "../kernel-5.10" } diff --git a/data/nvidia/1.20.2/kmod-5.15-nvidia.toml b/data/nvidia/1.20.2/kmod-5.15-nvidia.toml deleted file mode 100644 index ca2028ec..00000000 --- a/data/nvidia/1.20.2/kmod-5.15-nvidia.toml +++ /dev/null @@ -1,42 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-5.15-nvidia/Cargo.toml -[package] -name = "kmod-5_15-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-5.15-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-x86_64-535.183.01.run" -sha512 = "02b6b679f4fc1d5305f32fca8ce0875eef04cb99f5611d0bb85ac7607ecdd5b2aa4d60b51bf47546477464531a07fffa5bf3db3859868648bd5e86565d85afbb" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-aarch64-535.183.01.run" -sha512 = "d2ac1be8c19b359023c31941374911f3adfe1be34aa2821ef582df4c854ac4eefbbcb10aa22583ac8c9d5caf9326bda12ed1ce6343d67479ed37a4887bd17b5e" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/nvidia-fabric-manager-535.183.01-1.x86_64.rpm" -sha512 = "d52879d1e552b949a529ede9c4ce3e7b66af0df96e8f43906f211673b99815561c83a7c382be17950b1308457ca496ce49adca41766f808cc5a340471353494b" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/sbsa/nvidia-fabric-manager-535.183.01-1.aarch64.rpm" -sha512 = "75e1d306b9aa6cc8737bce50f39dc641f64de6a944c50f2c9706345c656f203c4706414dcb51def7671f0fd02fd18605aa3d62958b690d2705cb7011c54ff48e" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-5_15 = { path = "../kernel-5.15" } diff --git a/data/nvidia/1.20.2/kmod-6.1-nvidia.toml b/data/nvidia/1.20.2/kmod-6.1-nvidia.toml deleted file mode 100644 index bd5f034e..00000000 --- a/data/nvidia/1.20.2/kmod-6.1-nvidia.toml +++ /dev/null @@ -1,42 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-6.1-nvidia/Cargo.toml -[package] -name = "kmod-6_1-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-6.1-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-x86_64-535.183.01.run" -sha512 = "02b6b679f4fc1d5305f32fca8ce0875eef04cb99f5611d0bb85ac7607ecdd5b2aa4d60b51bf47546477464531a07fffa5bf3db3859868648bd5e86565d85afbb" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-aarch64-535.183.01.run" -sha512 = "d2ac1be8c19b359023c31941374911f3adfe1be34aa2821ef582df4c854ac4eefbbcb10aa22583ac8c9d5caf9326bda12ed1ce6343d67479ed37a4887bd17b5e" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/nvidia-fabric-manager-535.183.01-1.x86_64.rpm" -sha512 = "d52879d1e552b949a529ede9c4ce3e7b66af0df96e8f43906f211673b99815561c83a7c382be17950b1308457ca496ce49adca41766f808cc5a340471353494b" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/sbsa/nvidia-fabric-manager-535.183.01-1.aarch64.rpm" -sha512 = "75e1d306b9aa6cc8737bce50f39dc641f64de6a944c50f2c9706345c656f203c4706414dcb51def7671f0fd02fd18605aa3d62958b690d2705cb7011c54ff48e" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-6_1 = { path = "../kernel-6.1" } diff --git a/data/nvidia/1.20.3/kmod-5.10-nvidia.toml b/data/nvidia/1.20.3/kmod-5.10-nvidia.toml deleted file mode 100644 index c0634bac..00000000 --- a/data/nvidia/1.20.3/kmod-5.10-nvidia.toml +++ /dev/null @@ -1,32 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-5.10-nvidia/Cargo.toml -[package] -name = "kmod-5_10-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-5.10-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/470.256.02/NVIDIA-Linux-x86_64-470.256.02.run" -sha512 = "a837946dd24d7945c1962a695f1f31965f3ceb6927f52cd08fd51b8db138b7a888bbeab69243f5c8468a7bd7ccd47f5dbdb48a1ca81264866c1ebb7d88628f88" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/470.256.02/NVIDIA-Linux-aarch64-470.256.02.run" -sha512 = "38eee5933355c34ca816a2ac0fbc4f55c19c20e1322891bfc98cb6b37d99a31218eea9314877ab0e3cf3ac6eb61f9d9d4d09d0af304b689f18b4efa721b65d5c" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-5_10 = { path = "../kernel-5.10" } diff --git a/data/nvidia/1.20.3/kmod-5.15-nvidia.toml b/data/nvidia/1.20.3/kmod-5.15-nvidia.toml deleted file mode 100644 index ca2028ec..00000000 --- a/data/nvidia/1.20.3/kmod-5.15-nvidia.toml +++ /dev/null @@ -1,42 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-5.15-nvidia/Cargo.toml -[package] -name = "kmod-5_15-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-5.15-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-x86_64-535.183.01.run" -sha512 = "02b6b679f4fc1d5305f32fca8ce0875eef04cb99f5611d0bb85ac7607ecdd5b2aa4d60b51bf47546477464531a07fffa5bf3db3859868648bd5e86565d85afbb" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-aarch64-535.183.01.run" -sha512 = "d2ac1be8c19b359023c31941374911f3adfe1be34aa2821ef582df4c854ac4eefbbcb10aa22583ac8c9d5caf9326bda12ed1ce6343d67479ed37a4887bd17b5e" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/nvidia-fabric-manager-535.183.01-1.x86_64.rpm" -sha512 = "d52879d1e552b949a529ede9c4ce3e7b66af0df96e8f43906f211673b99815561c83a7c382be17950b1308457ca496ce49adca41766f808cc5a340471353494b" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/sbsa/nvidia-fabric-manager-535.183.01-1.aarch64.rpm" -sha512 = "75e1d306b9aa6cc8737bce50f39dc641f64de6a944c50f2c9706345c656f203c4706414dcb51def7671f0fd02fd18605aa3d62958b690d2705cb7011c54ff48e" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-5_15 = { path = "../kernel-5.15" } diff --git a/data/nvidia/1.20.3/kmod-6.1-nvidia.toml b/data/nvidia/1.20.3/kmod-6.1-nvidia.toml deleted file mode 100644 index bd5f034e..00000000 --- a/data/nvidia/1.20.3/kmod-6.1-nvidia.toml +++ /dev/null @@ -1,42 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/tree/develop/packages/kmod-6.1-nvidia/Cargo.toml -[package] -name = "kmod-6_1-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-6.1-nvidia" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-x86_64-535.183.01.run" -sha512 = "02b6b679f4fc1d5305f32fca8ce0875eef04cb99f5611d0bb85ac7607ecdd5b2aa4d60b51bf47546477464531a07fffa5bf3db3859868648bd5e86565d85afbb" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/535.183.01/NVIDIA-Linux-aarch64-535.183.01.run" -sha512 = "d2ac1be8c19b359023c31941374911f3adfe1be34aa2821ef582df4c854ac4eefbbcb10aa22583ac8c9d5caf9326bda12ed1ce6343d67479ed37a4887bd17b5e" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/nvidia-fabric-manager-535.183.01-1.x86_64.rpm" -sha512 = "d52879d1e552b949a529ede9c4ce3e7b66af0df96e8f43906f211673b99815561c83a7c382be17950b1308457ca496ce49adca41766f808cc5a340471353494b" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/rhel9/sbsa/nvidia-fabric-manager-535.183.01-1.aarch64.rpm" -sha512 = "75e1d306b9aa6cc8737bce50f39dc641f64de6a944c50f2c9706345c656f203c4706414dcb51def7671f0fd02fd18605aa3d62958b690d2705cb7011c54ff48e" -force-upstream = true - -[build-dependencies] -glibc = { path = "../glibc" } -kernel-6_1 = { path = "../kernel-6.1" } diff --git a/data/variants/1.20.x/aws-dev.toml b/data/variants/1.20.x/aws-dev.toml deleted file mode 100644 index 44565a8a..00000000 --- a/data/variants/1.20.x/aws-dev.toml +++ /dev/null @@ -1,57 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-dev/Cargo.toml -[package] -name = "aws-dev" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -xfs-data-partition = true -uefi-secure-boot = true -systemd-networkd = true - -[package.metadata.build-variant] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] -included-packages = [ -# core - "release", - "kernel-6.1", -# docker - "docker-cli", - "docker-engine", - "docker-init", -# tools - "login", - "iputils", - "strace", - "chrony-tools", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# docker -docker-cli = { path = "../../packages/docker-cli" } -docker-engine = { path = "../../packages/docker-engine" } -docker-init = { path = "../../packages/docker-init" } -# tools -login = { path = "../../packages/login" } -iputils = { path = "../../packages/iputils" } -strace = { path = "../../packages/strace" } -chrony = { path = "../../packages/chrony" } diff --git a/data/variants/1.20.x/aws-ecs-1-nvidia.toml b/data/variants/1.20.x/aws-ecs-1-nvidia.toml deleted file mode 100644 index 5d82ca52..00000000 --- a/data/variants/1.20.x/aws-ecs-1-nvidia.toml +++ /dev/null @@ -1,53 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-ecs-1-nvidia/Cargo.toml -[package] -name = "aws-ecs-1-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 - -[package.metadata.build-variant] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "systemd.unified_cgroup_hierarchy=0", - "quiet", -] -included-packages = [ -# core - "release", - "kernel-5.10", -# docker - "docker-cli", - "docker-engine", - "docker-init", -# ecs - "ecs-agent-nvidia-config", -# NVIDIA support - "ecs-gpu-init", - "nvidia-container-toolkit-ecs", - "kmod-5.10-nvidia-tesla-470", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-5_10 = { path = "../../packages/kernel-5.10" } -# docker -docker-cli = { path = "../../packages/docker-cli" } -docker-engine = { path = "../../packages/docker-engine" } -docker-init = { path = "../../packages/docker-init" } -# ecs -ecs-agent = { path = "../../packages/ecs-agent" } -# NVIDIA -ecs-gpu-init = { path = "../../packages/ecs-gpu-init" } -nvidia-container-toolkit = { path = "../../packages/nvidia-container-toolkit" } -kmod-5_10-nvidia = { path = "../../packages/kmod-5.10-nvidia" } diff --git a/data/variants/1.20.x/aws-ecs-1.toml b/data/variants/1.20.x/aws-ecs-1.toml deleted file mode 100644 index 30d11152..00000000 --- a/data/variants/1.20.x/aws-ecs-1.toml +++ /dev/null @@ -1,42 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-ecs-1/Cargo.toml -[package] -name = "aws-ecs-1" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[package.metadata.build-variant] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "systemd.unified_cgroup_hierarchy=0", - "quiet", -] -included-packages = [ -# core - "release", - "kernel-5.10", -# docker - "docker-cli", - "docker-engine", - "docker-init", -# ecs - "ecs-agent-config", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-5_10 = { path = "../../packages/kernel-5.10" } -# docker -docker-cli = { path = "../../packages/docker-cli" } -docker-engine = { path = "../../packages/docker-engine" } -docker-init = { path = "../../packages/docker-init" } -# ecs -ecs-agent = { path = "../../packages/ecs-agent" } diff --git a/data/variants/1.20.x/aws-ecs-2-nvidia.toml b/data/variants/1.20.x/aws-ecs-2-nvidia.toml deleted file mode 100644 index c4909183..00000000 --- a/data/variants/1.20.x/aws-ecs-2-nvidia.toml +++ /dev/null @@ -1,59 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-ecs-2-nvidia/Cargo.toml -[package] -name = "aws-ecs-2-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 - -[package.metadata.build-variant] -included-packages = [ -# core - "release", - "kernel-6.1", -# docker - "docker-cli", - "docker-engine", - "docker-init", -# ecs - "ecs-agent-nvidia-config", -# NVIDIA support - "ecs-gpu-init", - "nvidia-container-toolkit-ecs", - "kmod-6.1-nvidia-tesla-535", -] - -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# docker -docker-cli = { path = "../../packages/docker-cli" } -docker-engine = { path = "../../packages/docker-engine" } -docker-init = { path = "../../packages/docker-init" } -# ecs -ecs-agent = { path = "../../packages/ecs-agent" } -# NVIDIA -ecs-gpu-init = { path = "../../packages/ecs-gpu-init" } -nvidia-container-toolkit = { path = "../../packages/nvidia-container-toolkit" } -kmod-6_1-nvidia = { path = "../../packages/kmod-6.1-nvidia" } diff --git a/data/variants/1.20.x/aws-ecs-2.toml b/data/variants/1.20.x/aws-ecs-2.toml deleted file mode 100644 index 0994b1b3..00000000 --- a/data/variants/1.20.x/aws-ecs-2.toml +++ /dev/null @@ -1,49 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-ecs-2/Cargo.toml -[package] -name = "aws-ecs-2" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -included-packages = [ -# core - "release", - "kernel-6.1", -# docker - "docker-cli", - "docker-engine", - "docker-init", -# ecs - "ecs-agent-config", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# docker -docker-cli = { path = "../../packages/docker-cli" } -docker-engine = { path = "../../packages/docker-engine" } -docker-init = { path = "../../packages/docker-init" } -# ecs -ecs-agent = { path = "../../packages/ecs-agent" } diff --git a/data/variants/1.20.x/aws-k8s-1.23-nvidia.toml b/data/variants/1.20.x/aws-k8s-1.23-nvidia.toml deleted file mode 100644 index 5b0c170f..00000000 --- a/data/variants/1.20.x/aws-k8s-1.23-nvidia.toml +++ /dev/null @@ -1,52 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.23-nvidia/Cargo.toml -[package] -# This is the aws-k8s-1.23-nvidia variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_23-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-5.10", - "kubelet-1.23", - "release", - "nvidia-container-toolkit-k8s", - "nvidia-k8s-device-plugin", - "kmod-5.10-nvidia-tesla-470", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "systemd.unified_cgroup_hierarchy=0", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-5_10 = { path = "../../packages/kernel-5.10" } -kubernetes-1_23 = { path = "../../packages/kubernetes-1.23" } -release = { path = "../../packages/release" } -nvidia-container-toolkit = { path = "../../packages/nvidia-container-toolkit" } -nvidia-k8s-device-plugin = { path = "../../packages/nvidia-k8s-device-plugin" } -kmod-5_10-nvidia = { path = "../../packages/kmod-5.10-nvidia" } diff --git a/data/variants/1.20.x/aws-k8s-1.23.toml b/data/variants/1.20.x/aws-k8s-1.23.toml deleted file mode 100644 index c7925ced..00000000 --- a/data/variants/1.20.x/aws-k8s-1.23.toml +++ /dev/null @@ -1,43 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.23/Cargo.toml -[package] -# This is the aws-k8s-1.23 variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_23" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-5.10", - "kubelet-1.23", - "release", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "systemd.unified_cgroup_hierarchy=0", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-5_10 = { path = "../../packages/kernel-5.10" } -kubernetes-1_23= { path = "../../packages/kubernetes-1.23" } -release = { path = "../../packages/release" } diff --git a/data/variants/1.20.x/aws-k8s-1.24-nvidia.toml b/data/variants/1.20.x/aws-k8s-1.24-nvidia.toml deleted file mode 100644 index 1baae75a..00000000 --- a/data/variants/1.20.x/aws-k8s-1.24-nvidia.toml +++ /dev/null @@ -1,52 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.24-nvidia/Cargo.toml -[package] -# This is the aws-k8s-1.24-nvidia variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_24-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-5.15", - "kubelet-1.24", - "release", - "nvidia-container-toolkit-k8s", - "nvidia-k8s-device-plugin", - "kmod-5.15-nvidia-tesla-535", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "systemd.unified_cgroup_hierarchy=0", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-5_15 = { path = "../../packages/kernel-5.15" } -kubernetes-1_24 = { path = "../../packages/kubernetes-1.24" } -release = { path = "../../packages/release" } -nvidia-container-toolkit = { path = "../../packages/nvidia-container-toolkit" } -nvidia-k8s-device-plugin = { path = "../../packages/nvidia-k8s-device-plugin" } -kmod-5_15-nvidia = { path = "../../packages/kmod-5.15-nvidia" } diff --git a/data/variants/1.20.x/aws-k8s-1.24.toml b/data/variants/1.20.x/aws-k8s-1.24.toml deleted file mode 100644 index 462b2786..00000000 --- a/data/variants/1.20.x/aws-k8s-1.24.toml +++ /dev/null @@ -1,43 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.24/Cargo.toml -[package] -# This is the aws-k8s-1.24 variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_24" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-5.15", - "kubelet-1.24", - "release", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "systemd.unified_cgroup_hierarchy=0", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-5_15 = { path = "../../packages/kernel-5.15" } -kubernetes-1_24= { path = "../../packages/kubernetes-1.24" } -release = { path = "../../packages/release" } diff --git a/data/variants/1.20.x/aws-k8s-1.25-nvidia.toml b/data/variants/1.20.x/aws-k8s-1.25-nvidia.toml deleted file mode 100644 index 6f0de379..00000000 --- a/data/variants/1.20.x/aws-k8s-1.25-nvidia.toml +++ /dev/null @@ -1,52 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.25-nvidia/Cargo.toml -[package] -# This is the aws-k8s-1.25-nvidia variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_25-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-5.15", - "kubelet-1.25", - "release", - "nvidia-container-toolkit-k8s", - "nvidia-k8s-device-plugin", - "kmod-5.15-nvidia-tesla-535", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "systemd.unified_cgroup_hierarchy=0", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-5_15 = { path = "../../packages/kernel-5.15" } -kubernetes-1_25 = { path = "../../packages/kubernetes-1.25" } -release = { path = "../../packages/release" } -nvidia-container-toolkit = { path = "../../packages/nvidia-container-toolkit" } -nvidia-k8s-device-plugin = { path = "../../packages/nvidia-k8s-device-plugin" } -kmod-5_15-nvidia = { path = "../../packages/kmod-5.15-nvidia" } diff --git a/data/variants/1.20.x/aws-k8s-1.25.toml b/data/variants/1.20.x/aws-k8s-1.25.toml deleted file mode 100644 index cf236044..00000000 --- a/data/variants/1.20.x/aws-k8s-1.25.toml +++ /dev/null @@ -1,43 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.25/Cargo.toml -[package] -# This is the aws-k8s-1.25 variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_25" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-5.15", - "kubelet-1.25", - "release", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "systemd.unified_cgroup_hierarchy=0", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-5_15 = { path = "../../packages/kernel-5.15" } -kubernetes-1_25 = { path = "../../packages/kubernetes-1.25" } -release = { path = "../../packages/release" } diff --git a/data/variants/1.20.x/aws-k8s-1.26-nvidia.toml b/data/variants/1.20.x/aws-k8s-1.26-nvidia.toml deleted file mode 100644 index c92472c3..00000000 --- a/data/variants/1.20.x/aws-k8s-1.26-nvidia.toml +++ /dev/null @@ -1,51 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.26-nvidia/Cargo.toml -[package] -# This is the aws-k8s-1.26-nvidia variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_26-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-5.15", - "kubelet-1.26", - "release", - "nvidia-container-toolkit-k8s", - "nvidia-k8s-device-plugin", - "kmod-5.15-nvidia-tesla-535", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-5_15 = { path = "../../packages/kernel-5.15" } -kubernetes-1_26 = { path = "../../packages/kubernetes-1.26" } -release = { path = "../../packages/release" } -nvidia-container-toolkit = { path = "../../packages/nvidia-container-toolkit" } -nvidia-k8s-device-plugin = { path = "../../packages/nvidia-k8s-device-plugin" } -kmod-5_15-nvidia = { path = "../../packages/kmod-5.15-nvidia" } diff --git a/data/variants/1.20.x/aws-k8s-1.26.toml b/data/variants/1.20.x/aws-k8s-1.26.toml deleted file mode 100644 index e53ffe8a..00000000 --- a/data/variants/1.20.x/aws-k8s-1.26.toml +++ /dev/null @@ -1,42 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.26/Cargo.toml -[package] -# This is the aws-k8s-1.26 variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_26" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-5.15", - "kubelet-1.26", - "release", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-5_15 = { path = "../../packages/kernel-5.15" } -kubernetes-1_26 = { path = "../../packages/kubernetes-1.26" } -release = { path = "../../packages/release" } diff --git a/data/variants/1.20.x/aws-k8s-1.27-nvidia.toml b/data/variants/1.20.x/aws-k8s-1.27-nvidia.toml deleted file mode 100644 index ba23dbcd..00000000 --- a/data/variants/1.20.x/aws-k8s-1.27-nvidia.toml +++ /dev/null @@ -1,51 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.27-nvidia/Cargo.toml -[package] -# This is the aws-k8s-1.27-nvidia variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_27-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-5.15", - "kubelet-1.27", - "release", - "nvidia-container-toolkit-k8s", - "nvidia-k8s-device-plugin", - "kmod-5.15-nvidia-tesla-535", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-5_15 = { path = "../../packages/kernel-5.15" } -kubernetes-1_27 = { path = "../../packages/kubernetes-1.27" } -release = { path = "../../packages/release" } -nvidia-container-toolkit = { path = "../../packages/nvidia-container-toolkit" } -nvidia-k8s-device-plugin = { path = "../../packages/nvidia-k8s-device-plugin" } -kmod-5_15-nvidia = { path = "../../packages/kmod-5.15-nvidia" } diff --git a/data/variants/1.20.x/aws-k8s-1.27.toml b/data/variants/1.20.x/aws-k8s-1.27.toml deleted file mode 100644 index 8e2fee22..00000000 --- a/data/variants/1.20.x/aws-k8s-1.27.toml +++ /dev/null @@ -1,42 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.27/Cargo.toml -[package] -# This is the aws-k8s-1.27 variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_27" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-5.15", - "kubelet-1.27", - "release", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-5_15 = { path = "../../packages/kernel-5.15" } -kubernetes-1_27 = { path = "../../packages/kubernetes-1.27" } -release = { path = "../../packages/release" } diff --git a/data/variants/1.20.x/aws-k8s-1.28-nvidia.toml b/data/variants/1.20.x/aws-k8s-1.28-nvidia.toml deleted file mode 100644 index 6bec9491..00000000 --- a/data/variants/1.20.x/aws-k8s-1.28-nvidia.toml +++ /dev/null @@ -1,60 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.28-nvidia/Cargo.toml -[package] -# This is the aws-k8s-1.28-nvidia variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_28-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -included-packages = [ - # core - "release", - "kernel-6.1", - # k8s - "cni", - "cni-plugins", - "kubelet-1.28", - "aws-iam-authenticator", - # nvidia - "nvidia-container-toolkit-k8s", - "nvidia-k8s-device-plugin", - "kmod-6.1-nvidia-tesla-535", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_28 = { path = "../../packages/kubernetes-1.28" } -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -# nvidia -nvidia-container-toolkit = { path = "../../packages/nvidia-container-toolkit" } -nvidia-k8s-device-plugin = { path = "../../packages/nvidia-k8s-device-plugin" } -kmod-6_1-nvidia = { path = "../../packages/kmod-6.1-nvidia" } diff --git a/data/variants/1.20.x/aws-k8s-1.28.toml b/data/variants/1.20.x/aws-k8s-1.28.toml deleted file mode 100644 index 74d2dcf6..00000000 --- a/data/variants/1.20.x/aws-k8s-1.28.toml +++ /dev/null @@ -1,49 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.28/Cargo.toml -[package] -# This is the aws-k8s-1.28 variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_28" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -included-packages = [ -# core - "release", - "kernel-6.1", -# k8s - "cni", - "cni-plugins", - "kubelet-1.28", - "aws-iam-authenticator", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_28 = { path = "../../packages/kubernetes-1.28" } -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } diff --git a/data/variants/1.20.x/aws-k8s-1.29-nvidia.toml b/data/variants/1.20.x/aws-k8s-1.29-nvidia.toml deleted file mode 100644 index 17d09936..00000000 --- a/data/variants/1.20.x/aws-k8s-1.29-nvidia.toml +++ /dev/null @@ -1,60 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.29-nvidia/Cargo.toml -[package] -# This is the aws-k8s-1.29-nvidia variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_29-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -included-packages = [ - # core - "release", - "kernel-6.1", - # k8s - "cni", - "cni-plugins", - "kubelet-1.29", - "aws-iam-authenticator", - # nvidia - "nvidia-container-toolkit-k8s", - "nvidia-k8s-device-plugin", - "kmod-6.1-nvidia-tesla-535", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_29 = { path = "../../packages/kubernetes-1.29" } -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -# nvidia -nvidia-container-toolkit = { path = "../../packages/nvidia-container-toolkit" } -nvidia-k8s-device-plugin = { path = "../../packages/nvidia-k8s-device-plugin" } -kmod-6_1-nvidia = { path = "../../packages/kmod-6.1-nvidia" } diff --git a/data/variants/1.20.x/aws-k8s-1.29.toml b/data/variants/1.20.x/aws-k8s-1.29.toml deleted file mode 100644 index 80ac3de9..00000000 --- a/data/variants/1.20.x/aws-k8s-1.29.toml +++ /dev/null @@ -1,49 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.29/Cargo.toml -[package] -# This is the aws-k8s-1.29 variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_29" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -included-packages = [ -# core - "release", - "kernel-6.1", -# k8s - "cni", - "cni-plugins", - "kubelet-1.29", - "aws-iam-authenticator", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_29 = { path = "../../packages/kubernetes-1.29" } -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } diff --git a/data/variants/1.20.x/aws-k8s-1.30-nvidia.toml b/data/variants/1.20.x/aws-k8s-1.30-nvidia.toml deleted file mode 100644 index 2fb6b94b..00000000 --- a/data/variants/1.20.x/aws-k8s-1.30-nvidia.toml +++ /dev/null @@ -1,60 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.30-nvidia/Cargo.toml -[package] -# This is the aws-k8s-1.30-nvidia variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_30-nvidia" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -included-packages = [ - # core - "release", - "kernel-6.1", - # k8s - "cni", - "cni-plugins", - "kubelet-1.30", - "aws-iam-authenticator", - # nvidia - "nvidia-container-toolkit-k8s", - "nvidia-k8s-device-plugin", - "kmod-6.1-nvidia-tesla-535", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_30 = { path = "../../packages/kubernetes-1.30" } -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -# nvidia -nvidia-container-toolkit = { path = "../../packages/nvidia-container-toolkit" } -nvidia-k8s-device-plugin = { path = "../../packages/nvidia-k8s-device-plugin" } -kmod-6_1-nvidia = { path = "../../packages/kmod-6.1-nvidia" } diff --git a/data/variants/1.20.x/aws-k8s-1.30.toml b/data/variants/1.20.x/aws-k8s-1.30.toml deleted file mode 100644 index 8fa3496c..00000000 --- a/data/variants/1.20.x/aws-k8s-1.30.toml +++ /dev/null @@ -1,49 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/aws-k8s-1.30/Cargo.toml -[package] -# This is the aws-k8s-1.30 variant. "." is not allowed in crate names, but we -# don't use this crate name anywhere. -name = "aws-k8s-1_30" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -included-packages = [ -# core - "release", - "kernel-6.1", -# k8s - "cni", - "cni-plugins", - "kubelet-1.30", - "aws-iam-authenticator", -] -kernel-parameters = [ - "console=tty0", - "console=ttyS0,115200n8", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_30 = { path = "../../packages/kubernetes-1.30" } -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } diff --git a/data/variants/1.20.x/metal-dev.toml b/data/variants/1.20.x/metal-dev.toml deleted file mode 100644 index 5d7ba0d7..00000000 --- a/data/variants/1.20.x/metal-dev.toml +++ /dev/null @@ -1,58 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/metal-dev/Cargo.toml -[package] -name = "metal-dev" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -xfs-data-partition = true -uefi-secure-boot = true -systemd-networkd = true - -[package.metadata.build-variant] -image-format = "raw" -kernel-parameters = [ - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M" -] -included-packages = [ -# core - "release", - "kernel-6.1", - "linux-firmware", -# docker - "docker-cli", - "docker-engine", - "docker-init", -# tools - "login", - "iputils", - "strace", - "chrony-tools", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -linux-firmware = { path = "../../packages/linux-firmware" } -# docker -docker-cli = { path = "../../packages/docker-cli" } -docker-engine = { path = "../../packages/docker-engine" } -docker-init = { path = "../../packages/docker-init" } -# tools -login = { path = "../../packages/login" } -iputils = { path = "../../packages/iputils" } -strace = { path = "../../packages/strace" } -chrony = { path = "../../packages/chrony" } diff --git a/data/variants/1.20.x/metal-k8s-1.26.toml b/data/variants/1.20.x/metal-k8s-1.26.toml deleted file mode 100644 index 89023a2d..00000000 --- a/data/variants/1.20.x/metal-k8s-1.26.toml +++ /dev/null @@ -1,47 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/metal-k8s-1.26/Cargo.toml -[package] -# This is the metal-k8s-1.26 variant. "." is not allowed in crate names, but -# we don't use this crate name anywhere. -name = "metal-k8s-1_26" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -image-format = "raw" -supported-arches = ["x86_64"] -kernel-parameters = [ - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M" -] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-6.1", - "linux-firmware", - "kubelet-1.26", - "release", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -linux-firmware = { path = "../../packages/linux-firmware" } -kubernetes-1_26 = { path = "../../packages/kubernetes-1.26" } -release = { path = "../../packages/release" } diff --git a/data/variants/1.20.x/metal-k8s-1.27.toml b/data/variants/1.20.x/metal-k8s-1.27.toml deleted file mode 100644 index 57f96a0b..00000000 --- a/data/variants/1.20.x/metal-k8s-1.27.toml +++ /dev/null @@ -1,47 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/metal-k8s-1.27/Cargo.toml -[package] -# This is the metal-k8s-1.27 variant. "." is not allowed in crate names, but -# we don't use this crate name anywhere. -name = "metal-k8s-1_27" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -image-format = "raw" -supported-arches = ["x86_64"] -kernel-parameters = [ - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M" -] -included-packages = [ - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kernel-6.1", - "linux-firmware", - "kubelet-1.27", - "release", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -linux-firmware = { path = "../../packages/linux-firmware" } -kubernetes-1_27 = { path = "../../packages/kubernetes-1.27" } -release = { path = "../../packages/release" } diff --git a/data/variants/1.20.x/metal-k8s-1.28.toml b/data/variants/1.20.x/metal-k8s-1.28.toml deleted file mode 100644 index 51d3d113..00000000 --- a/data/variants/1.20.x/metal-k8s-1.28.toml +++ /dev/null @@ -1,52 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/metal-k8s-1.28/Cargo.toml -[package] -# This is the metal-k8s-1.28 variant. "." is not allowed in crate names, but -# we don't use this crate name anywhere. -name = "metal-k8s-1_28" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -image-format = "raw" -supported-arches = ["x86_64"] -kernel-parameters = [ - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M" -] -included-packages = [ - # core - "release", - "kernel-6.1", - # k8s - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kubelet-1.28", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_28 = { path = "../../packages/kubernetes-1.28" } diff --git a/data/variants/1.20.x/metal-k8s-1.29.toml b/data/variants/1.20.x/metal-k8s-1.29.toml deleted file mode 100644 index 3c5ac164..00000000 --- a/data/variants/1.20.x/metal-k8s-1.29.toml +++ /dev/null @@ -1,52 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/metal-k8s-1.29/Cargo.toml -[package] -# This is the metal-k8s-1.29 variant. "." is not allowed in crate names, but -# we don't use this crate name anywhere. -name = "metal-k8s-1_29" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -os-image-size-gib = 4 -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -image-format = "raw" -supported-arches = ["x86_64"] -kernel-parameters = [ - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M" -] -included-packages = [ - # core - "release", - "kernel-6.1", - # k8s - "aws-iam-authenticator", - "cni", - "cni-plugins", - "kubelet-1.29", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -aws-iam-authenticator = { path = "../../packages/aws-iam-authenticator" } -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_29 = { path = "../../packages/kubernetes-1.29" } diff --git a/data/variants/1.20.x/vmware-dev.toml b/data/variants/1.20.x/vmware-dev.toml deleted file mode 100644 index ecd71c37..00000000 --- a/data/variants/1.20.x/vmware-dev.toml +++ /dev/null @@ -1,63 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/vmware-dev/Cargo.toml -[package] -name = "vmware-dev" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -xfs-data-partition = true -uefi-secure-boot = true -systemd-networkd = true - -[package.metadata.build-variant] -image-format = "vmdk" -supported-arches = ["x86_64"] -kernel-parameters = [ - "console=tty1", - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] -included-packages = [ -# core - "release", - "kernel-6.1", - "open-vm-tools", -# docker - "docker-cli", - "docker-engine", - "docker-init", -# tools - "login", - "iputils", - "strace", - "chrony-tools", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -open-vm-tools = { path = "../../packages/open-vm-tools" } -# docker -docker-cli = { path = "../../packages/docker-cli" } -docker-engine = { path = "../../packages/docker-engine" } -docker-init = { path = "../../packages/docker-init" } -# tools -login = { path = "../../packages/login" } -iputils = { path = "../../packages/iputils" } -strace = { path = "../../packages/strace" } -chrony = { path = "../../packages/chrony" } diff --git a/data/variants/1.20.x/vmware-k8s-1.26.toml b/data/variants/1.20.x/vmware-k8s-1.26.toml deleted file mode 100644 index 90694e11..00000000 --- a/data/variants/1.20.x/vmware-k8s-1.26.toml +++ /dev/null @@ -1,48 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/vmware-k8s-1.26/Cargo.toml -[package] -# This is the vmware-k8s-1.26 variant. "." is not allowed in crate names, but -# we don't use this crate name anywhere. -name = "vmware-k8s-1_26" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -image-format = "vmdk" -supported-arches = ["x86_64"] -kernel-parameters = [ - "console=tty1", - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] -included-packages = [ - "cni", - "cni-plugins", - "kernel-6.1", - "kubelet-1.26", - "open-vm-tools", - "release", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -kubernetes-1_26 = { path = "../../packages/kubernetes-1.26" } -open-vm-tools = { path = "../../packages/open-vm-tools" } -release = { path = "../../packages/release" } diff --git a/data/variants/1.20.x/vmware-k8s-1.27.toml b/data/variants/1.20.x/vmware-k8s-1.27.toml deleted file mode 100644 index 47b4c122..00000000 --- a/data/variants/1.20.x/vmware-k8s-1.27.toml +++ /dev/null @@ -1,48 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/vmware-k8s-1.27/Cargo.toml -[package] -# This is the vmware-k8s-1.27 variant. "." is not allowed in crate names, but -# we don't use this crate name anywhere. -name = "vmware-k8s-1_27" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true - -[package.metadata.build-variant] -image-format = "vmdk" -supported-arches = ["x86_64"] -kernel-parameters = [ - "console=tty1", - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] -included-packages = [ - "cni", - "cni-plugins", - "kernel-6.1", - "kubelet-1.27", - "open-vm-tools", - "release", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -kubernetes-1_27 = { path = "../../packages/kubernetes-1.27" } -open-vm-tools = { path = "../../packages/open-vm-tools" } -release = { path = "../../packages/release" } diff --git a/data/variants/1.20.x/vmware-k8s-1.28.toml b/data/variants/1.20.x/vmware-k8s-1.28.toml deleted file mode 100644 index 09e174db..00000000 --- a/data/variants/1.20.x/vmware-k8s-1.28.toml +++ /dev/null @@ -1,57 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/vmware-k8s-1.28/Cargo.toml -[package] -# This is the vmware-k8s-1.28 variant. "." is not allowed in crate names, but -# we don't use this crate name anywhere. -name = "vmware-k8s-1_28" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -image-format = "vmdk" -supported-arches = ["x86_64"] -kernel-parameters = [ - "console=tty1", - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] -included-packages = [ - # core - "release", - "kernel-6.1", - # k8s - "cni", - "cni-plugins", - "kubelet-1.28", - # vmware - "open-vm-tools", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_28 = { path = "../../packages/kubernetes-1.28" } -# vmware -open-vm-tools = { path = "../../packages/open-vm-tools" } diff --git a/data/variants/1.20.x/vmware-k8s-1.29.toml b/data/variants/1.20.x/vmware-k8s-1.29.toml deleted file mode 100644 index 70356904..00000000 --- a/data/variants/1.20.x/vmware-k8s-1.29.toml +++ /dev/null @@ -1,57 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/vmware-k8s-1.29/Cargo.toml -[package] -# This is the vmware-k8s-1.29 variant. "." is not allowed in crate names, but -# we don't use this crate name anywhere. -name = "vmware-k8s-1_29" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -image-format = "vmdk" -supported-arches = ["x86_64"] -kernel-parameters = [ - "console=tty1", - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] -included-packages = [ - # core - "release", - "kernel-6.1", - # k8s - "cni", - "cni-plugins", - "kubelet-1.29", - # vmware - "open-vm-tools", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_29 = { path = "../../packages/kubernetes-1.29" } -# vmware -open-vm-tools = { path = "../../packages/open-vm-tools" } diff --git a/data/variants/1.20.x/vmware-k8s-1.30.toml b/data/variants/1.20.x/vmware-k8s-1.30.toml deleted file mode 100644 index 2d99984e..00000000 --- a/data/variants/1.20.x/vmware-k8s-1.30.toml +++ /dev/null @@ -1,57 +0,0 @@ -# Extracted from https://github.com/bottlerocket-os/bottlerocket/variants/vmware-k8s-1.30/Cargo.toml -[package] -# This is the vmware-k8s-1.30 variant. "." is not allowed in crate names, but -# we don't use this crate name anywhere. -name = "vmware-k8s-1_30" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" -# Don't rebuild crate just because of changes to README. -exclude = ["README.md"] - -[package.metadata.build-variant.image-layout] -partition-plan = "unified" - -[package.metadata.build-variant.image-features] -grub-set-private-var = true -uefi-secure-boot = true -xfs-data-partition = true -systemd-networkd = true - -[package.metadata.build-variant] -image-format = "vmdk" -supported-arches = ["x86_64"] -kernel-parameters = [ - "console=tty1", - # Only reserve if there are at least 2GB - "crashkernel=2G-:256M", - "net.ifnames=0", - "netdog.default-interface=eth0:dhcp4,dhcp6?", - "quiet", -] -included-packages = [ - # core - "release", - "kernel-6.1", - # k8s - "cni", - "cni-plugins", - "kubelet-1.30", - # vmware - "open-vm-tools", -] - -[lib] -path = "../variants.rs" - -[build-dependencies] -# core -release = { path = "../../packages/release" } -kernel-6_1 = { path = "../../packages/kernel-6.1" } -# k8s -cni = { path = "../../packages/cni" } -cni-plugins = { path = "../../packages/cni-plugins" } -kubernetes-1_30 = { path = "../../packages/kubernetes-1.30" } -# vmware -open-vm-tools = { path = "../../packages/open-vm-tools" } diff --git a/data/versions/current.toml b/data/versions/current.toml index 1436badb..cef56a3b 100644 --- a/data/versions/current.toml +++ b/data/versions/current.toml @@ -1,11 +1,11 @@ [os] major = 1 - minor = 20 - patch = 3 - foldable_check_id = "#m-enos120x-check" + minor = 19 + patch = 5 + foldable_check_id = "#m-enos119x-check" # this is the HTML ID of the sidebar hidden checkmark. There is a script that will auto open the correct menu item [k8s] - versions = ["1.23","1.24","1.25","1.26","1.27","1.28","1.29","1.30"] + versions = ["1.23","1.24","1.25","1.26","1.27","1.28","1.29"] [ecs] versions = ["1","2"] diff --git a/layouts/shortcodes/nvidia-versions.html b/layouts/shortcodes/nvidia-versions.html index 81dce952..6c0d85a8 100644 --- a/layouts/shortcodes/nvidia-versions.html +++ b/layouts/shortcodes/nvidia-versions.html @@ -18,14 +18,9 @@ {{- range $kmod_fname, $kmod_data := $kmod_data -}} {{- $k_version := index (split $kmod_fname "-") 1 -}} {{- $external_files := index (index (index (index $kmod_data "package") "metadata") "build-package") "external-files" -}} - {{- range $external_files }} - {{- /* nvidia gpu drivers are self-extracting archives with .run extension */ -}} - {{- if hasSuffix .url ".run" }} - {{- $url := .url -}} - {{- $version := (path.Split (path.Dir $url)).File -}} - {{- $kernel_to_nvidia = merge $kernel_to_nvidia (dict $k_version $version) -}} - {{- end }} - {{- end }} + {{- $url := index (index $external_files 0) "url" -}} + {{- $version := (path.Split (path.Dir $url)).File -}} + {{- $kernel_to_nvidia = merge $kernel_to_nvidia (dict $k_version $version) -}} {{- end -}} @@ -48,6 +43,6 @@ {{- end -}} {{- end -}} {{- end -}} - + - + \ No newline at end of file