code_build_config

This module defines the codebuild-config.json file schema, that defines which CodeBuild project the git repo should use to run CI job.

class aws_ci_bot.code_build_config.BuildJobConfig(project_name: str, is_batch_job: bool, buildspec: Optional[str] = None, env_var: dict = <factory>)[source]

Per CodeBuild project configuration. One git repo can map to multiple CodeBuild projects.

class aws_ci_bot.code_build_config.CodebuildConfig(jobs: List[aws_ci_bot.code_build_config.BuildJobConfig] = <factory>)[source]

The codebuild-config.json file that defines which CodeBuild project it should use to run CI job. By default, it is at the root folder of the git repo.

The data structure looks like this:

{
    "jobs": [
        {
            "project_name": "my-codebuild-project-name",
            "is_batch_job": false,
            "buildspec": "the path to the buildspec.yml file",
            "env_var": {
                "key1": "value1",
                "key2": "value2"
            }
        },
        {
            ...
        },
        ...
    ]
classmethod from_codecommit_repo(bsm: boto_session_manager.manager.BotoSesManager, repo_name: str, commit_id: str) aws_ci_bot.code_build_config.CodebuildConfig[source]

Get the codebuild-config.json file from the CodeCommit repo.

Read more about the CodebuildConfig file.