As an effort to automate the (Android) build and test process, I configured an AWS code pipeline that will 1st get the code from GitHub and trigger a build (via aws codebuild) Build is shown as completed successfully but the artifacts (apk file) generated as a result of the build process isn't uploaded to the s3 bucket (public bucket). The logs clearly say the upload is successful as seen in the screenshots attached The codepipeline as well shows everything is successful as attached
However, if I run aws codebuild project directly from the aws codebuild screen, it does upload the artifact successfully to the s3 bucket!
I tried changing the bucket permissions to public/non public, etc. So far no success
CodePipeline integrates with development tools to check for code changes and then build and deploy through all of the stages of the continuous delivery process. Stages use input and output artifacts that are stored in the Amazon S3 artifact bucket you chose when you created the pipeline.
CodePipeline builds, tests, and deploys your code every time there is a code change, based on the release process models you define. On the other hand, AWS CodeStar is detailed as "Quickly Develop, Build, and Deploy Applications on AWS".
CodePipeline and AWS OpsWorks Stacks integration is not supported for deploying to Chef 11.4 and older stacks. Javascript is disabled or is unavailable in your browser. To use the Amazon Web Services Documentation, Javascript must be enabled. Please refer to your browser's Help pages for instructions.
CodePipeline will override the CodeBuild's artifact bucket, I guess it's moving the artifacts to its own Bucket. you can see the CodePipeline's bucket by running the below command.
codepipeline get-pipeline --name PipelineName--query pipeline.[artifactStore]
[
{
"type": "S3",
"location": "codepipeline-us-east-1-xxxxxxxx"
}
]
If you are using CloudFormation to create the pipeline you configure the bucket using ArtifactStore.
Update ArtifactStore in CodePipeline:
Currently, I don't see a way to update the ArtifactStore through Console but it can be done with update-pipeline
command.
Get the pipleline details:
aws codepipeline get-pipeline --name MyFirstPipeline >pipeline.json
Edit the pipeline to update the S3 Bucket in artifactStore
and then run the command.
aws codepipeline update-pipeline --cli-input-json file://pipeline.json
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With