Loading oka/apps/cicd-full-suite/jenkins/manifests/hr.yaml 0 → 100644 +35 −0 Original line number Diff line number Diff line ####################################################################################### # 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: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: jenkins namespace: jenkins spec: chart: spec: chart: jenkins version: '13.4.20' reconcileStrategy: ChartVersion sourceRef: kind: HelmRepository name: bitnamicharts namespace: flux-system interval: 3m0s targetNamespace: jenkins values: {} oka/apps/cicd-full-suite/jenkins/templates/ks.yaml 0 → 100644 +48 −0 Original line number Diff line number Diff line ####################################################################################### # 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: kustomize.toolkit.fluxcd.io/v1 kind: Kustomization metadata: name: jenkins-${APPNAME} namespace: flux-system spec: dependsOn: - name: cicd-prereq-ns-${APPNAME} - name: cicd-prereq-helmrepos-${APPNAME} interval: 1h0m0s path: ./apps/cicd-full-suite/jenkins/manifests prune: true targetNamespace: ${TARGET_JENKINS_NS} wait: true sourceRef: kind: GitRepository name: sw-catalogs namespace: flux-system patches: - target: kind: HelmRelease version: v2beta1 name: jenkins namespace: jenkins patch: |- - op: replace path: /metadata/name value: jenkins-${APPNAME} - op: replace path: /spec/targetNamespace value: ${TARGET_JENKINS_NS} oka/apps/cicd-full-suite/model.yaml 0 → 100644 +236 −0 Original line number Diff line number Diff line apiVersion: osm.softwaredefinition.io/v1alpha1 kind: AppBlueprint metadata: # Replace by real app name name: cicd-full-suite spec: # description: "Example App Blueprint" description: "Example App Instantiation" version: "1.0.0" ksus: - name: namespaces target: # Absolute path to KSU folder: repo-path + base-path + relative-path repo-path: - ${FLEET_REPOS_BASE} # Default: `/repos` - fleet-osm # Repo name. base-path: - ${PROJECT_NAME} # Project name. - ${PROFILE_TYPE} - ${PROFILE_NAME} relative-path: # App folder + ksu folder (in case of multiple KSUs) - ${APPNAME} - pre-requirements - namespaces patterns: - name: cicd-prereq-ns source: # Absolute path to OKA folder: repo-path + base-path + relative-path repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: # Pattern template folder (default: `templates/`) - pre-requirements - ns - templates # Pattern-specific parameters, to be added as needed (optional) # parameters: {} bricks: - name: cicd-prereq-ns type: basic kustomization: name: ${PATTERN_NAME}-${APPNAME} # OPTIONAL: # namespace: flux-system source: # Absolute path to manifests referenced by the Kustomization (brick folder): base-path + relative-path repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: # Pattern template folder (default: `templates/`) - pre-requirements - ns - manifests - placeholder options: components: # - ../ns-gitlab - ../ns-jenkins # - ../ns-harbor - name: helmrepos target: # Absolute path to KSU folder: repo-path + base-path + relative-path repo-path: - ${FLEET_REPOS_BASE} # Default: `/repos` - fleet-osm # Repo name. base-path: - ${PROJECT_NAME} # Project name. - ${PROFILE_TYPE} - ${PROFILE_NAME} relative-path: # App folder + ksu folder (in case of multiple KSUs) - ${APPNAME} - pre-requirements - helmrepos patterns: - name: cicd-prereq-helmrepos source: # Absolute path to OKA folder: repo-path + base-path + relative-path repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: # Pattern template folder (default: `templates/`) - pre-requirements - helmrepos - templates # Pattern-specific parameters, to be added as needed (optional) # parameters: {} bricks: - name: cicd-prereq-helmrepos type: basic kustomization: name: ${PATTERN_NAME}-${APPNAME} # OPTIONAL: # namespace: flux-system source: # Absolute path to manifests referenced by the Kustomization (brick folder): base-path + relative-path repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: # Pattern template folder (default: `templates/`) - pre-requirements - helmrepos - manifests - placeholder options: components: - ../bitnami - name: jenkins target: # Absolute path to KSU folder: repo-path + base-path + relative-path repo-path: - ${FLEET_REPOS_BASE} # Default: `/repos` - fleet-osm # Repo name. base-path: - ${PROJECT_NAME} # Project name. - ${PROFILE_TYPE} - ${PROFILE_NAME} relative-path: # App folder + ksu folder (in case of multiple KSUs) - ${APPNAME} - jenkins patterns: - name: jenkins source: # Absolute path to OKA folder: repo-path + base-path + relative-path repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: # Pattern template folder (default: `templates/`) - jenkins - templates # Pattern-specific parameters, to be added as needed (optional) # parameters: {} bricks: - name: jenkins type: HelmReleaseSet kustomization: name: jenkins-${APPNAME} # OPTIONAL: # namespace: flux-system source: repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: - jenkins - manifests hrset-values: - name: jenkins HelmRelease: name: jenkins-${APPNAME} namespace: ${TARGET_JENKINS_NS} # # Update accordingly: # # inline-values: # key1: value1 # key2: value2 # # # Update accordingly: # # valuesFrom: # configMapKeyRef: # name: jenkins-${APPNAME} # # OPTIONAL: # # key: values.yaml # # # Update accordingly: # # secretKeyRef: # name: jenkins-${APPNAME} # # OPTIONAL: # # key: values.yaml # # # Update accordingly: # # create-cm: # If the map is empty, the ConfigMap will not be created # cm-key1: cm-value1 # cm-key2: cm-value2 # # # Update accordingly: # # create-secret: # If the map is empty, the Secret will not be created # env-values-reference: jenkins-${APPNAME} # # parameters: # - name: replicaCount # description: "Number of replicas" # # default: 1 # value: 1 # - name: ingressHost # description: "Ingress hostname" # value: "ingress for-${APPNAME}" # readinessChecks: # - resource: # kind: Deployment # name: main-deployment-${APPNAME} # condition: # type: Available # status: "True" # - resource: # kind: Service # name: main-service # condition: # type: Ready # TODO: # outputValues: # - name: apiEndpoint # valueFrom: # serviceIP: # name: main-service # - name: adminPassword # valueFrom: # secretKeyRef: # name: app-secrets # key: admin-password # TODO: # dependencies: # - name: nginx-ingress # type: InfraController # version: ">=1.0.0" oka/apps/cicd-full-suite/pre-requirements/helmrepos/manifests/bitnami/kustomization.yaml 0 → 100644 +4 −0 Original line number Diff line number Diff line apiVersion: kustomize.config.k8s.io/v1alpha1 kind: Component resources: - repo.yaml oka/apps/cicd-full-suite/pre-requirements/helmrepos/manifests/bitnami/repo.yaml 0 → 100644 +26 −0 Original line number Diff line number Diff line ####################################################################################### # 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: source.toolkit.fluxcd.io/v1beta2 kind: HelmRepository metadata: name: bitnamicharts namespace: flux-system spec: interval: 10m0s type: oci url: oci://registry-1.docker.io/bitnamicharts Loading
oka/apps/cicd-full-suite/jenkins/manifests/hr.yaml 0 → 100644 +35 −0 Original line number Diff line number Diff line ####################################################################################### # 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: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: jenkins namespace: jenkins spec: chart: spec: chart: jenkins version: '13.4.20' reconcileStrategy: ChartVersion sourceRef: kind: HelmRepository name: bitnamicharts namespace: flux-system interval: 3m0s targetNamespace: jenkins values: {}
oka/apps/cicd-full-suite/jenkins/templates/ks.yaml 0 → 100644 +48 −0 Original line number Diff line number Diff line ####################################################################################### # 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: kustomize.toolkit.fluxcd.io/v1 kind: Kustomization metadata: name: jenkins-${APPNAME} namespace: flux-system spec: dependsOn: - name: cicd-prereq-ns-${APPNAME} - name: cicd-prereq-helmrepos-${APPNAME} interval: 1h0m0s path: ./apps/cicd-full-suite/jenkins/manifests prune: true targetNamespace: ${TARGET_JENKINS_NS} wait: true sourceRef: kind: GitRepository name: sw-catalogs namespace: flux-system patches: - target: kind: HelmRelease version: v2beta1 name: jenkins namespace: jenkins patch: |- - op: replace path: /metadata/name value: jenkins-${APPNAME} - op: replace path: /spec/targetNamespace value: ${TARGET_JENKINS_NS}
oka/apps/cicd-full-suite/model.yaml 0 → 100644 +236 −0 Original line number Diff line number Diff line apiVersion: osm.softwaredefinition.io/v1alpha1 kind: AppBlueprint metadata: # Replace by real app name name: cicd-full-suite spec: # description: "Example App Blueprint" description: "Example App Instantiation" version: "1.0.0" ksus: - name: namespaces target: # Absolute path to KSU folder: repo-path + base-path + relative-path repo-path: - ${FLEET_REPOS_BASE} # Default: `/repos` - fleet-osm # Repo name. base-path: - ${PROJECT_NAME} # Project name. - ${PROFILE_TYPE} - ${PROFILE_NAME} relative-path: # App folder + ksu folder (in case of multiple KSUs) - ${APPNAME} - pre-requirements - namespaces patterns: - name: cicd-prereq-ns source: # Absolute path to OKA folder: repo-path + base-path + relative-path repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: # Pattern template folder (default: `templates/`) - pre-requirements - ns - templates # Pattern-specific parameters, to be added as needed (optional) # parameters: {} bricks: - name: cicd-prereq-ns type: basic kustomization: name: ${PATTERN_NAME}-${APPNAME} # OPTIONAL: # namespace: flux-system source: # Absolute path to manifests referenced by the Kustomization (brick folder): base-path + relative-path repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: # Pattern template folder (default: `templates/`) - pre-requirements - ns - manifests - placeholder options: components: # - ../ns-gitlab - ../ns-jenkins # - ../ns-harbor - name: helmrepos target: # Absolute path to KSU folder: repo-path + base-path + relative-path repo-path: - ${FLEET_REPOS_BASE} # Default: `/repos` - fleet-osm # Repo name. base-path: - ${PROJECT_NAME} # Project name. - ${PROFILE_TYPE} - ${PROFILE_NAME} relative-path: # App folder + ksu folder (in case of multiple KSUs) - ${APPNAME} - pre-requirements - helmrepos patterns: - name: cicd-prereq-helmrepos source: # Absolute path to OKA folder: repo-path + base-path + relative-path repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: # Pattern template folder (default: `templates/`) - pre-requirements - helmrepos - templates # Pattern-specific parameters, to be added as needed (optional) # parameters: {} bricks: - name: cicd-prereq-helmrepos type: basic kustomization: name: ${PATTERN_NAME}-${APPNAME} # OPTIONAL: # namespace: flux-system source: # Absolute path to manifests referenced by the Kustomization (brick folder): base-path + relative-path repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: # Pattern template folder (default: `templates/`) - pre-requirements - helmrepos - manifests - placeholder options: components: - ../bitnami - name: jenkins target: # Absolute path to KSU folder: repo-path + base-path + relative-path repo-path: - ${FLEET_REPOS_BASE} # Default: `/repos` - fleet-osm # Repo name. base-path: - ${PROJECT_NAME} # Project name. - ${PROFILE_TYPE} - ${PROFILE_NAME} relative-path: # App folder + ksu folder (in case of multiple KSUs) - ${APPNAME} - jenkins patterns: - name: jenkins source: # Absolute path to OKA folder: repo-path + base-path + relative-path repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: # Pattern template folder (default: `templates/`) - jenkins - templates # Pattern-specific parameters, to be added as needed (optional) # parameters: {} bricks: - name: jenkins type: HelmReleaseSet kustomization: name: jenkins-${APPNAME} # OPTIONAL: # namespace: flux-system source: repo-path: - ${CATALOG_REPOS_BASE} # Default: `/repos` - sw-catalogs-osm # Repo name base-path: # Absolute path to OKA folder - apps # OKA type - cicd-full-suite # OKA folder relative-path: - jenkins - manifests hrset-values: - name: jenkins HelmRelease: name: jenkins-${APPNAME} namespace: ${TARGET_JENKINS_NS} # # Update accordingly: # # inline-values: # key1: value1 # key2: value2 # # # Update accordingly: # # valuesFrom: # configMapKeyRef: # name: jenkins-${APPNAME} # # OPTIONAL: # # key: values.yaml # # # Update accordingly: # # secretKeyRef: # name: jenkins-${APPNAME} # # OPTIONAL: # # key: values.yaml # # # Update accordingly: # # create-cm: # If the map is empty, the ConfigMap will not be created # cm-key1: cm-value1 # cm-key2: cm-value2 # # # Update accordingly: # # create-secret: # If the map is empty, the Secret will not be created # env-values-reference: jenkins-${APPNAME} # # parameters: # - name: replicaCount # description: "Number of replicas" # # default: 1 # value: 1 # - name: ingressHost # description: "Ingress hostname" # value: "ingress for-${APPNAME}" # readinessChecks: # - resource: # kind: Deployment # name: main-deployment-${APPNAME} # condition: # type: Available # status: "True" # - resource: # kind: Service # name: main-service # condition: # type: Ready # TODO: # outputValues: # - name: apiEndpoint # valueFrom: # serviceIP: # name: main-service # - name: adminPassword # valueFrom: # secretKeyRef: # name: app-secrets # key: admin-password # TODO: # dependencies: # - name: nginx-ingress # type: InfraController # version: ">=1.0.0"
oka/apps/cicd-full-suite/pre-requirements/helmrepos/manifests/bitnami/kustomization.yaml 0 → 100644 +4 −0 Original line number Diff line number Diff line apiVersion: kustomize.config.k8s.io/v1alpha1 kind: Component resources: - repo.yaml
oka/apps/cicd-full-suite/pre-requirements/helmrepos/manifests/bitnami/repo.yaml 0 → 100644 +26 −0 Original line number Diff line number Diff line ####################################################################################### # 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: source.toolkit.fluxcd.io/v1beta2 kind: HelmRepository metadata: name: bitnamicharts namespace: flux-system spec: interval: 10m0s type: oci url: oci://registry-1.docker.io/bitnamicharts