awslabs / awslabs/aws-deployment-framework

Proposal for New Provider Types - "Monitor" and "Test"

Open
#391 0 comments 0 reactions 0 assignees View on GitHub
enhancement
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.