Update manifests in the sw-catalog for jenkins app, add namespace and testacme app
Change-Id: Ic63604aacda256729e98c4d1a286020925dd92db
Signed-off-by: garciadeblas <gerardo.garciadeblas@telefonica.com>
diff --git a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/manifests/bitnamicharts-repo.yaml b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/manifests/bitnamicharts-repo.yaml
index 354b837..429a658 100644
--- a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/manifests/bitnamicharts-repo.yaml
+++ b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/manifests/bitnamicharts-repo.yaml
@@ -14,7 +14,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#######################################################################################
-
---
apiVersion: source.toolkit.fluxcd.io/v1beta2
kind: HelmRepository
diff --git a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/manifests/jenkins-hr.yaml b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/manifests/jenkins-hr.yaml
index c5d7eb3..f83ae76 100644
--- a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/manifests/jenkins-hr.yaml
+++ b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/manifests/jenkins-hr.yaml
@@ -14,7 +14,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#######################################################################################
-
---
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
@@ -31,8 +30,6 @@
kind: HelmRepository
name: bitnamicharts
namespace: jenkins
- install:
- createNamespace: true
interval: 3m0s
targetNamespace: jenkins
values: {}
diff --git a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ks.yaml b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ks.yaml
index bbf4d7b..276db4b 100644
--- a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ks.yaml
+++ b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ks.yaml
@@ -14,18 +14,52 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#######################################################################################
-
---
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
- name: jenkins
- namespace: jenkins
+ name: ${APPNAME}
+ namespace: flux-system
spec:
interval: 1h0m0s
path: ./apps/jenkins/manifests
prune: true
+ targetNamespace: ${TARGET_NS}
+ wait: true
sourceRef:
kind: GitRepository
name: sw-catalogs
namespace: flux-system
+ patches:
+ # - target:
+ # kind: Namespace
+ # version: v1
+ # name: jenkins
+ # patch: |-
+ # kind: Namespace
+ # metadata:
+ # name: ${TARGET_NS}
+ - target:
+ kind: HelmRelease
+ version: v2beta1
+ name: jenkins
+ namespace: jenkins
+ patch: |-
+ - op: replace
+ path: /metadata/name
+ value: ${APPNAME}
+ - op: replace
+ path: /spec/chart/spec/sourceRef/namespace
+ value: ${TARGET_NS}
+ - op: replace
+ path: /spec/targetNamespace
+ value: ${TARGET_NS}
+ - target:
+ kind: HelmRepository
+ version: v2beta1
+ name: bitnamicharts
+ namespace: jenkins
+ patch: |-
+ - op: replace
+ path: /metadata/namespace
+ value: ${TARGET_NS}
diff --git a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/namespace/manifests/namespace.yaml
similarity index 89%
rename from installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml
rename to installers/mgmt-cluster/flux/templates/sw-catalogs/apps/namespace/manifests/namespace.yaml
index ca2fff8..ac2c4af 100644
--- a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml
+++ b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/namespace/manifests/namespace.yaml
@@ -14,11 +14,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#######################################################################################
-
+---
apiVersion: v1
kind: Namespace
metadata:
- creationTimestamp: null
- name: jenkins
-spec: {}
-status: {}
+ name: mynamespace
+ annotations:
+ kustomize.toolkit.fluxcd.io/ssa: "IfNotPresent"
diff --git a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/namespace/templates/namespace-ks.yaml
similarity index 60%
copy from installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml
copy to installers/mgmt-cluster/flux/templates/sw-catalogs/apps/namespace/templates/namespace-ks.yaml
index ca2fff8..3e22d96 100644
--- a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml
+++ b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/namespace/templates/namespace-ks.yaml
@@ -14,11 +14,27 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#######################################################################################
-
-apiVersion: v1
-kind: Namespace
+---
+apiVersion: kustomize.toolkit.fluxcd.io/v1
+kind: Kustomization
metadata:
- creationTimestamp: null
- name: jenkins
-spec: {}
-status: {}
+ name: ${APPNAME}
+ namespace: flux-system
+spec:
+ interval: 1h0m0s
+ path: ./apps/namespace/manifests
+ prune: true
+ # deletionPolicy: Orphan
+ sourceRef:
+ kind: GitRepository
+ name: sw-catalogs
+ namespace: flux-system
+ patches:
+ - target:
+ kind: Namespace
+ version: v1
+ name: mynamespace
+ patch: |-
+ - op: replace
+ path: /metadata/name
+ value: ${TARGET_NS}
diff --git a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/testacme/manifests/testacme-deploy.yaml b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/testacme/manifests/testacme-deploy.yaml
new file mode 100644
index 0000000..e467eca
--- /dev/null
+++ b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/testacme/manifests/testacme-deploy.yaml
@@ -0,0 +1,54 @@
+#######################################################################################
+# Copyright ETSI Contributors and Others.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#######################################################################################
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ creationTimestamp: null
+ labels:
+ config: ${appname}
+ name: ${appname}-deployment
+ namespace: ${target_ns}
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ run: ${appname}
+ strategy: {}
+ template:
+ metadata:
+ creationTimestamp: null
+ labels:
+ mex-app: ${appname}-deployment
+ mexAppInstName: test
+ mexAppInstOrg: AcmeAppCo
+ mexDeployGen: kubernetes-basic
+ run: ${appname}
+ spec:
+ containers:
+ - image: docker.io/hashicorp/http-echo:1.0
+ imagePullPolicy: Always
+ name: ${appname}
+ ports:
+ - containerPort: 5678
+ protocol: TCP
+ resources: {}
+ args:
+ - "-text=\"${echo_message:=hello}\""
+ imagePullSecrets:
+ - name: docker.io
+
diff --git a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/testacme/manifests/testacme-svc.yaml
similarity index 75%
copy from installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml
copy to installers/mgmt-cluster/flux/templates/sw-catalogs/apps/testacme/manifests/testacme-svc.yaml
index ca2fff8..cb9f968 100644
--- a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml
+++ b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/testacme/manifests/testacme-svc.yaml
@@ -14,11 +14,22 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#######################################################################################
-
+---
apiVersion: v1
-kind: Namespace
+kind: Service
metadata:
creationTimestamp: null
- name: jenkins
-spec: {}
-status: {}
+ labels:
+ config: ${appname}
+ run: ${appname}
+ name: ${appname}-http
+ namespace: ${target_ns}
+spec:
+ ports:
+ - name: http5678tls
+ port: 5678
+ protocol: TCP
+ targetPort: 5678
+ selector:
+ run: ${appname}
+ type: ClusterIP
diff --git a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/testacme/templates/testacme-ks.yaml
similarity index 64%
copy from installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml
copy to installers/mgmt-cluster/flux/templates/sw-catalogs/apps/testacme/templates/testacme-ks.yaml
index ca2fff8..4401d4b 100644
--- a/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/jenkins/templates/jenkins-ns.yaml
+++ b/installers/mgmt-cluster/flux/templates/sw-catalogs/apps/testacme/templates/testacme-ks.yaml
@@ -14,11 +14,24 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#######################################################################################
-
-apiVersion: v1
-kind: Namespace
+---
+apiVersion: kustomize.toolkit.fluxcd.io/v1
+kind: Kustomization
metadata:
- creationTimestamp: null
- name: jenkins
-spec: {}
-status: {}
+ name: ${APPNAME}
+ namespace: flux-system
+spec:
+ interval: 1h0m0s
+ path: ./apps/testacme/manifests
+ prune: true
+ wait: true
+ sourceRef:
+ kind: GitRepository
+ name: sw-catalogs
+ namespace: flux-system
+ # Input parameters
+ postBuild:
+ substitute:
+ appname: ${APPNAME}
+ target_ns: ${TARGET_NS}
+ echo_message: ${ECHO_MESSAGE}