Closed izgeri closed 3 years ago
The E2E scripts that are being developed as described in Issue #2062 depend upon the availability of three Helm charts that are being developed in separate issues:
For the E2E workflow described below, it's assumed that a Conjur instance has been deployed and is available at the time that the E2E workflow scripts / Helm deployments are invoked. The "front end" work of deploying Conjur instances will be developed in these CI-centric issues:
The test setup should support the following workflow:
=========================================================
=========================================================
https://github.com/cyberark/conjur-authn-k8s-client/issues/239: There are reusable scripts for development environments and automated testing
NOTE: These scripts skip the addition of support for Secrets Provider init/app containers. This support will be added incrementally and separately (see Issue #xxxxxx)
This issue involves basically making a copy or fork of conjurdemos/kubernetes-conjur-demo scripts and modifying these scripts to use Helm chart installs (for cluster prep, Namespace prep, and application deploy), rather than using bash/sed/kubectl to do deployments.
The scripts for Issue https://github.com/cyberark/conjur-authn-k8s-client/issues/239 can be developed as follows:
set_env_vars.sh
script to define & set environment variables that will be used
as --set <key>=<value>
command line settings for all chart values in each Helm chart
(cluster prep, Namespace prep, and application deploy). (See the values.yaml
files in
each Helm chart to see what values are needed).0_prep_check_dependencies.sh
file, and remove its invocation from the start
script. The Helm charts should now provide the required checking for required settings.4_app_create_namespace.sh
to:
helm install ...
for cluster prep helm chart (could be a separate bash script)helm install ...
for Namespace prep helm chart (could be a separate bash script)5_app_store_conjur_cert.sh
script and remove its invocation from start
7_app_deploy.sh
to use new sample Application deploy Helm chart=========================================================
policy
subdirectory to include application policies for
Secrets Provider init container and Secrets Provider standalone "app" container.7_app_deploy.sh
to include Helm install of applications that use
Secrets Provider init container and Secrets Provider standalone "app" container.8_app_verify_authentication
to add verification that applications using
Secrets Provider can access Conjur secrets.=========================================================
oc
CLI that appear in the kubernetes-conjur-demo scripts are also
included in the scripts created by Issue #239:7_app_deploy.sh
to include deployment of applications using the Secrets Provider
init and app container authenticators (i.e. by passing the necessary chart values to the
application deployment Helm chart.=========================================================
There is an initial draft in #2062.
The goal of this spike is to complete the draft in #2062 that describes the test plan we'll use for the improved Conjur configuration management project. The outcome of the spike is a thorough draft described in #2062 and broken out into small (1-3 day) issues.
Once written, the test plan will be reviewed by the quality architect.