You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/supply-chain.md
+181-2Lines changed: 181 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,6 +36,185 @@ In our demo, we will use a number of additional ZTVP components. These component
36
36
*[Multicloud Object Gateway](https://docs.redhat.com/en/documentation/red_hat_openshift_container_storage/4.8/html/managing_hybrid_and_multicloud_resources/index) is a data service for OpenShift that provides an S3-compatible object storage. In our case, this component is necessary to provide a storage system to Quay.
37
37
*[Red Hat OpenShift Pipelines](https://docs.redhat.com/en/documentation/red_hat_openshift_pipelines/1.20) is a cloud-native CI/CD solution built on the Tekton framework. We will use this product to automate our secure supply chain process, but you could use your own CI/CD solution if one exists.
38
38
39
+
### Defining the values
40
+
41
+
To enable this use case, the following parameters should be defined within the [values-hub.yaml](../values-hub.yaml) file
42
+
43
+
* In the `clustergroup.namespaces` section, create the _Namespaces_ for the components by uncommenting the following
44
+
45
+
```shell
46
+
- openshift-storage:
47
+
operatorGroup: true
48
+
targetNamespace: openshift-storage
49
+
annotations:
50
+
openshift.io/cluster-monitoring: "true"
51
+
argocd.argoproj.io/sync-wave: "26"# Propagated to OperatorGroup by framework
52
+
- quay-enterprise:
53
+
annotations:
54
+
argocd.argoproj.io/sync-wave: "32"# Create before NooBaa and all Quay components
55
+
labels:
56
+
openshift.io/cluster-monitoring: "true"
57
+
- trusted-artifact-signer:
58
+
annotations:
59
+
argocd.argoproj.io/sync-wave: "32"# Auto-created by RHTAS operator
60
+
labels:
61
+
openshift.io/cluster-monitoring: "true"
62
+
- rhtpa-operator:
63
+
operatorGroup: true
64
+
targetNamespace: rhtpa-operator
65
+
annotations:
66
+
argocd.argoproj.io/sync-wave: "26"# Create before operator subscription
67
+
- trusted-profile-analyzer:
68
+
annotations:
69
+
argocd.argoproj.io/sync-wave: "32"# Create before RHTPA components
70
+
labels:
71
+
openshift.io/cluster-monitoring: "true"
72
+
- openshift-pipelines
73
+
```
74
+
75
+
* In the `clusterGroup.subscriptions` section, create the _Subscriptions_ for the components operators by uncommenting the following:
76
+
77
+
```shell
78
+
openshift-pipelines:
79
+
name: openshift-pipelines-operator-rh
80
+
namespace: openshift-operators
81
+
odf:
82
+
name: odf-operator
83
+
namespace: openshift-storage
84
+
channel: stable-4.20
85
+
annotations:
86
+
argocd.argoproj.io/sync-wave: "27"# Install after OperatorGroup (26)
87
+
quay-operator:
88
+
name: quay-operator
89
+
namespace: openshift-operators
90
+
channel: stable-3.15
91
+
annotations:
92
+
argocd.argoproj.io/sync-wave: "28" # Install after ODF operator
93
+
rhtas-operator:
94
+
name: rhtas-operator
95
+
namespace: openshift-operators
96
+
channel: stable
97
+
annotations:
98
+
argocd.argoproj.io/sync-wave: "29" # Install after Quay operator, before applications
99
+
catalogSource: redhat-operators
100
+
rhtpa-operator:
101
+
name: rhtpa-operator
102
+
namespace: rhtpa-operator # MUST use dedicated namespace (not openshift-operators)
103
+
channel: stable-v1.1 # Use stable-v1.1 channel for 1.1.x updates
104
+
catalogSource: redhat-operators
105
+
annotations:
106
+
argocd.argoproj.io/sync-wave: "27" # Install after OperatorGroup (26), before applications
107
+
```
108
+
109
+
* Configure the Argo CD _Applications_:
110
+
111
+
```shell
112
+
noobaa-mcg:
113
+
name: noobaa-mcg
114
+
namespace: openshift-storage
115
+
project: hub
116
+
path: charts/noobaa-mcg
117
+
annotations:
118
+
argocd.argoproj.io/sync-wave: "36"# Deploy after core services
119
+
quay-registry:
120
+
name: quay-registry
121
+
namespace: quay-enterprise
122
+
project: hub
123
+
path: charts/quay-registry
124
+
annotations:
125
+
argocd.argoproj.io/sync-wave: "41" # Deploy after NooBaa storage backend
126
+
trusted-artifact-signer:
127
+
name: trusted-artifact-signer
128
+
namespace: trusted-artifact-signer
129
+
project: hub
130
+
path: charts/rhtas-operator
131
+
annotations:
132
+
argocd.argoproj.io/sync-wave: "46" # Deploy after dependencies
By default, ZTVP deploys a built-in Red Hat Quay registry. However, you can use your own container registry (e.g., quay.io, Docker Hub, GitHub Container Registry, or a private registry) instead.
@@ -213,7 +392,7 @@ resourceHealthChecks:
213
392
return hs
214
393
```
215
394
216
-
## Pipeline
395
+
## Automated Secure Supply Chain Pipeline
217
396
218
397
To build and certify the application, we will use _Red Hat OpenShift Pipelines_.
219
398
@@ -408,7 +587,7 @@ The credentials to access the Quay web interface can be obtained as follows:
408
587
-o jsonpath='{.items[0].spec.host}')"
409
588
```
410
589
411
-
* Quay username: The same one you specified in `values-hub.yaml` or **quay-user**.
590
+
* Quay username: The same one you specified in `values-hub.yaml` or **quay-admin**.
0 commit comments