I’m trying to create a Lambda that will trigger Codefresh pipelines from CloudWatch events, trying to follow the API docs, but not sure what to do here:Codefresh API – is there any additional documentation about
- type – is this the type of pipeline, type of trigger, is this actually an enum or does this really take any string?
- trigger – enum or any string?
- isYamlService – what is this?
Ok, I was able to make my use case to work but with some lessons learned that I’ll share here in hopes that it saves somebody else a few hours of their life:
Path Parameter: Name
- Case sensitive
- Must include the Project Name and you need to URL Encode the / so if you’re trying to trigger the build of “Services/Foobar” you must use
Services%2FFoobar
Trigger
This is the name of the Trigger that you want to use from your Pipeline configuration
Type
I ended up omitting this, and pretty much everything else. My request looked like so:
curl \ [9:04:42]
-X POST \
-H "Authorization: ${API_KEY} \
-H 'Content-Type: application/json; charset=utf-8' \
-d "{\"branch\": \"master\", \"trigger\":\"${PIPELINE_TRIGGER_NAME}\"}" \
"https://g.codefresh.io/api/pipelines/run/${PIPELINE_PROJECT_NAME}%2F${PIPELINE_NAME}"