From 553e02048c8277aa82bfd0e35b9598b7f02461d9 Mon Sep 17 00:00:00 2001 From: Aaron Massicotte Date: Wed, 22 Mar 2023 10:47:11 +0100 Subject: [PATCH 1/2] initial draft --- text/0099-table-promotion-flow.md | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 text/0099-table-promotion-flow.md diff --git a/text/0099-table-promotion-flow.md b/text/0099-table-promotion-flow.md new file mode 100644 index 0000000..2f617b7 --- /dev/null +++ b/text/0099-table-promotion-flow.md @@ -0,0 +1,31 @@ +# Table Promotion Flow + +Allow starting deployment flows from previous artifacts which are perhaps multiple iterations previous. + +## Motivation + +Keptn sits in a very interesting place in the CI/CD CNCF space, where it helps by gluing many tools together +which otherwise may have a gap. One of these gaps is visibility on environment management and deployment management +with defined sources of artifacts and defined possible environments. + +## Explanation + +This table would be created by defining artifact sources, sources of deployment information (ex. ArgoCD), and yaml which +defines the possible environments and how promotion happens. Maybe this could be in Shipyard + +A UI ties all this together, with a table where rows are artifacts (or sets of artifacts), and columns are environments. +You should be able to click a button to trigger either a rollback to any previous artifact, or if quality gates are green +then promote forward into a downstream environment. + +### Prerequisites / Proposed solution + +* Source of artifacts with query to represent which ones are relevant for this project +* Sources of deployments with information to relate with the artifacts to identify what is currently deployed in what +environment + +## Open questions/Implementation details + +* How to store the deployment information statelessly? ArgoCD can be queried, but this is a big assumption that ArgoCD +is being used +* Deployment needs to be done indirectly, ex. by triggering an automation tool which modifies a GitOps repo. This somehow +needs to be setup or else the functionality will violate GitOps From 25a1b6436c23f348b56bc6cbe01d0731f88bf974 Mon Sep 17 00:00:00 2001 From: Aaron Massicotte Date: Wed, 22 Mar 2023 10:56:13 +0100 Subject: [PATCH 2/2] add drafting notice --- text/0099-table-promotion-flow.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/text/0099-table-promotion-flow.md b/text/0099-table-promotion-flow.md index 2f617b7..15c25e7 100644 --- a/text/0099-table-promotion-flow.md +++ b/text/0099-table-promotion-flow.md @@ -1,5 +1,7 @@ # Table Promotion Flow +**State: DRAFTING** + Allow starting deployment flows from previous artifacts which are perhaps multiple iterations previous. ## Motivation