Release Alpine 3.13.0 (#108)

3.13.0 release
* add version 3.13 profile
* 3.13 end-of-life is 2022-11-01
* note we're an official Alpine project now!
* releases/alpine.yaml has been "--trim release"'d
* updated releases/README.md

scripts/builder.py
* fix ReleaseReadme() to not die when release contains "_rc"
* add --trim to releases-yaml
* tweak some --help for release-yaml and prune

scripts/setup-ami
* explicitly lock AMI root account
This commit is contained in:
tomalok 2021-01-14 23:53:40 -08:00 committed by GitHub
parent 644ac6b2b7
commit 2bf6727f67
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 273 additions and 1011 deletions

View File

@ -1,12 +1,13 @@
# Alpine Linux EC2 AMI Builder
These are the official Alpine AWS AMIs. For an index of images see the
These are the official Alpine AWS AMIs. For an index of images see the
[Alpine Website](https://alpinelinux.org/cloud/).
## Pre-Built AMIs
***To get started with one of our pre-built minimalist AMIs, please refer to the
[README](releases/README.md) in the [releases](releases) subdirectory.***
***To get started with a pre-built minimalist AMIs, visit
https://alpinelinux.org/cloud, or the [README](releases/README.md) in the
[releases](releases) subdirectory of this repo.***
Alternately, with the right filters, you can query the EC2 API to programmatically
find our most recent AMIs. For example, using the `aws` command line tool...
@ -87,16 +88,13 @@ your profile's `releases/<profile>.yaml`. There are three different levels of
pruning:
* `revision` - keep only the latest revision for each release
* `release` - keep only the latest release for each version
* `version` - remove any end-of-life versions
* `end-of-life` - remove any end-of-life versions
To prune a profile (or optionally one build target of a profile)...
```
./scripts/builder.py prune-amis <profile> [<build>]
```
Any AMIs in the account which are "unknown" (to the profile/build target, at
least) will be called out as such, but will not be pruned.
### Updating the Release README
This make target updates the [releases README](releases/README.md), primarily

View File

@ -1,6 +1,7 @@
### Profile for Building the Publically-Available Alpine Linux AMIs
# vim: ts=2 et:
version-3_13 { include required("version/3.13") }
version-3_12 { include required("version/3.12") }
version-3_11 { include required("version/3.11") }
version-3_10 { include required("version/3.10") }
@ -9,9 +10,12 @@ arch-x86_64 { include required("arch/x86_64") }
arch-aarch64 { include required("arch/aarch64") }
# profile vars
alpine {
community {
ami_desc_suffix = " - https://github.com/mcrute/alpine-ec2-ami"
}
official {
ami_desc_suffix = " - https://alpinelinux.org/cloud"
}
fix_root_resize {
# https://github.com/mcrute/tiny-ec2-bootstrap/pull/16
@ -24,12 +28,14 @@ fix_root_resize {
# Build definitions
BUILDS {
# merge version, arch, profile; add { revision = "r1" } if needed
edge-x86_64 = ${version-edge} ${arch-x86_64} ${alpine}
v3_12-x86_64 = ${version-3_12} ${arch-x86_64} ${alpine}
v3_11-x86_64 = ${version-3_11} ${arch-x86_64} ${alpine}
v3_10-x86_64 = ${version-3_10} ${arch-x86_64} ${alpine} { revision = "r1" }
# merge version, arch, profile; add per-build { revision = "r1" } if needed
edge-x86_64 = ${version-edge} ${arch-x86_64} ${official}
v3_13-x86_64 = ${version-3_13} ${arch-x86_64} ${official}
v3_12-x86_64 = ${version-3_12} ${arch-x86_64} ${community}
v3_11-x86_64 = ${version-3_11} ${arch-x86_64} ${community}
v3_10-x86_64 = ${version-3_10} ${arch-x86_64} ${community} { revision = "r1" }
edge-aarch64 = ${version-edge} ${arch-aarch64} ${alpine}
v3_12-aarch64 = ${version-3_12} ${arch-aarch64} ${alpine} ${fix_root_resize}
edge-aarch64 = ${version-edge} ${arch-aarch64} ${official}
v3_13-aarch64 = ${version-3_13} ${arch-aarch64} ${official}
v3_12-aarch64 = ${version-3_12} ${arch-aarch64} ${community} ${fix_root_resize}
}

15
profiles/version/3.13 Normal file
View File

@ -0,0 +1,15 @@
### version 3.13 vars
# vim: ts=2 et:
# based on current
include required("../base/current")
# add edge-specific tweaks...
version = "3.13"
release = "3.13.0"
end_of_life = "2022-11-01"
repos {
"http://dl-cdn.alpinelinux.org/alpine/v3.13/main" = true
"http://dl-cdn.alpinelinux.org/alpine/v3.13/community" = true
}

View File

@ -1 +1 @@
3.12
3.13

View File

@ -1,6 +1,6 @@
# Alpine Linux EC2 AMIs
These are the official Alpine AWS AMIs. For an index of images see the
These are the official Alpine AWS AMIs. For an index of images see the
[Alpine Website](https://alpinelinux.org/cloud/).
These AMIs should work with most EC2 features -- such as ENIs (Elastic Network
@ -34,8 +34,38 @@ The more popular [cloud-init](https://cloudinit.readthedocs.io/en/latest/) is
currently not supported on Alpine Linux. If `cloud-init` support is important
to you, please open an [issue](https://github.com/mcrute/alpine-ec2-ami/issues).
***These AMIs are also available by visiting https://alpinelinux.org/cloud***
## AMIs
### Alpine Linux 3.13.0 (2021-01-15)
<details><summary><i>click to show/hide</i></summary><p>
| Region | alpine-ami-3.13.0-aarch64-r0 | alpine-ami-3.13.0-x86_64-r0 |
| ------ | --- | --- |
| af-south-1 | [ami-054c33247885ebc3d](https://af-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-054c33247885ebc3d) ([launch](https://af-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-054c33247885ebc3d)) | [ami-06b4b4820282bd4c4](https://af-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-06b4b4820282bd4c4) ([launch](https://af-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-06b4b4820282bd4c4)) |
| ap-east-1 | [ami-0e7fa2711ac2592e1](https://ap-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0e7fa2711ac2592e1) ([launch](https://ap-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0e7fa2711ac2592e1)) | [ami-0d7ec3bccd07853b0](https://ap-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0d7ec3bccd07853b0) ([launch](https://ap-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0d7ec3bccd07853b0)) |
| ap-northeast-1 | [ami-0abe1014344984843](https://ap-northeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0abe1014344984843) ([launch](https://ap-northeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0abe1014344984843)) | [ami-0297111f80ad01c83](https://ap-northeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0297111f80ad01c83) ([launch](https://ap-northeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0297111f80ad01c83)) |
| ap-northeast-2 | [ami-0daa039d88c3ca039](https://ap-northeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0daa039d88c3ca039) ([launch](https://ap-northeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0daa039d88c3ca039)) | [ami-01a933965dcf06052](https://ap-northeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-01a933965dcf06052) ([launch](https://ap-northeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-01a933965dcf06052)) |
| ap-south-1 | [ami-0f24df3e1a946e396](https://ap-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0f24df3e1a946e396) ([launch](https://ap-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0f24df3e1a946e396)) | [ami-00362eefac99bd28d](https://ap-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-00362eefac99bd28d) ([launch](https://ap-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-00362eefac99bd28d)) |
| ap-southeast-1 | [ami-03ec7671226fce7ac](https://ap-southeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-03ec7671226fce7ac) ([launch](https://ap-southeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-03ec7671226fce7ac)) | [ami-0c8ee63c1901c2eb0](https://ap-southeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0c8ee63c1901c2eb0) ([launch](https://ap-southeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0c8ee63c1901c2eb0)) |
| ap-southeast-2 | [ami-0886c6e086b4865f3](https://ap-southeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0886c6e086b4865f3) ([launch](https://ap-southeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0886c6e086b4865f3)) | [ami-08ed66c1878f09560](https://ap-southeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-08ed66c1878f09560) ([launch](https://ap-southeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-08ed66c1878f09560)) |
| ca-central-1 | [ami-01a61cfe59f803189](https://ca-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-01a61cfe59f803189) ([launch](https://ca-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-01a61cfe59f803189)) | [ami-08177f9696f9ad4a6](https://ca-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-08177f9696f9ad4a6) ([launch](https://ca-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-08177f9696f9ad4a6)) |
| eu-central-1 | [ami-01c207f63c8675daf](https://eu-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-01c207f63c8675daf) ([launch](https://eu-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-01c207f63c8675daf)) | [ami-03a8a49ba86477171](https://eu-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-03a8a49ba86477171) ([launch](https://eu-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-03a8a49ba86477171)) |
| eu-north-1 | [ami-0bf4c55e1940c81f6](https://eu-north-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0bf4c55e1940c81f6) ([launch](https://eu-north-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0bf4c55e1940c81f6)) | [ami-0a58b79ae3d5dc225](https://eu-north-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0a58b79ae3d5dc225) ([launch](https://eu-north-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0a58b79ae3d5dc225)) |
| eu-south-1 | [ami-037c5a438633e5589](https://eu-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-037c5a438633e5589) ([launch](https://eu-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-037c5a438633e5589)) | [ami-0957b53ee158d78f7](https://eu-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0957b53ee158d78f7) ([launch](https://eu-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0957b53ee158d78f7)) |
| eu-west-1 | [ami-00346dd824f03912d](https://eu-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-00346dd824f03912d) ([launch](https://eu-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-00346dd824f03912d)) | [ami-0fc784eae453cde56](https://eu-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0fc784eae453cde56) ([launch](https://eu-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0fc784eae453cde56)) |
| eu-west-2 | [ami-030c2f6bf9bd32aaa](https://eu-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-030c2f6bf9bd32aaa) ([launch](https://eu-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-030c2f6bf9bd32aaa)) | [ami-0f0f0da204290dc46](https://eu-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0f0f0da204290dc46) ([launch](https://eu-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0f0f0da204290dc46)) |
| eu-west-3 | [ami-00e775ed7d5d97ab6](https://eu-west-3.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-00e775ed7d5d97ab6) ([launch](https://eu-west-3.console.aws.amazon.com/ec2/home#launchAmi=ami-00e775ed7d5d97ab6)) | [ami-0cba38171c14bfcc2](https://eu-west-3.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0cba38171c14bfcc2) ([launch](https://eu-west-3.console.aws.amazon.com/ec2/home#launchAmi=ami-0cba38171c14bfcc2)) |
| me-south-1 | [ami-0118ef914ed3873ec](https://me-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0118ef914ed3873ec) ([launch](https://me-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0118ef914ed3873ec)) | [ami-0fb7bc8a6dd850c6c](https://me-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0fb7bc8a6dd850c6c) ([launch](https://me-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0fb7bc8a6dd850c6c)) |
| sa-east-1 | [ami-030aade343c7bffe6](https://sa-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-030aade343c7bffe6) ([launch](https://sa-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-030aade343c7bffe6)) | [ami-09a48625b514fdcd9](https://sa-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-09a48625b514fdcd9) ([launch](https://sa-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-09a48625b514fdcd9)) |
| us-east-1 | [ami-059c905481a02fe87](https://us-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-059c905481a02fe87) ([launch](https://us-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-059c905481a02fe87)) | [ami-0f7b12c17a0b4bade](https://us-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0f7b12c17a0b4bade) ([launch](https://us-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0f7b12c17a0b4bade)) |
| us-east-2 | [ami-05f1c6366468e331d](https://us-east-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-05f1c6366468e331d) ([launch](https://us-east-2.console.aws.amazon.com/ec2/home#launchAmi=ami-05f1c6366468e331d)) | [ami-0a288d17effc94a76](https://us-east-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0a288d17effc94a76) ([launch](https://us-east-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0a288d17effc94a76)) |
| us-west-1 | [ami-0fe276a497cab0aa9](https://us-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0fe276a497cab0aa9) ([launch](https://us-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0fe276a497cab0aa9)) | [ami-01c6cef27f05be7a5](https://us-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-01c6cef27f05be7a5) ([launch](https://us-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-01c6cef27f05be7a5)) |
| us-west-2 | [ami-0cbd458f29aa897b3](https://us-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0cbd458f29aa897b3) ([launch](https://us-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0cbd458f29aa897b3)) | [ami-0d0055a3bfbf5a966](https://us-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0d0055a3bfbf5a966) ([launch](https://us-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0d0055a3bfbf5a966)) |
</p></details>
### Alpine Linux 3.12.3 (2020-12-19)
<details><summary><i>click to show/hide</i></summary><p>
@ -120,54 +150,30 @@ to you, please open an [issue](https://github.com/mcrute/alpine-ec2-ami/issues).
</p></details>
### Alpine Linux 3.9.6 (2020-04-26)
### Alpine Linux Edge (2021-01-15)
<details><summary><i>click to show/hide</i></summary><p>
| Region | alpine-ami-3.9.6-x86_64-r0 |
| ------ | --- |
| ap-northeast-1 | [ami-0133f3a571f684178](https://ap-northeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0133f3a571f684178) ([launch](https://ap-northeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0133f3a571f684178)) |
| ap-northeast-2 | [ami-0f9ad7c51e14bdc3d](https://ap-northeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0f9ad7c51e14bdc3d) ([launch](https://ap-northeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0f9ad7c51e14bdc3d)) |
| ap-south-1 | [ami-00af726ec2f4077a2](https://ap-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-00af726ec2f4077a2) ([launch](https://ap-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-00af726ec2f4077a2)) |
| ap-southeast-1 | [ami-0d52e9d7f91ca051c](https://ap-southeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0d52e9d7f91ca051c) ([launch](https://ap-southeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0d52e9d7f91ca051c)) |
| ap-southeast-2 | [ami-054360648343b66bc](https://ap-southeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-054360648343b66bc) ([launch](https://ap-southeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-054360648343b66bc)) |
| ca-central-1 | [ami-0583a99f342097b6c](https://ca-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0583a99f342097b6c) ([launch](https://ca-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0583a99f342097b6c)) |
| eu-central-1 | [ami-051eec0106a08df6d](https://eu-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-051eec0106a08df6d) ([launch](https://eu-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-051eec0106a08df6d)) |
| eu-north-1 | [ami-07a2b23059054aea3](https://eu-north-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-07a2b23059054aea3) ([launch](https://eu-north-1.console.aws.amazon.com/ec2/home#launchAmi=ami-07a2b23059054aea3)) |
| eu-west-1 | [ami-0eb2b54ab4d09eb80](https://eu-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0eb2b54ab4d09eb80) ([launch](https://eu-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0eb2b54ab4d09eb80)) |
| eu-west-2 | [ami-08c87b358b24d1df3](https://eu-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-08c87b358b24d1df3) ([launch](https://eu-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-08c87b358b24d1df3)) |
| eu-west-3 | [ami-00a425aa20737343e](https://eu-west-3.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-00a425aa20737343e) ([launch](https://eu-west-3.console.aws.amazon.com/ec2/home#launchAmi=ami-00a425aa20737343e)) |
| sa-east-1 | [ami-0ea679407da47b78a](https://sa-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0ea679407da47b78a) ([launch](https://sa-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0ea679407da47b78a)) |
| us-east-1 | [ami-004f0550310a2d7aa](https://us-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-004f0550310a2d7aa) ([launch](https://us-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-004f0550310a2d7aa)) |
| us-east-2 | [ami-045a2cc3fe272caee](https://us-east-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-045a2cc3fe272caee) ([launch](https://us-east-2.console.aws.amazon.com/ec2/home#launchAmi=ami-045a2cc3fe272caee)) |
| us-west-1 | [ami-026a54e52daea1233](https://us-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-026a54e52daea1233) ([launch](https://us-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-026a54e52daea1233)) |
| us-west-2 | [ami-0b933475d362cbfab](https://us-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0b933475d362cbfab) ([launch](https://us-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0b933475d362cbfab)) |
</p></details>
### Alpine Linux Edge (2020-12-31)
<details><summary><i>click to show/hide</i></summary><p>
| Region | alpine-ami-edge-aarch64-20201231045833 | alpine-ami-edge-x86_64-20201231045833 |
| Region | alpine-ami-edge-aarch64-20210115045210 | alpine-ami-edge-x86_64-20210115045210 |
| ------ | --- | --- |
| af-south-1 | [ami-0b183c56bd131ed3a](https://af-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0b183c56bd131ed3a) ([launch](https://af-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0b183c56bd131ed3a)) | [ami-011743658a67dd855](https://af-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-011743658a67dd855) ([launch](https://af-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-011743658a67dd855)) |
| ap-east-1 | [ami-08b75758d2db7dfca](https://ap-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-08b75758d2db7dfca) ([launch](https://ap-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-08b75758d2db7dfca)) | [ami-0d216cd3d020468f4](https://ap-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0d216cd3d020468f4) ([launch](https://ap-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0d216cd3d020468f4)) |
| ap-northeast-1 | [ami-0e4e372058199d5ef](https://ap-northeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0e4e372058199d5ef) ([launch](https://ap-northeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0e4e372058199d5ef)) | [ami-080ee407fba860248](https://ap-northeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-080ee407fba860248) ([launch](https://ap-northeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-080ee407fba860248)) |
| ap-northeast-2 | [ami-0b1cb303b405d3097](https://ap-northeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0b1cb303b405d3097) ([launch](https://ap-northeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0b1cb303b405d3097)) | [ami-0f9ab3123bd36ee7c](https://ap-northeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0f9ab3123bd36ee7c) ([launch](https://ap-northeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0f9ab3123bd36ee7c)) |
| ap-south-1 | [ami-03dd8e847479cf769](https://ap-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-03dd8e847479cf769) ([launch](https://ap-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-03dd8e847479cf769)) | [ami-0180ec8a9b842fb7b](https://ap-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0180ec8a9b842fb7b) ([launch](https://ap-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0180ec8a9b842fb7b)) |
| ap-southeast-1 | [ami-0f63ec4ee42f919af](https://ap-southeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0f63ec4ee42f919af) ([launch](https://ap-southeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0f63ec4ee42f919af)) | [ami-068588a4eea7ad3a3](https://ap-southeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-068588a4eea7ad3a3) ([launch](https://ap-southeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-068588a4eea7ad3a3)) |
| ap-southeast-2 | [ami-0cfb54d89d91b4588](https://ap-southeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0cfb54d89d91b4588) ([launch](https://ap-southeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0cfb54d89d91b4588)) | [ami-0ae9daf7a58df4934](https://ap-southeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0ae9daf7a58df4934) ([launch](https://ap-southeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0ae9daf7a58df4934)) |
| ca-central-1 | [ami-0028affab88bac113](https://ca-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0028affab88bac113) ([launch](https://ca-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0028affab88bac113)) | [ami-07bcbb6f6af86f511](https://ca-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-07bcbb6f6af86f511) ([launch](https://ca-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-07bcbb6f6af86f511)) |
| eu-central-1 | [ami-0a3002a25422450ec](https://eu-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0a3002a25422450ec) ([launch](https://eu-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0a3002a25422450ec)) | [ami-052c85ff0f5526102](https://eu-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-052c85ff0f5526102) ([launch](https://eu-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-052c85ff0f5526102)) |
| eu-north-1 | [ami-0164bce0c7d9f1741](https://eu-north-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0164bce0c7d9f1741) ([launch](https://eu-north-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0164bce0c7d9f1741)) | [ami-050c04068b77339c8](https://eu-north-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-050c04068b77339c8) ([launch](https://eu-north-1.console.aws.amazon.com/ec2/home#launchAmi=ami-050c04068b77339c8)) |
| eu-south-1 | [ami-02fe886c007469453](https://eu-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-02fe886c007469453) ([launch](https://eu-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-02fe886c007469453)) | [ami-0d0c75892f636d022](https://eu-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0d0c75892f636d022) ([launch](https://eu-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0d0c75892f636d022)) |
| eu-west-1 | [ami-052c81600bc9265a2](https://eu-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-052c81600bc9265a2) ([launch](https://eu-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-052c81600bc9265a2)) | [ami-05e2518be7f8858dd](https://eu-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-05e2518be7f8858dd) ([launch](https://eu-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-05e2518be7f8858dd)) |
| eu-west-2 | [ami-0dbd0469355fb628b](https://eu-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0dbd0469355fb628b) ([launch](https://eu-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0dbd0469355fb628b)) | [ami-0feefbd48a8e39699](https://eu-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0feefbd48a8e39699) ([launch](https://eu-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0feefbd48a8e39699)) |
| eu-west-3 | [ami-0a8f99b7d240e427c](https://eu-west-3.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0a8f99b7d240e427c) ([launch](https://eu-west-3.console.aws.amazon.com/ec2/home#launchAmi=ami-0a8f99b7d240e427c)) | [ami-0423ae73dd6a792bf](https://eu-west-3.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0423ae73dd6a792bf) ([launch](https://eu-west-3.console.aws.amazon.com/ec2/home#launchAmi=ami-0423ae73dd6a792bf)) |
| me-south-1 | [ami-03e34a8c3f39d75a8](https://me-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-03e34a8c3f39d75a8) ([launch](https://me-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-03e34a8c3f39d75a8)) | [ami-04649d2d92b0365f7](https://me-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-04649d2d92b0365f7) ([launch](https://me-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-04649d2d92b0365f7)) |
| sa-east-1 | [ami-0c049c43758d1c6ae](https://sa-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0c049c43758d1c6ae) ([launch](https://sa-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0c049c43758d1c6ae)) | [ami-0a9fcc32957c9f42f](https://sa-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0a9fcc32957c9f42f) ([launch](https://sa-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0a9fcc32957c9f42f)) |
| us-east-1 | [ami-0d4bf5cbd324d086a](https://us-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0d4bf5cbd324d086a) ([launch](https://us-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0d4bf5cbd324d086a)) | [ami-047669701018a01ac](https://us-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-047669701018a01ac) ([launch](https://us-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-047669701018a01ac)) |
| us-east-2 | [ami-07434f0295f2816c8](https://us-east-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-07434f0295f2816c8) ([launch](https://us-east-2.console.aws.amazon.com/ec2/home#launchAmi=ami-07434f0295f2816c8)) | [ami-0f811ec590362fd5e](https://us-east-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0f811ec590362fd5e) ([launch](https://us-east-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0f811ec590362fd5e)) |
| us-west-1 | [ami-0e2ddb3719b40d721](https://us-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0e2ddb3719b40d721) ([launch](https://us-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0e2ddb3719b40d721)) | [ami-02a9a916ff04c9553](https://us-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-02a9a916ff04c9553) ([launch](https://us-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-02a9a916ff04c9553)) |
| us-west-2 | [ami-07ab85086738d655c](https://us-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-07ab85086738d655c) ([launch](https://us-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-07ab85086738d655c)) | [ami-003decaff69790d71](https://us-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-003decaff69790d71) ([launch](https://us-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-003decaff69790d71)) |
| af-south-1 | [ami-0f8fb312016a1a357](https://af-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0f8fb312016a1a357) ([launch](https://af-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0f8fb312016a1a357)) | [ami-088e84ce1b1f411be](https://af-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-088e84ce1b1f411be) ([launch](https://af-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-088e84ce1b1f411be)) |
| ap-east-1 | [ami-03ec11f3e7e2bf55f](https://ap-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-03ec11f3e7e2bf55f) ([launch](https://ap-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-03ec11f3e7e2bf55f)) | [ami-0aa6df701213dd27d](https://ap-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0aa6df701213dd27d) ([launch](https://ap-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0aa6df701213dd27d)) |
| ap-northeast-1 | [ami-0447adc048c4c3e14](https://ap-northeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0447adc048c4c3e14) ([launch](https://ap-northeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0447adc048c4c3e14)) | [ami-0b279dbdd926b42b5](https://ap-northeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0b279dbdd926b42b5) ([launch](https://ap-northeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0b279dbdd926b42b5)) |
| ap-northeast-2 | [ami-0611bb744aad58842](https://ap-northeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0611bb744aad58842) ([launch](https://ap-northeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0611bb744aad58842)) | [ami-02dec744f61097ee9](https://ap-northeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-02dec744f61097ee9) ([launch](https://ap-northeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-02dec744f61097ee9)) |
| ap-south-1 | [ami-06674e2639583de71](https://ap-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-06674e2639583de71) ([launch](https://ap-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-06674e2639583de71)) | [ami-0497a4347255254b0](https://ap-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0497a4347255254b0) ([launch](https://ap-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0497a4347255254b0)) |
| ap-southeast-1 | [ami-0c56255f7ce3c0d1a](https://ap-southeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0c56255f7ce3c0d1a) ([launch](https://ap-southeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0c56255f7ce3c0d1a)) | [ami-0fa75324c26109981](https://ap-southeast-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0fa75324c26109981) ([launch](https://ap-southeast-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0fa75324c26109981)) |
| ap-southeast-2 | [ami-02185fb296e9a225e](https://ap-southeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-02185fb296e9a225e) ([launch](https://ap-southeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-02185fb296e9a225e)) | [ami-05e33de43c5e5cebd](https://ap-southeast-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-05e33de43c5e5cebd) ([launch](https://ap-southeast-2.console.aws.amazon.com/ec2/home#launchAmi=ami-05e33de43c5e5cebd)) |
| ca-central-1 | [ami-045744471a57317f8](https://ca-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-045744471a57317f8) ([launch](https://ca-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-045744471a57317f8)) | [ami-0d97a3177809ea765](https://ca-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0d97a3177809ea765) ([launch](https://ca-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0d97a3177809ea765)) |
| eu-central-1 | [ami-052b6d764d2d332ee](https://eu-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-052b6d764d2d332ee) ([launch](https://eu-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-052b6d764d2d332ee)) | [ami-0b5920487b9821f76](https://eu-central-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0b5920487b9821f76) ([launch](https://eu-central-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0b5920487b9821f76)) |
| eu-north-1 | [ami-092a831a6f4620ccf](https://eu-north-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-092a831a6f4620ccf) ([launch](https://eu-north-1.console.aws.amazon.com/ec2/home#launchAmi=ami-092a831a6f4620ccf)) | [ami-035e585736b7de816](https://eu-north-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-035e585736b7de816) ([launch](https://eu-north-1.console.aws.amazon.com/ec2/home#launchAmi=ami-035e585736b7de816)) |
| eu-south-1 | [ami-0eb47307947090baa](https://eu-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0eb47307947090baa) ([launch](https://eu-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0eb47307947090baa)) | [ami-0a2bcd6981f75dc6e](https://eu-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0a2bcd6981f75dc6e) ([launch](https://eu-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0a2bcd6981f75dc6e)) |
| eu-west-1 | [ami-0693b5d091c075179](https://eu-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0693b5d091c075179) ([launch](https://eu-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0693b5d091c075179)) | [ami-0ff868d68ffce1c18](https://eu-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0ff868d68ffce1c18) ([launch](https://eu-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0ff868d68ffce1c18)) |
| eu-west-2 | [ami-0e8f54b786204d875](https://eu-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0e8f54b786204d875) ([launch](https://eu-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0e8f54b786204d875)) | [ami-0bb797cec5432486e](https://eu-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0bb797cec5432486e) ([launch](https://eu-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0bb797cec5432486e)) |
| eu-west-3 | [ami-0c1ce7d53e27f3b38](https://eu-west-3.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0c1ce7d53e27f3b38) ([launch](https://eu-west-3.console.aws.amazon.com/ec2/home#launchAmi=ami-0c1ce7d53e27f3b38)) | [ami-056ec883bb7b55fa6](https://eu-west-3.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-056ec883bb7b55fa6) ([launch](https://eu-west-3.console.aws.amazon.com/ec2/home#launchAmi=ami-056ec883bb7b55fa6)) |
| me-south-1 | [ami-0f85def6c07158768](https://me-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0f85def6c07158768) ([launch](https://me-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0f85def6c07158768)) | [ami-09196a0c25b2b5745](https://me-south-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-09196a0c25b2b5745) ([launch](https://me-south-1.console.aws.amazon.com/ec2/home#launchAmi=ami-09196a0c25b2b5745)) |
| sa-east-1 | [ami-000c9c8abdea00a15](https://sa-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-000c9c8abdea00a15) ([launch](https://sa-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-000c9c8abdea00a15)) | [ami-0a010a494fd6b4198](https://sa-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0a010a494fd6b4198) ([launch](https://sa-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0a010a494fd6b4198)) |
| us-east-1 | [ami-0fa8aafbaab073172](https://us-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0fa8aafbaab073172) ([launch](https://us-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0fa8aafbaab073172)) | [ami-0f6d30ffd4b5446ff](https://us-east-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0f6d30ffd4b5446ff) ([launch](https://us-east-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0f6d30ffd4b5446ff)) |
| us-east-2 | [ami-0bb800d8bde3fbfd3](https://us-east-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0bb800d8bde3fbfd3) ([launch](https://us-east-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0bb800d8bde3fbfd3)) | [ami-076cd7138c628dab2](https://us-east-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-076cd7138c628dab2) ([launch](https://us-east-2.console.aws.amazon.com/ec2/home#launchAmi=ami-076cd7138c628dab2)) |
| us-west-1 | [ami-0951a311c73074592](https://us-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0951a311c73074592) ([launch](https://us-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-0951a311c73074592)) | [ami-072a48e68753aedb0](https://us-west-1.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-072a48e68753aedb0) ([launch](https://us-west-1.console.aws.amazon.com/ec2/home#launchAmi=ami-072a48e68753aedb0)) |
| us-west-2 | [ami-0d0947ece674f16d0](https://us-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0d0947ece674f16d0) ([launch](https://us-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0d0947ece674f16d0)) | [ami-0d96c10dc78128cb5](https://us-west-2.console.aws.amazon.com/ec2/home#Images:visibility=public-images;imageId=ami-0d96c10dc78128cb5) ([launch](https://us-west-2.console.aws.amazon.com/ec2/home#launchAmi=ami-0d96c10dc78128cb5)) |
</p></details>

File diff suppressed because it is too large Load Diff

View File

@ -70,6 +70,11 @@ def undictfactory(o):
def region_from_client(client):
return client._client_config.region_name
# version sorting
def sortable_version(x):
v = x.split('_rc')[0]
return StrictVersion("0.0" if v == "edge" else v)
class EC2Architecture(Enum):
@ -877,32 +882,51 @@ class Releases:
self.images[region].append(image)
# build profile releases object based on loaded self.images
def build_releases(self, log=None):
def build_releases(self, log=None, trim=None):
now = datetime.utcnow()
versions = dictfactory()
for region, amis in self.images.items():
if log: log.info(f"{region}")
for ami in amis:
if ami.profile != self.profile:
eol = datetime.fromisoformat(ami.end_of_life)
# if we're trimming, we're not interested in EOL images
if trim and eol < now:
continue
if log: log.info(f" * {ami.image_id} {ami.name}")
version = ami.version
release = ami.release
build = ami.profile_build
name = ami.name
id = ami.image_id
build_time = int(dateutil.parser.parse(ami.creation_date).strftime('%s'))
release_obj = self.releases[release][build][name]
if log: log.info(f" * {ami.image_id} {ami.name}")
version_obj = versions[version][release][build][name]
for field in self.RELEASE_FIELDS:
if field not in release_obj:
release_obj[field] = getattr(ami, field)
if field not in version_obj:
version_obj[field] = getattr(ami, field)
# ensure earliest build_time is used
if ('build_time' not in release_obj or
build_time < release_obj['build_time']):
release_obj['build_time'] = build_time
release_obj['creation_date'] = ami.creation_date
if ('build_time' not in version_obj or
build_time < version_obj['build_time']):
version_obj['build_time'] = build_time
version_obj['creation_date'] = ami.creation_date
release_obj['artifacts'][region] = id
version_obj['artifacts'][region] = id
for version, releases in versions.items():
for release, builds in sorted(releases.items(), reverse=True,
key=lambda x: sortable_version(x[0])):
for build, revisions in builds.items():
for revision, info in sorted(revisions.items(), reverse=True,
key=lambda x: x[1]['build_time']):
self.releases[release][build][revision] = info
# if we are trimming, we want only the most recent revisions
if trim: break
# if we are trimming releases, we want only the most recent release
if trim == 'release': break
class ReleasesYAML:
@ -912,11 +936,18 @@ class ReleasesYAML:
@staticmethod
def add_args(parser):
TRIM_HELP="""
revision = keep last x.y.z-r# of non-EOL releases,
release = keep last x.y.# of non-EOL versions
"""
rgroup = parser.add_mutually_exclusive_group(required=True)
rgroup.add_argument("--use-broker", action="store_true",
help="identity broker provides destination regions and credentials")
rgroup.add_argument("--region", "-r", action="append", dest="regions",
metavar="REGION", help="destination region (multiple OK)")
parser.add_argument("--trim", "-t",
choices=['revision','release'], help=TRIM_HELP)
parser.add_argument("profile", metavar="PROFILE", help="profile name")
def run(self, args, root, log):
@ -930,7 +961,7 @@ class ReleasesYAML:
use_broker = args.use_broker,
regions = args.regions)
r.load_profile_images(log)
r.build_releases()
r.build_releases(trim=args.trim)
log.info(f"Writing new {release_yaml}")
with open(release_yaml, 'w') as data:
@ -964,7 +995,7 @@ class ReleasesReadme:
@staticmethod
def extract_ver(x):
return StrictVersion("0.0" if x["release"] == "edge" else x["release"])
return sortable_version(x['release'])
def resolve_sections(self, release_data, log):
sects = dictfactory()
@ -1063,14 +1094,14 @@ class PruneAMIs:
@staticmethod
def add_args(parser):
LEVEL_HELP = textwrap.dedent("""\
'revision' - prune old AMI revisions (x.y.z-r#);
'release' - prune old AMI releases (x.y.#);
'end-of-life' - prune end-of-life AMI versions (#.#);
'UNKNOWN' - prune unknown AMIs (no profile tag)
""")
LEVEL_HELP = """
revision = x.y.z-r#,
release = x.y.#,
end-of-life = EOL versions (#.#),
UNKNOWN = AMIs with no profile tag
"""
parser.add_argument("level", metavar='LEVEL',
parser.add_argument("level",
choices=["revision", "release", "end-of-life", "UNKNOWN"],
help=LEVEL_HELP)
rgroup = parser.add_mutually_exclusive_group(required=True)

View File

@ -304,6 +304,9 @@ create_alpine_user() {
# best-practice.
sed -i '/%wheel .* NOPASSWD: .*/s/^# //' "$TARGET/etc/sudoers"
# explicitly lock the root account
chroot "$TARGET" /usr/bin/passwd -l root
# There is no real standard ec2 username across AMIs, Amazon uses ec2-user
# for their Amazon Linux AMIs but Ubuntu uses ubuntu, Fedora uses fedora,
# etc... (see: https://alestic.com/2014/01/ec2-ssh-username/). So our user