- Newest
- Most votes
- Most comments
Hello.
If you check from the AWS CLI as shown below, it will be listed as an image that can be used for building.
aws codebuild list-curated-environment-images --query platforms[].languages[].images[].name
[
"aws/codebuild/eb-java-7-amazonlinux-64:2.1.3",
"aws/codebuild/eb-java-8-amazonlinux-64:2.1.3",
"aws/codebuild/eb-java-7-amazonlinux-64:2.1.6",
"aws/codebuild/eb-java-8-amazonlinux-64:2.1.6",
"aws/codebuild/eb-java-7-amazonlinux-64:2.4.3",
"aws/codebuild/eb-java-8-amazonlinux-64:2.4.3",
"aws/codebuild/eb-ruby-1.9-amazonlinux-64:2.1.3",
"aws/codebuild/eb-ruby-2.0-amazonlinux-64:2.1.3",
"aws/codebuild/eb-ruby-2.1-amazonlinux-64:2.1.3",
"aws/codebuild/eb-ruby-2.2-amazonlinux-64:2.1.3",
"aws/codebuild/eb-ruby-2.3-amazonlinux-64:2.1.3",
"aws/codebuild/eb-ruby-1.9-amazonlinux-64:2.1.6",
"aws/codebuild/eb-ruby-2.0-amazonlinux-64:2.1.6",
"aws/codebuild/eb-ruby-2.1-amazonlinux-64:2.1.6",
"aws/codebuild/eb-ruby-2.2-amazonlinux-64:2.1.6",
"aws/codebuild/eb-ruby-2.3-amazonlinux-64:2.1.6",
"aws/codebuild/eb-ruby-1.9-amazonlinux-64:2.3.2",
"aws/codebuild/eb-ruby-2.0-amazonlinux-64:2.3.2",
"aws/codebuild/eb-ruby-2.1-amazonlinux-64:2.3.2",
"aws/codebuild/eb-ruby-2.2-amazonlinux-64:2.3.2",
"aws/codebuild/eb-ruby-2.3-amazonlinux-64:2.3.2",
"aws/codebuild/eb-go-1.5-amazonlinux-64:2.1.3",
"aws/codebuild/eb-go-1.5-amazonlinux-64:2.1.6",
"aws/codebuild/eb-go-1.6-amazonlinux-64:2.3.2",
"aws/codebuild/eb-nodejs-4.4.6-amazonlinux-64:2.1.3",
"aws/codebuild/eb-nodejs-6.10.0-amazonlinux-64:4.0.0",
"aws/codebuild/eb-python-2.6-amazonlinux-64:2.1.3",
"aws/codebuild/eb-python-2.7-amazonlinux-64:2.1.3",
"aws/codebuild/eb-python-3.4-amazonlinux-64:2.1.3",
"aws/codebuild/eb-python-2.6-amazonlinux-64:2.1.6",
"aws/codebuild/eb-python-2.7-amazonlinux-64:2.1.6",
"aws/codebuild/eb-python-3.4-amazonlinux-64:2.1.6",
"aws/codebuild/eb-python-2.6-amazonlinux-64:2.3.2",
"aws/codebuild/eb-python-2.7-amazonlinux-64:2.3.2",
"aws/codebuild/eb-python-3.4-amazonlinux-64:2.3.2",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:corretto11",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:corretto17",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:corretto21",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:corretto11",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:corretto17",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:corretto21",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:dotnet6",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:dotnet6",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:dotnet8",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:dotnet8",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:go1.21",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:go1.21",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:nodejs18",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:nodejs20",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:nodejs18",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:nodejs20",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:python3.11",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:python3.12",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:python3.11",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:python3.12",
"aws/codebuild/amazonlinux-x86_64-lambda-standard:ruby3.2",
"aws/codebuild/amazonlinux-aarch64-lambda-standard:ruby3.2",
"aws/codebuild/amazonlinux2-x86_64-standard:4.0",
"aws/codebuild/amazonlinux-x86_64-standard:4.0",
"aws/codebuild/amazonlinux2-x86_64-standard:5.0",
"aws/codebuild/amazonlinux-x86_64-standard:5.0",
"aws/codebuild/amazonlinux2-x86_64-standard:corretto8",
"aws/codebuild/amazonlinux-x86_64-standard:corretto8",
"aws/codebuild/amazonlinux2-x86_64-standard:corretto11",
"aws/codebuild/amazonlinux-x86_64-standard:corretto11",
"aws/codebuild/amazonlinux2-aarch64-standard:2.0",
"aws/codebuild/amazonlinux-aarch64-standard:2.0",
"aws/codebuild/amazonlinux2-aarch64-standard:3.0",
"aws/codebuild/amazonlinux-aarch64-standard:3.0",
"aws/codebuild/ami/amazonlinux-x86_64-base:2023-1.0",
"aws/codebuild/ami/amazonlinux-arm-base:2023-1.0",
"aws/codebuild/macos-arm-base:14",
"aws/codebuild/standard:5.0",
"aws/codebuild/standard:6.0",
"aws/codebuild/standard:7.0",
"aws/codebuild/windows-base:2019-1.0",
"aws/codebuild/windows-base:2019-2.0",
"aws/codebuild/windows-base:2019-3.0",
"aws/codebuild/windows-base:2022-1.0",
"aws/codebuild/ami/windows-base:2022-1.0"
]
As stated in the document below, Windows Server 2022 is not supported for On-Demand Fleet.
https://docs.aws.amazon.com/codebuild/latest/userguide/fleets.html#fleets.how-to
On-demand fleets do not support macOS or Windows Server 2022.
So, if you want to use Windows Server 2022 images with CodeBuild, I think you need to set reserved capacity fleets.
Therefore, I think you can use the Windows Server 2022 image by creating a fleet as shown below and specifying it when creating a CodeBuild project.
When I executed the following command with my AWS account, I was able to create a CodeBuild project.
aws codebuild create-fleet --name test --base-capacity 1 --environment-type WINDOWS_SERVER_2022_CONTAINER --compute-type BUILD_GENERAL1_LARGE
aws codebuild create-project --name test --source type=S3,location=example-bucket/test.zip --artifacts type=NO_ARTIFACTS --environment type=WINDOWS_SERVER_2022_CONTAINER,image=aws/codebuild/windows-base:2022-1.0,fleet={fleetArn=arn:aws:codebuild:us-east-1:123456789012:fleet/test:11111111-1111-1111-1111-111111111111},computeType=BUILD_GENERAL1_LARGE --service-role arn:aws:iam::123456789012:role/service-role/codebuild-role-test
If it is created successfully, you will see that a Windows Server 2022 image is used as shown below.
You're correct that the AWS documentation mentions the availability of Windows Server 2022 base image for CodeBuild, but the regional availability information is not explicitly stated for this specific image.
Based on the available information, it appears that the Windows Server 2022 image (aws/codebuild/windows-base:2022-1.0) for CodeBuild is likely available in more regions compared to the Windows Server 2019 image.
While the documentation specifically mentions regional limitations for the Windows Server 2019 image (available only in US East (N. Virginia), US East (Ohio), US West (Oregon), and Europe (Ireland)), it does not provide similar restrictions for the Windows Server 2022 image. This suggests that the Windows Server 2022 image may be more widely available across AWS regions.
However, without explicit confirmation from AWS, it's best to assume that the Windows Server 2022 image is available in at least the same regions as the Windows Server 2019 image, and potentially in additional regions. If you need to use this image in a specific region, it would be advisable to check its availability directly in the AWS CodeBuild console for your desired region or contact AWS support for the most up-to-date and accurate information.
Keep in mind that AWS frequently updates its services and regional availability, so it's possible that the documentation may not always reflect the most current state of regional availability for specific images.
Sources
EC2 compute images - AWS CodeBuild
answered 2 years ago
Relevant content
asked 4 years ago
