awslabs / awslabs/aws-deployment-framework
Proposal for New Provider Types - "Monitor" and "Test"
- Dominant language
- Python
- Stars
- 699
- Forks
- 235
- Avg merge
- 20h 53m
- Merged PRs (30d)
- 7
Description
### What and Why
ADF currently has three different type of providers: Source, Build, Deploy.
I'd like to propose two new types of providers for the default pipeline type.
These are **Monitor** and **Test**
The purpose of these providers is to make it easier for customers to build in automated monitoring and testing into their pipelines.
### How?
The new providers should each come with a default action
**Monitor**
A new provider that creates an action that happens after the deploy action has been ran for a target.
The first version of this action should allow for a list of CloudWatch Alarm names to be specified. It will then monitor these alarms for a defined period of time. Once that time has passed, it will then progress the pipeline to the next stage/action as appropriate.
**Test**
A new provider that creates an action that happens after the deploy action has been ran for a target, but can either run in parallel or before the monitor stage.
The first version of this action should allow for basic HTTP/S endpoints to be invoked with an expected response code checked.
If it passes, it will then progress the pipeline to next action or if it fails, it will stop the pipeline.
### TL;DR
Two new providers that allow for automated testing and monitoring built into the pipeline.
Contributor guide
Research direction
No files, tests, or entry points are named. Start by locating the existing Source, Build, and Deploy provider implementations and the default pipeline flow, then define how Monitor and Test actions fit after deployment, including CloudWatch alarm monitoring, HTTP/S response checks, failure behavior, and sequencing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, python
- Domain
- cloud, devops
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100