A company uses AWS CodeArtifact to centrally store Python packages. The CodeArtifact repository is configured with the following repository policy: A development team is building a new project in an account that is in an organization in AWS Organizations. The development team wants to use a Python library that has already been stored in the CodeArtifact repository in the organization. The development team uses AWS CodePipeline and AWS CodeBuild to build the new application. The CodeBuild job that the development team uses to build the application is configured to run in a VPC. Because of compliance requirements, the VPC has no internet connectivity. The development team creates the VPC endpoints for CodeArtifact and updates the CodeBuild buildspec.yaml file. However, the development team cannot download the Python library from the repository. Which combination of steps should a DevOps engineer take so that the development team can use CodeArtifact? (Choose two.)
Select 2 answers.
Marked answer: D
This question asks for 2 answers, but our data marks only 1. Compare with the community discussion below for the full answer.
Community Discussion
Written by other learners. Comments can disagree with the marked answer — check the official documentation when in doubt.
Chose CD1
Its CD and when I saw the most voted I was shocked with the answers A. Even though CodeArtifact uses S3 it can also use DynamoDB, theres no mention of either so I immediately negated this answer B. Principal is already set to allow any E. Irrelevant
Chose BD2
CodeArtifact does not store packages in user-managed S3 buckets, and it does not require S3 endpoint access. This is unnecessary for CodeArtifact access.
Chose AD1
AWS CodeArtifact stores artifact data and metadata in Amazon S3. To pull packages from CodeArtifact, you need to create an Amazon S3 gateway endpoint. You can use the aws ec2 create-vpc-endpoint AWS CLI command to create the endpoint.