def parse(event): if event['source'] == 'aws.codebuild': ini = event['detail']['additional-information']['initiator'] m = re.match('codepipeline/(.+)', ini) if m: pipeline = m.group(1) r = client.get_pipeline_state(name=pipeline) buildInfo = BuildInfo.fromEvent(event) return buildInfo
def processCodePipeline(event): buildInfo = BuildInfo.fromEvent(event) existing_msg = find_message_for_build(buildInfo) builder = MessageBuilder(buildInfo, existing_msg) builder.updatePipelineEvent(event) if builder.needsRevisionInfo(): revision = findRevisionInfo(buildInfo) builder.attachRevisionInfo(revision) post_build_msg(builder)