diff --git a/integration-tests/test-cases/custom-docker-registry/test-openshift-xld-mon.yaml b/integration-tests/test-cases/custom-docker-registry/test-openshift-xld-mon.yaml new file mode 100644 index 00000000..18b22369 --- /dev/null +++ b/integration-tests/test-cases/custom-docker-registry/test-openshift-xld-mon.yaml @@ -0,0 +1,128 @@ +expect: + assertion: + generated_files: + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[3]metadata.annotations.kubernetes\.io/ingress\.class': 'haproxy' + '[3]metadata.annotations.ingress\.kubernetes\.io/rewrite-target': '/' + '[3]metadata.annotations.ingress\.kubernetes\.io/ssl-redirect': 'false' + '[3]metadata.annotations.ingress\.kubernetes\.io/affinity': 'cookie' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-name': 'SESSION_XLD' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-strategy': 'prefix' + secrets: + DockerPass: docker-pass + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + values: + DockerUser: docker-user + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + RegistryURL: docker.io/xebialabs + UseCustomRegistry: true + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldVersion: xl-deploy:8.5.3 + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/xl-release.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml +with_answers: + DockerPass: docker-pass + DockerUser: docker-user + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + RegistryURL: docker.io/xebialabs + UseCustomRegistry: true + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldVersion: xl-deploy:8.5.3 +xl_mode: up diff --git a/integration-tests/test-cases/custom-docker-registry/test-openshift-xld-xlr-mon.yaml b/integration-tests/test-cases/custom-docker-registry/test-openshift-xld-xlr-mon.yaml new file mode 100644 index 00000000..58daa28f --- /dev/null +++ b/integration-tests/test-cases/custom-docker-registry/test-openshift-xld-xlr-mon.yaml @@ -0,0 +1,232 @@ +expect: + assertion: + generated_files: + - file_name: xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + has_elements: + '[3]spec.template.spec.initContainers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[3]spec.template.spec.initContainers[1].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[3]spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/xl-release:8.5.3' + '[3]spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + has_elements: + '[1]spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/rabbitmq:3.8.0-management' + '[1]spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + has_elements: + '[1]spec.template.spec.initContainers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[1]spec.template.spec.initContainers[1].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[1]spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/postgres:10.5' + '[1]spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + has_elements: + '[0]spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/defaultbackend:1.4' + '[0]spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + has_elements: + '[6]spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/haproxy-ingress:v0.6' + '[6]spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + has_elements: + 'spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/nfs-client-provisioner:latest' + 'spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[4]spec.template.spec.initContainers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[4]spec.template.spec.initContainers[1].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[4]spec.template.spec.initContainers[2].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[4]spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/xl-deploy:8.5.3' + '[4]spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + has_elements: + '[1]spec.template.spec.initContainers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[1]spec.template.spec.initContainers[1].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[1]spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/xl-deploy:8.5.3' + '[1]spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + has_elements: + '[0]spec.template.spec.initContainers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[0]spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/grafana:5.4.4' + '[0]spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + has_elements: + 'spec.template.spec.initContainers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + 'spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + 'spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + has_elements: + 'spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/kube-state-metrics:v1.5.0' + 'spec.template.spec.containers[1].image': 'docker.io/xebialabsunsupported/addon-resizer:1.8.3' + 'spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + has_elements: + 'spec.template.spec.initContainers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + 'spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/prometheus:v2.7.2' + 'spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + has_elements: + '[0]spec.template.spec.initContainers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[0]spec.template.spec.initContainers[1].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[0]spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/elasticsearch-oss:6.5.0' + '[0]spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + has_elements: + 'spec.jobTemplate.spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/xl-es-curator' + 'spec.jobTemplate.spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + has_elements: + 'spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/fluentd-elasticsearch:v2.3.2' + 'spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + has_elements: + '[0]spec.template.spec.initContainers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + '[0]spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/kibana-oss:6.5.0' + '[0]spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + has_elements: + 'spec.template.spec.initContainers[0].image': 'docker.io/xebialabsunsupported/tiny-tools' + 'spec.template.spec.initContainers[1].image': 'docker.io/xebialabsunsupported/tiny-tools' + 'spec.template.spec.containers[0].image': 'docker.io/xebialabsunsupported/kibana-dashboard:1.0.0' + 'spec.template.spec.imagePullSecrets[0].name': 'dockercred' + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[3]metadata.annotations.kubernetes\.io/ingress\.class': 'haproxy' + '[3]metadata.annotations.ingress\.kubernetes\.io/rewrite-target': '/' + '[3]metadata.annotations.ingress\.kubernetes\.io/ssl-redirect': 'false' + '[3]metadata.annotations.ingress\.kubernetes\.io/affinity': 'cookie' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-name': 'SESSION_XLD' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-strategy': 'prefix' + secrets: + DockerPass: docker-pass + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + DockerUser: docker-user + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + RegistryURL: docker.io/xebialabsunsupported + UseCustomRegistry: true + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldVersion: xl-deploy:8.5.3 + XlrDbName: xl-release + XlrDbUser: xl-release + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + XlrVersion: xl-release:8.5.3 + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml +with_answers: + DockerPass: docker-pass + DockerUser: docker-user + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + RegistryURL: docker.io/xebialabsunsupported + UseCustomRegistry: true + UseCustomRegistryForAllImages: true + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldVersion: xl-deploy:8.5.3 + XlrAdminPass: password + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report + XlrVersion: xl-release:8.5.3 +xl_mode: up diff --git a/integration-tests/test-cases/custom-docker-registry/test-openshift-xld-xlr.yaml b/integration-tests/test-cases/custom-docker-registry/test-openshift-xld-xlr.yaml new file mode 100644 index 00000000..f1de1677 --- /dev/null +++ b/integration-tests/test-cases/custom-docker-registry/test-openshift-xld-xlr.yaml @@ -0,0 +1,140 @@ +expect: + assertion: + generated_files: + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[3]metadata.annotations.kubernetes\.io/ingress\.class': 'haproxy' + '[3]metadata.annotations.ingress\.kubernetes\.io/rewrite-target': '/' + '[3]metadata.annotations.ingress\.kubernetes\.io/ssl-redirect': 'false' + '[3]metadata.annotations.ingress\.kubernetes\.io/affinity': 'cookie' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-name': 'SESSION_XLD' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-strategy': 'prefix' + secrets: + DockerPass: docker-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + DockerUser: docker-user + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 172.16.0.45 + NfsSharePath: /devops-ocp + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + RegistryURL: docker.io/xebialabs + UseCustomRegistry: true + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldVersion: xl-deploy:9.6 + XlrDbName: xl-release + XlrDbUser: xl-release + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + XlrVersion: xl-release:9.6 + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + to_not_exist: + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml +with_answers: + DockerPass: docker-pass + DockerUser: docker-user + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 172.16.0.45 + NfsSharePath: /devops-ocp + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + RegistryURL: docker.io/xebialabs + UseCustomRegistry: true + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldVersion: xl-deploy:9.6 + XlrAdminPass: password + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report + XlrVersion: xl-release:9.6 +xl_mode: up diff --git a/integration-tests/test-cases/custom-docker-registry/test-openshift-xlr-mon.yaml b/integration-tests/test-cases/custom-docker-registry/test-openshift-xlr-mon.yaml new file mode 100644 index 00000000..169201da --- /dev/null +++ b/integration-tests/test-cases/custom-docker-registry/test-openshift-xlr-mon.yaml @@ -0,0 +1,126 @@ +expect: + assertion: + generated_files: [] + secrets: + DockerPass: docker-pass + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + DockerUser: docker-user + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + RegistryURL: docker.io/xebialabs + UseCustomRegistry: true + UseKubeconfig: false + XlrDbName: xl-release + XlrDbUser: xl-release + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + XlrVersion: xl-release:8.5.3 + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/xl-deploy.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + +with_answers: + DockerPass: docker-pass + DockerUser: docker-user + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + RegistryURL: docker.io/xebialabs + UseCustomRegistry: true + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report + XlrVersion: xl-release:8.5.3 +xl_mode: up diff --git a/integration-tests/test-cases/custom-namespace/test-openshift-xld-mon.yaml b/integration-tests/test-cases/custom-namespace/test-openshift-xld-mon.yaml new file mode 100644 index 00000000..a21253b1 --- /dev/null +++ b/integration-tests/test-cases/custom-namespace/test-openshift-xld-mon.yaml @@ -0,0 +1,115 @@ +expect: + assertion: + generated_files: [] + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + values: + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldOfficialVersion: 9.5.1 + Namespace: customNamespace + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/xl-release.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml +with_answers: + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldOfficialVersion: 9.5.1 + UseCustomNamespace: true + Namespace: customNamespace +xl_mode: up diff --git a/integration-tests/test-cases/custom-namespace/test-openshift-xld-xlr-mon.yaml b/integration-tests/test-cases/custom-namespace/test-openshift-xld-xlr-mon.yaml new file mode 100644 index 00000000..d8805ad1 --- /dev/null +++ b/integration-tests/test-cases/custom-namespace/test-openshift-xld-xlr-mon.yaml @@ -0,0 +1,256 @@ +expect: + assertion: + generated_files: + - file_name: xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + has_elements: + '[3]spec.template.spec.initContainers[0].image': 'xebialabs/tiny-tools' + '[3]spec.template.spec.initContainers[1].image': 'xebialabs/tiny-tools' + '[3]spec.template.spec.containers[0].image': 'xebialabs/xl-release:{{XLR_OFFICIAL_VERSION}}' + '[0]metadata.namespace': 'customNamespace' + '[1]metadata.namespace': 'customNamespace' + '[2]metadata.namespace': 'customNamespace' + '[3]metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + has_elements: + '[1]spec.template.spec.containers[0].image': 'rabbitmq:3.8.0-management' + '[0]metadata.namespace': 'customNamespace' + '[1]metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + has_elements: + '[1]spec.template.spec.initContainers[0].image': 'xebialabs/tiny-tools' + '[1]spec.template.spec.initContainers[1].image': 'xebialabs/tiny-tools' + '[1]spec.template.spec.containers[0].image': 'postgres:10.5' + '[0]metadata.namespace': 'customNamespace' + '[1]metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + has_elements: + '[0]spec.template.spec.containers[0].image': 'gcr.io/google_containers/defaultbackend:1.4' + '[0]metadata.namespace': 'customNamespace' + '[1]metadata.namespace': 'customNamespace' + '[2]metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + has_elements: + '[6]spec.template.spec.containers[0].image': 'quay.io/jcmoraisjr/haproxy-ingress:v0.6' + '[0]metadata.namespace': 'customNamespace' + '[2]metadata.namespace': 'customNamespace' + '[4]metadata.namespace': 'customNamespace' + '[5]metadata.namespace': 'customNamespace' + '[6]metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + has_elements: + 'spec.template.spec.containers[0].image': 'quay.io/external_storage/nfs-client-provisioner:latest' + 'metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[4]spec.template.spec.initContainers[0].image': 'xebialabs/tiny-tools' + '[4]spec.template.spec.initContainers[1].image': 'xebialabs/tiny-tools' + '[4]spec.template.spec.initContainers[2].image': 'xebialabs/tiny-tools' + '[4]spec.template.spec.containers[0].image': 'xebialabs/xl-deploy:{{XLD_OFFICIAL_VERSION}}' + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + has_elements: + '[1]spec.template.spec.initContainers[0].image': 'xebialabs/tiny-tools' + '[1]spec.template.spec.initContainers[1].image': 'xebialabs/tiny-tools' + '[1]spec.template.spec.containers[0].image': 'xebialabs/xl-deploy:{{XLD_OFFICIAL_VERSION}}' + '[0]metadata.namespace': 'customNamespace' + '[1]metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + has_elements: + '[0]spec.template.spec.initContainers[0].image': 'xebialabs/tiny-tools' + '[0]spec.template.spec.containers[0].image': 'grafana/grafana:5.4.4' + '[0]metadata.namespace': 'customNamespace' + '[1]metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + has_elements: + 'spec.template.spec.initContainers[0].image': 'xebialabs/tiny-tools' + 'spec.template.spec.containers[0].image': 'xebialabs/tiny-tools' + 'metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + has_elements: + 'spec.template.spec.containers[0].image': 'quay.io/coreos/kube-state-metrics:v1.5.0' + 'spec.template.spec.containers[1].image': 'k8s.gcr.io/addon-resizer:1.8.3' + 'metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + has_elements: + 'spec.template.spec.initContainers[0].image': 'xebialabs/tiny-tools' + 'spec.template.spec.containers[0].image': 'prom/prometheus:v2.7.2' + 'metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + has_elements: + '[0]spec.template.spec.initContainers[0].image': 'xebialabs/tiny-tools' + '[0]spec.template.spec.initContainers[1].image': 'xebialabs/tiny-tools' + '[0]spec.template.spec.containers[0].image': 'docker.elastic.co/elasticsearch/elasticsearch-oss:6.5.0' + '[0]metadata.namespace': 'customNamespace' + '[1]metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + has_elements: + 'spec.jobTemplate.spec.template.spec.containers[0].image': 'xebialabs/xl-es-curator' + 'metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + has_elements: + 'spec.template.spec.containers[0].image': 'k8s.gcr.io/fluentd-elasticsearch:v2.3.2' + 'metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + has_elements: + '[0]spec.template.spec.initContainers[0].image': 'xebialabs/tiny-tools' + '[0]spec.template.spec.containers[0].image': 'docker.elastic.co/kibana/kibana-oss:6.5.0' + '[0]metadata.namespace': 'customNamespace' + '[1]metadata.namespace': 'customNamespace' + - file_name: xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + has_elements: + 'spec.template.spec.initContainers[0].image': 'xebialabs/tiny-tools' + 'spec.template.spec.initContainers[1].image': 'xebialabs/tiny-tools' + 'spec.template.spec.containers[0].image': 'xebialabs/kibana-dashboard:1.0.0' + 'metadata.namespace': 'customNamespace' + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldOfficialVersion: 9.5.1 + XlrDbName: xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + Namespace: customNamespace + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml +with_answers: + ElasticsearchDataPvcSize: 50Gi + ExternalDatabase: false + GrafanaDashboardsPvcSize: 5Gi + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringDataRetention: 7 + MonitoringInstall: true + MonitoringPrometheusDataPvcSize: 20Gi + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + PostgresqlDataPvcSize: 50Gi + UseCustomRegistry: false + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldExportPvcSize: 10Gi + XldLic: ../integration-tests/files/test-file + XldMasterCPULimit: 3 + XldMasterCPURequest: 0.7 + XldMasterCount: 2 + XldMasterRAMLimit: 6Gi + XldMasterRAMRequest: 1600Mi + XldOfficialVersion: 9.5.1 + XldWorkPvcSize: 5Gi + XldWorkerCPULimit: 3 + XldWorkerCPURequest: 0.7 + XldWorkerCount: 2 + XldWorkerRAMLimit: 6Gi + XldWorkerRAMRequest: 1600Mi + XlrAdminPass: password + XlrCPULimit: 3 + XlrCPURequest: 0.7 + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrRAMLimit: 6Gi + XlrRAMRequest: 1700Mi + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report + XlrReportsPvcSize: 5Gi + UseCustomNamespace: true + Namespace: customNamespace +xl_mode: up diff --git a/integration-tests/test-cases/custom-namespace/test-openshift-xld-xlr.yaml b/integration-tests/test-cases/custom-namespace/test-openshift-xld-xlr.yaml new file mode 100644 index 00000000..224534d2 --- /dev/null +++ b/integration-tests/test-cases/custom-namespace/test-openshift-xld-xlr.yaml @@ -0,0 +1,127 @@ +expect: + assertion: + generated_files: [] + secrets: + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 172.16.0.45 + NfsSharePath: /devops-ocp + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldOfficialVersion: 9.6 + XlrDbName: xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.6 + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + Namespace: customNamespace + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + to_not_exist: + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml +with_answers: + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 172.16.0.45 + NfsSharePath: /devops-ocp + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldOfficialVersion: 9.6 + XlrAdminPass: password + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.6 + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report + UseCustomNamespace: true + Namespace: customNamespace +xl_mode: up diff --git a/integration-tests/test-cases/custom-namespace/test-openshift-xlr-mon.yaml b/integration-tests/test-cases/custom-namespace/test-openshift-xlr-mon.yaml new file mode 100644 index 00000000..1b11e83c --- /dev/null +++ b/integration-tests/test-cases/custom-namespace/test-openshift-xlr-mon.yaml @@ -0,0 +1,124 @@ +expect: + assertion: + generated_files: [] + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + Namespace: customNamespace + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlrDbName: xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/xl-deploy.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml +with_answers: + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report + UseCustomNamespace: true + Namespace: customNamespace +xl_mode: up diff --git a/integration-tests/test-cases/custom-storage-classes/test-openshift-xld-xlr-mon.yaml b/integration-tests/test-cases/custom-storage-classes/test-openshift-xld-xlr-mon.yaml new file mode 100644 index 00000000..ca3cfe10 --- /dev/null +++ b/integration-tests/test-cases/custom-storage-classes/test-openshift-xld-xlr-mon.yaml @@ -0,0 +1,188 @@ +expect: + assertion: + generated_files: + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[3]metadata.annotations.kubernetes\.io/ingress\.class': 'haproxy' + '[3]metadata.annotations.ingress\.kubernetes\.io/rewrite-target': '/' + '[3]metadata.annotations.ingress\.kubernetes\.io/ssl-redirect': 'false' + '[3]metadata.annotations.ingress\.kubernetes\.io/affinity': 'cookie' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-name': 'SESSION_XLD' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-strategy': 'prefix' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + has_elements: + 'metadata.annotations.volume\.beta\.kubernetes\.io/storage-class': 'testSharedClass' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + has_elements: + 'metadata.annotations.volume\.beta\.kubernetes\.io/storage-class': 'testSharedClass' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + has_elements: + '[1]spec.volumeClaimTemplates[0].spec.storageClassName': 'testClass' + - file_name: xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + has_elements: + '[1]spec.volumeClaimTemplates[0].spec.storageClassName': 'testClass' + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + has_elements: + '[1]spec.volumeClaimTemplates[0].spec.storageClassName': 'testClass' + - file_name: xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + has_elements: + '[0]spec.volumeClaimTemplates[0].spec.storageClassName': 'testClass' + - file_name: xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + has_elements: + 'spec.storageClassName': 'testClass' + - file_name: xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + has_elements: + '[0]spec.volumeClaimTemplates[0].spec.storageClassName': 'testClass' + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldOfficialVersion: 9.5.1 + XlrDbName: xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + + UseExistingStorageClasses: true + StorageClassName: testClass + SharedStorageClassName: testSharedClass + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml +with_answers: + ElasticsearchDataPvcSize: 50Gi + ExternalDatabase: false + GrafanaDashboardsPvcSize: 5Gi + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringDataRetention: 7 + MonitoringInstall: true + MonitoringPrometheusDataPvcSize: 20Gi + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + PostgresqlDataPvcSize: 50Gi + UseCustomRegistry: false + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldExportPvcSize: 10Gi + XldLic: ../integration-tests/files/test-file + XldMasterCPULimit: 3 + XldMasterCPURequest: 0.7 + XldMasterCount: 2 + XldMasterRAMLimit: 6Gi + XldMasterRAMRequest: 1600Mi + XldOfficialVersion: 9.5.1 + XldWorkPvcSize: 5Gi + XldWorkerCPULimit: 3 + XldWorkerCPURequest: 0.7 + XldWorkerCount: 2 + XldWorkerRAMLimit: 6Gi + XldWorkerRAMRequest: 1600Mi + XlrAdminPass: password + XlrCPULimit: 3 + XlrCPURequest: 0.7 + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrRAMLimit: 6Gi + XlrRAMRequest: 1700Mi + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report + XlrReportsPvcSize: 5Gi + UseExistingStorageClasses: true + StorageClassName: testClass + SharedStorageClassName: testSharedClass +xl_mode: up diff --git a/integration-tests/test-cases/external-db/test-openshift-xld-custom-counts.yaml b/integration-tests/test-cases/external-db/test-openshift-xld-custom-counts.yaml new file mode 100644 index 00000000..26554038 --- /dev/null +++ b/integration-tests/test-cases/external-db/test-openshift-xld-custom-counts.yaml @@ -0,0 +1,118 @@ +expect: + assertion: + generated_files: [] + secrets: + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + values: + ExternalDatabase: true + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XldDbUrl: jdbc:postgresql://postgresql:5432/xl-deploy + XldDbUser: xl-deploy + XldMasterCPULimit: 3 + XldMasterCPURequest: 0.7 + XldMasterCount: 3 + XldMasterRAMLimit: 6Gi + XldMasterRAMRequest: 1600Mi + XldOfficialVersion: 9.5.1 + XldWorkerCPULimit: 3 + XldWorkerCPURequest: 0.7 + XldWorkerCount: 5 + XldWorkerRAMLimit: 6Gi + XldWorkerRAMRequest: 1600Mi + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + to_not_exist: + - xebialabs/xl-release.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml +with_answers: + ExternalDatabase: true + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: false + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XldDbUrl: jdbc:postgresql://postgresql:5432/xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldMasterCount: 3 + XldOfficialVersion: 9.5.1 + XldWorkerCount: 5 +xl_mode: up diff --git a/integration-tests/test-cases/external-db/test-openshift-xld-mon.yaml b/integration-tests/test-cases/external-db/test-openshift-xld-mon.yaml new file mode 100644 index 00000000..fe356284 --- /dev/null +++ b/integration-tests/test-cases/external-db/test-openshift-xld-mon.yaml @@ -0,0 +1,117 @@ +expect: + assertion: + generated_files: [] + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + values: + ExternalDatabase: true + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XldDbUrl: jdbc:postgresql://postgresql:5432/xl-deploy + XldDbUser: xl-deploy + XldMasterCPULimit: 3 + XldMasterCPURequest: 0.7 + XldMasterCount: 2 + XldMasterRAMLimit: 6Gi + XldMasterRAMRequest: 1600Mi + XldOfficialVersion: 9.5.1 + XldWorkerCPULimit: 3 + XldWorkerCPURequest: 0.7 + XldWorkerCount: 2 + XldWorkerRAMLimit: 6Gi + XldWorkerRAMRequest: 1600Mi + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + to_not_exist: + - xebialabs/xl-release.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml +with_answers: + ExternalDatabase: true + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XldDbUrl: jdbc:postgresql://postgresql:5432/xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldOfficialVersion: 9.5.1 +xl_mode: up diff --git a/integration-tests/test-cases/external-db/test-openshift-xld-xlr-mon.yaml b/integration-tests/test-cases/external-db/test-openshift-xld-xlr-mon.yaml new file mode 100644 index 00000000..d5b0bc95 --- /dev/null +++ b/integration-tests/test-cases/external-db/test-openshift-xld-xlr-mon.yaml @@ -0,0 +1,150 @@ +expect: + assertion: + generated_files: [] + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + ExternalDatabase: true + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringElasticsearchDataPvcSize: 5Gi + MonitoringGrafanaDashboardsPvcSize: 5Gi + MonitoringInstall: true + MonitoringPrometheusDataPvcSize: 5Gi + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XldDbUrl: jdbc:postgresql://postgresql:5432/xl-deploy + XldDbUser: xl-deploy + XldExportPvcSize: 5Gi + XldMasterCPULimit: 3 + XldMasterCPURequest: 0.7 + XldMasterCount: 2 + XldMasterRAMLimit: 6Gi + XldMasterRAMRequest: 1600Mi + XldOfficialVersion: 9.5.1 + XldWorkPvcSize: 5Gi + XldWorkerCPULimit: 3 + XldWorkerCPURequest: 0.7 + XldWorkerCount: 2 + XldWorkerRAMLimit: 6Gi + XldWorkerRAMRequest: 1600Mi + XlrCPULimit: 3 + XlrCPURequest: 0.7 + XlrDbUrl: jdbc:postgresql://postgresql:5432/xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrRAMLimit: 6Gi + XlrRAMRequest: 1700Mi + XlrReportDbUrl: jdbc:postgresql://postgresql:5432/xl-release-report + XlrReportDbUser: xl-release-report + XlrReportsPvcSize: 5Gi + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + to_not_exist: + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml +with_answers: + ExternalDatabase: true + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringElasticsearchDataPvcSize: 5Gi + MonitoringGrafanaDashboardsPvcSize: 5Gi + MonitoringInstall: true + MonitoringPrometheusDataPvcSize: 5Gi + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XldDbUrl: jdbc:postgresql://postgresql:5432/xl-deploy + XldDbUser: xl-deploy + XldExportPvcSize: 5Gi + XldLic: ../integration-tests/files/test-file + XldOfficialVersion: 9.5.1 + XldWorkPvcSize: 5Gi + XlrAdminPass: password + XlrDbPass: xl-release + XlrDbUrl: jdbc:postgresql://postgresql:5432/xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrReportDbPass: xl-release-report + XlrReportDbUrl: jdbc:postgresql://postgresql:5432/xl-release-report + XlrReportDbUser: xl-release-report + XlrReportsPvcSize: 5Gi +xl_mode: up diff --git a/integration-tests/test-cases/external-db/test-openshift-xld-xlr.yaml b/integration-tests/test-cases/external-db/test-openshift-xld-xlr.yaml new file mode 100644 index 00000000..191d3989 --- /dev/null +++ b/integration-tests/test-cases/external-db/test-openshift-xld-xlr.yaml @@ -0,0 +1,134 @@ +expect: + assertion: + generated_files: [] + secrets: + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + ExternalDatabase: true + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XldDbUrl: jdbc:postgresql://postgresql:5432/xl-deploy + XldDbUser: xl-deploy + XldMasterCPULimit: 3 + XldMasterCPURequest: 0.7 + XldMasterCount: 2 + XldMasterRAMLimit: 6Gi + XldMasterRAMRequest: 1600Mi + XldOfficialVersion: 9.5.1 + XldWorkerCPULimit: 3 + XldWorkerCPURequest: 0.7 + XldWorkerCount: 2 + XldWorkerRAMLimit: 6Gi + XldWorkerRAMRequest: 1600Mi + XlrCPULimit: 3 + XlrCPURequest: 0.7 + XlrDbUrl: jdbc:postgresql://postgresql:5432/xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrRAMLimit: 6Gi + XlrRAMRequest: 1700Mi + XlrReportDbUrl: jdbc:postgresql://postgresql:5432/xl-release-report + XlrReportDbUser: xl-release-report + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + to_not_exist: + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml +with_answers: + ExternalDatabase: true + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XldDbUrl: jdbc:postgresql://postgresql:5432/xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldOfficialVersion: 9.5.1 + XlrAdminPass: password + XlrDbPass: xl-release + XlrDbUrl: jdbc:postgresql://postgresql:5432/xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrReportDbPass: xl-release-report + XlrReportDbUrl: jdbc:postgresql://postgresql:5432/xl-release-report + XlrReportDbUser: xl-release-report +xl_mode: up diff --git a/integration-tests/test-cases/external-db/test-openshift-xlr-custom-resources.yaml b/integration-tests/test-cases/external-db/test-openshift-xlr-custom-resources.yaml new file mode 100644 index 00000000..cb18a535 --- /dev/null +++ b/integration-tests/test-cases/external-db/test-openshift-xlr-custom-resources.yaml @@ -0,0 +1,117 @@ +expect: + assertion: + generated_files: [] + secrets: + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + ExternalDatabase: true + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XlrCPULimit: 4 + XlrCPURequest: 0.8 + XlrDbUrl: jdbc:postgresql://postgresql:5432/xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrRAMLimit: 4Gi + XlrRAMRequest: 1740Mi + XlrReportDbUrl: jdbc:postgresql://postgresql:5432/xl-release-report + XlrReportDbUser: xl-release-report + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + to_not_exist: + - xebialabs/xl-deploy.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml +with_answers: + ExternalDatabase: true + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XlrAdminPass: password + XlrCPULimit: 4 + XlrCPURequest: 0.8 + XlrDbPass: xl-release + XlrDbUrl: jdbc:postgresql://postgresql:5432/xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrRAMLimit: 4Gi + XlrRAMRequest: 1740Mi + XlrReportDbPass: xl-release-report + XlrReportDbUrl: jdbc:postgresql://postgresql:5432/xl-release-report + XlrReportDbUser: xl-release-report +xl_mode: up diff --git a/integration-tests/test-cases/external-db/test-openshift-xlr-mon.yaml b/integration-tests/test-cases/external-db/test-openshift-xlr-mon.yaml new file mode 100644 index 00000000..a209ab2b --- /dev/null +++ b/integration-tests/test-cases/external-db/test-openshift-xlr-mon.yaml @@ -0,0 +1,117 @@ +expect: + assertion: + generated_files: [] + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + ExternalDatabase: true + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XlrCPULimit: 3 + XlrCPURequest: 0.7 + XlrDbUrl: jdbc:postgresql://postgresql:5432/xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrRAMLimit: 6Gi + XlrRAMRequest: 1700Mi + XlrReportDbUrl: jdbc:postgresql://postgresql:5432/xl-release-report + XlrReportDbUser: xl-release-report + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/xl-deploy.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml +with_answers: + ExternalDatabase: true + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbPass: xl-release + XlrDbUrl: jdbc:postgresql://postgresql:5432/xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrReportDbPass: xl-release-report + XlrReportDbUrl: jdbc:postgresql://postgresql:5432/xl-release-report + XlrReportDbUser: xl-release-report +xl_mode: up diff --git a/integration-tests/test-cases/jenkins/openshift-xld-xlr-mon-full.yaml b/integration-tests/test-cases/jenkins/openshift-xld-xlr-mon-full.yaml new file mode 100644 index 00000000..30fb9a1a --- /dev/null +++ b/integration-tests/test-cases/jenkins/openshift-xld-xlr-mon-full.yaml @@ -0,0 +1,69 @@ +K8sSetup: Openshift +UseKubeconfig: false +K8sApiServerURL: https://k8s.com:8443 + +K8sAuthentication: FilePath +K8sClientCertFile: ../xl-up/__test__/files/test-file +K8sClientKeyFile: ../xl-up/__test__/files/test-file +UseCustomNamespace: false +Namespace: xebialabs +IsHybridCluster: false +UseCustomRegistry: false +InstallXLD: true +InstallXLR: true +XldOfficialVersion: 9.5.1 +XlrOfficialVersion: 9.5.2 +ExternalDatabase: false +XldMasterCount: 2 +XldMasterRAMRequest: 1600Mi +XldMasterRAMLimit: 6Gi +XldMasterCPURequest: 0.7 +XldMasterCPULimit: 3 +XldWorkerCount: 2 +XldWorkerRAMRequest: 1600Mi +XldWorkerRAMLimit: 6Gi +XldWorkerCPURequest: 0.7 +XldWorkerCPULimit: 3 +XldWorkPvcSize: 5Gi +XldExportPvcSize: 10Gi +XldAdminPass: 3WHeb9DEIXpFDwSd +XldLic: ./deployit-license.lic +XldDbName: xl-deploy +XldDbUser: sa +XldDbPass: PxA3pBBLcGFAxlvA +NfsServerHost: 12.2.2.2 +NfsSharePath: /xebialabs +XlrRAMRequest: 1700Mi +XlrRAMLimit: 6Gi +XlrCPURequest: 0.7 +XlrCPULimit: 3 +XlrReportsPvcSize: 5Gi +XlrAdminPass: nsSuJMZpiug21GjB +XlrLic: ./xl-release.lic +XlrDbName: xl-release +XlrReportDbName: xl-release-report +XlrDbUser: xl-release +XlrDbPass: bkDvQntYVqCe0aIA +XlrReportDbUser: xl-release-report +XlrReportDbPass: uKpGeS6wXvpaukuh +XlKeyStore: ./integration-tests/files/keystore.jceks +XlKeyStorePass: test123 +MonitoringInstall: true +MonitoringGrafanaDashboardsPvcSize: 5Gi +MonitoringPrometheusDataPvcSize: 20Gi +MonitoringElasticsearchDataPvcSize: 50Gi +MonitoringDataRetention: 7 +MonitoringUser: admin +MonitoringUserPass: 6kLntTN4cCoym2qC +PostgresqlDataPvcSize: 50Gi +PostgresMaxConn: 512 +PostgresSharedBuff: 512MB +PostgresEffectCacheSize: 1GB +PostgresSyncCommit: off +PostgresMaxWallSize: 256MB +RabbitMQExternal: false +RabbitMQDriver: com.rabbitmq.jms.admin.RMQConnectionFactory +RabbitMQUsername: guest +RabbitMQPassword: hnBpgI63nuDoHrcb +UseExistingStorageClasses: false +UseExternalIngress: false \ No newline at end of file diff --git a/integration-tests/test-cases/k8s-token-auth/test-openshift-xld-mon.yaml b/integration-tests/test-cases/k8s-token-auth/test-openshift-xld-mon.yaml new file mode 100644 index 00000000..c22cc80d --- /dev/null +++ b/integration-tests/test-cases/k8s-token-auth/test-openshift-xld-mon.yaml @@ -0,0 +1,119 @@ +expect: + assertion: + generated_files: + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[3]metadata.annotations.kubernetes\.io/ingress\.class': 'haproxy' + '[3]metadata.annotations.ingress\.kubernetes\.io/rewrite-target': '/' + '[3]metadata.annotations.ingress\.kubernetes\.io/ssl-redirect': 'false' + '[3]metadata.annotations.ingress\.kubernetes\.io/affinity': 'cookie' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-name': 'SESSION_XLD' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-strategy': 'prefix' + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + values: + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: Token + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldOfficialVersion: 9.5.1 + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/xl-release.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml +with_answers: + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: Token + K8sSetup: Openshift + K8sToken: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJ4ZWJpYWxhYnMtYWRtaW4tdG9rZW4tZmpsNWgiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoieGViaWFsYWJzLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiMDMyMGViYjItYTg5OS0xMWU5LTljZTgtNDIwMTBhODQwMWQ3Iiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOnhlYmlhbGFicy1hZG1pbiJ9.AVK402uvVe-TUdSIb7f_gYtcSm7rei66Inm4TlVxMfeU6G3-gDOEtPRQ-NHUHBQyt6juHaRX2xfT7cLRoBWZl38pVnJJf3oMAJBdnkcpycjAGOaI_rU_xUs0RasPs8yUAFTD3RZ9DdnOhw4MBWWWDcMMqsEWhJPLGrpEnEu5_Mgeta-BkTqioqzJBr2LnkGpiv-ha-6hgO7L2_v8bSGrRVA_xc2SQXY4wtkjkK3a1CzQ_xxBz396OwDVpMwI5lRm4xRCkiUrk46xuxWMGM483V49Hep4yFIkShhNqaKI6L6uw4sUX9Dp7mftXRYotTbGd_hhJlmQTWjjIb_qPqt-Iw + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldOfficialVersion: 9.5.1 +xl_mode: up diff --git a/integration-tests/test-cases/k8s-token-auth/test-openshift-xld-xlr-mon.yaml b/integration-tests/test-cases/k8s-token-auth/test-openshift-xld-xlr-mon.yaml new file mode 100644 index 00000000..5af3560d --- /dev/null +++ b/integration-tests/test-cases/k8s-token-auth/test-openshift-xld-xlr-mon.yaml @@ -0,0 +1,136 @@ +expect: + assertion: + generated_files: + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[3]metadata.annotations.kubernetes\.io/ingress\.class': 'haproxy' + '[3]metadata.annotations.ingress\.kubernetes\.io/rewrite-target': '/' + '[3]metadata.annotations.ingress\.kubernetes\.io/ssl-redirect': 'false' + '[3]metadata.annotations.ingress\.kubernetes\.io/affinity': 'cookie' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-name': 'SESSION_XLD' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-strategy': 'prefix' + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: Token + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldOfficialVersion: 9.5.1 + XlrDbName: xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml +with_answers: + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: Token + K8sSetup: Openshift + K8sToken: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJ4ZWJpYWxhYnMtYWRtaW4tdG9rZW4tZmpsNWgiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoieGViaWFsYWJzLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiMDMyMGViYjItYTg5OS0xMWU5LTljZTgtNDIwMTBhODQwMWQ3Iiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOnhlYmlhbGFicy1hZG1pbiJ9.AVK402uvVe-TUdSIb7f_gYtcSm7rei66Inm4TlVxMfeU6G3-gDOEtPRQ-NHUHBQyt6juHaRX2xfT7cLRoBWZl38pVnJJf3oMAJBdnkcpycjAGOaI_rU_xUs0RasPs8yUAFTD3RZ9DdnOhw4MBWWWDcMMqsEWhJPLGrpEnEu5_Mgeta-BkTqioqzJBr2LnkGpiv-ha-6hgO7L2_v8bSGrRVA_xc2SQXY4wtkjkK3a1CzQ_xxBz396OwDVpMwI5lRm4xRCkiUrk46xuxWMGM483V49Hep4yFIkShhNqaKI6L6uw4sUX9Dp7mftXRYotTbGd_hhJlmQTWjjIb_qPqt-Iw + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldOfficialVersion: 9.5.1 + XlrAdminPass: password + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report +xl_mode: up diff --git a/integration-tests/test-cases/k8s-token-auth/test-openshift-xld-xlr.yaml b/integration-tests/test-cases/k8s-token-auth/test-openshift-xld-xlr.yaml new file mode 100644 index 00000000..fa1466c6 --- /dev/null +++ b/integration-tests/test-cases/k8s-token-auth/test-openshift-xld-xlr.yaml @@ -0,0 +1,147 @@ +expect: + assertion: + generated_files: + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[3]metadata.annotations.kubernetes\.io/ingress\.class': 'haproxy' + '[3]metadata.annotations.ingress\.kubernetes\.io/rewrite-target': '/' + '[3]metadata.annotations.ingress\.kubernetes\.io/ssl-redirect': 'false' + '[3]metadata.annotations.ingress\.kubernetes\.io/affinity': 'cookie' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-name': 'SESSION_XLD' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-strategy': 'prefix' + secrets: + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + RabbitMQPassword: rabbitmq + values: + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: Token + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + RabbitMQExternal: false + RabbitMQUsername: rabbitmq + UseExistingStorageClasses: false + UseExternalIngress: false + UseCustomRegistry: false + ExternalDatabase: false + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldOfficialVersion: 9.5.1 + XlrDbName: xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + to_not_exist: + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml +with_answers: + InstallXLD: true + RabbitMQExternal: false + RabbitMQUsername: rabbitmq + RabbitMQPassword: rabbitmq + UseExistingStorageClasses: false + UseExternalIngress: false + UseCustomRegistry: false + ExternalDatabase: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: Token + K8sSetup: Openshift + K8sToken: kb9KQIiucetmXzpqq6_-V8jbmFVyEWSQnHBAx080rzE + MonitoringInstall: false + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldOfficialVersion: 9.5.1 + XlrAdminPass: password + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report +xl_mode: up diff --git a/integration-tests/test-cases/k8s-token-auth/test-openshift-xlr-mon.yaml b/integration-tests/test-cases/k8s-token-auth/test-openshift-xlr-mon.yaml new file mode 100644 index 00000000..cb0bc889 --- /dev/null +++ b/integration-tests/test-cases/k8s-token-auth/test-openshift-xlr-mon.yaml @@ -0,0 +1,121 @@ +expect: + assertion: + generated_files: [] + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: Token + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlrDbName: xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/xl-deploy.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml +with_answers: + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: Token + K8sSetup: Openshift + K8sToken: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJ4ZWJpYWxhYnMtYWRtaW4tdG9rZW4tZmpsNWgiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoieGViaWFsYWJzLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiMDMyMGViYjItYTg5OS0xMWU5LTljZTgtNDIwMTBhODQwMWQ3Iiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOnhlYmlhbGFicy1hZG1pbiJ9.AVK402uvVe-TUdSIb7f_gYtcSm7rei66Inm4TlVxMfeU6G3-gDOEtPRQ-NHUHBQyt6juHaRX2xfT7cLRoBWZl38pVnJJf3oMAJBdnkcpycjAGOaI_rU_xUs0RasPs8yUAFTD3RZ9DdnOhw4MBWWWDcMMqsEWhJPLGrpEnEu5_Mgeta-BkTqioqzJBr2LnkGpiv-ha-6hgO7L2_v8bSGrRVA_xc2SQXY4wtkjkK3a1CzQ_xxBz396OwDVpMwI5lRm4xRCkiUrk46xuxWMGM483V49Hep4yFIkShhNqaKI6L6uw4sUX9Dp7mftXRYotTbGd_hhJlmQTWjjIb_qPqt-Iw + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report +xl_mode: up diff --git a/integration-tests/test-cases/provisioned-db/test-openshift-xld-mon.yaml b/integration-tests/test-cases/provisioned-db/test-openshift-xld-mon.yaml new file mode 100644 index 00000000..65fa6fb7 --- /dev/null +++ b/integration-tests/test-cases/provisioned-db/test-openshift-xld-mon.yaml @@ -0,0 +1,120 @@ +expect: + assertion: + generated_files: + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[3]metadata.annotations.kubernetes\.io/ingress\.class': 'haproxy' + '[3]metadata.annotations.ingress\.kubernetes\.io/rewrite-target': '/' + '[3]metadata.annotations.ingress\.kubernetes\.io/ssl-redirect': 'false' + '[3]metadata.annotations.ingress\.kubernetes\.io/affinity': 'cookie' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-name': 'SESSION_XLD' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-strategy': 'prefix' + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + values: + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldOfficialVersion: 9.5.1 + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/xl-release.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml +with_answers: + InstallXLD: true + InstallXLR: false + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldOfficialVersion: 9.5.1 +xl_mode: up diff --git a/integration-tests/test-cases/provisioned-db/test-openshift-xld-xlr.yaml b/integration-tests/test-cases/provisioned-db/test-openshift-xld-xlr.yaml new file mode 100644 index 00000000..15f40997 --- /dev/null +++ b/integration-tests/test-cases/provisioned-db/test-openshift-xld-xlr.yaml @@ -0,0 +1,148 @@ +expect: + assertion: + generated_files: + - file_name: xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + has_elements: + '[3]metadata.annotations.kubernetes\.io/ingress\.class': 'haproxy' + '[3]metadata.annotations.ingress\.kubernetes\.io/rewrite-target': '/' + '[3]metadata.annotations.ingress\.kubernetes\.io/ssl-redirect': 'false' + '[3]metadata.annotations.ingress\.kubernetes\.io/affinity': 'cookie' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-name': 'SESSION_XLD' + '[3]metadata.annotations.ingress\.kubernetes\.io/session-cookie-strategy': 'prefix' + secrets: + XlKeyStorePass: test123 + XldAdminPass: password + XldDbPass: xl-deploy + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + RabbitMQPassword: rabbitmq + values: + InstallXLD: true + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + RabbitMQExternal: false + RabbitMQUsername: rabbitmq + UseExistingStorageClasses: false + UseExternalIngress: false + UseCustomRegistry: false + ExternalDatabase: false + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XldDbName: xl-deploy + XldDbUser: xl-deploy + XldOfficialVersion: 9.5.1 + XlrDbName: xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-deploy.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + to_not_exist: + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml +with_answers: + InstallXLD: true + RabbitMQExternal: false + RabbitMQUsername: rabbitmq + RabbitMQPassword: rabbitmq + UseExistingStorageClasses: false + UseExternalIngress: false + UseCustomRegistry: false + ExternalDatabase: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: false + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XldAdminPass: password + XldDbName: xl-deploy + XldDbPass: xl-deploy + XldDbUser: xl-deploy + XldLic: ../integration-tests/files/test-file + XldOfficialVersion: 9.5.1 + XlrAdminPass: password + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report +xl_mode: up diff --git a/integration-tests/test-cases/provisioned-db/test-openshift-xlr-mon.yaml b/integration-tests/test-cases/provisioned-db/test-openshift-xlr-mon.yaml new file mode 100644 index 00000000..2efca88d --- /dev/null +++ b/integration-tests/test-cases/provisioned-db/test-openshift-xlr-mon.yaml @@ -0,0 +1,122 @@ +expect: + assertion: + generated_files: [] + secrets: + MonitoringUserPass: mon-pass + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbPass: xl-release + XlrReportDbPass: xl-release-report + values: + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlrDbName: xl-release + XlrDbUser: xl-release + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbUser: xl-release-report + to_exist: + - xebialabs/common.yaml + - xebialabs/deployments.yaml + - xebialabs/xl-release.yaml + - xebialabs/xl-k8s-foundation.yaml + - xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/default-backend.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml + - xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + - xebialabs/kubernetes/xl-release/external-db/active-active/xlr-deployment-active.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/rbac.yaml + - xebialabs/kubernetes/efk-stack/elasticsearch/deployment.yaml + - xebialabs/kubernetes/efk-stack/fluentd/configmap.yaml + - xebialabs/kubernetes/efk-stack/fluentd/daemonset.yaml + - xebialabs/kubernetes/efk-stack/fluentd/rbac.yaml + - xebialabs/kubernetes/efk-stack/kibana/deployment.yaml + - xebialabs/kubernetes/efk-stack/kibana/ingress.yaml + - xebialabs/kubernetes/efk-stack/kibana/dashboard-job.yaml + - xebialabs/kubernetes/efk-stack/es-curator/cronjob.yaml + - xebialabs/kubernetes/efk-stack/es-curator/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/rbac.yaml + - xebialabs/kubernetes/pg-stack/prometheus/configmap.yaml + - xebialabs/kubernetes/pg-stack/prometheus/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/configmap.yaml + - xebialabs/kubernetes/pg-stack/grafana/secret.yaml + - xebialabs/kubernetes/pg-stack/grafana/deployment.yaml + - xebialabs/kubernetes/pg-stack/grafana/importer-job.yaml + - xebialabs/kubernetes/pg-stack/grafana/ingress.yaml + - xebialabs/kubernetes/pg-stack/grafana/pvc.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-cluster-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-deployment.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-role-binding.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service.yaml + - xebialabs/kubernetes/pg-stack/kube-state-metrics/kube-state-metrics-service-account.yaml + to_not_exist: + - xebialabs/xl-deploy.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml + - xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml + - xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml + - xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml + - xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/service-l7.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-gp2-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-storageclass.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-deployment.yaml + - xebialabs/kubernetes/xl-k8s-foundation/aws-efs/aws-efs-conf.yaml + - xebialabs/kubernetes/xl-k8s-foundation/xl-pvc/pvc-xld-export.yaml + + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/ingress.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/rbac.yaml + - xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/configmap.yaml +with_answers: + InstallXLD: false + InstallXLR: true + K8sApiServerURL: https://k8s.com:8443 + K8sAuthentication: FilePath + K8sClientCertFile: ../integration-tests/files/test-file + K8sClientKeyFile: ../integration-tests/files/test-file + K8sSetup: Openshift + MonitoringInstall: true + MonitoringUser: mon-user + MonitoringUserPass: mon-pass + NfsServerHost: 12.2.2.2 + NfsSharePath: /xebialabs + + PostgresEffectCacheSize: 2GB + PostgresMaxConn: 400 + PostgresMaxWallSize: 512MB + PostgresSharedBuff: 612MB + PostgresSyncCommit: 'off' + UseKubeconfig: false + XlKeyStore: ../integration-tests/files/test-file + XlKeyStorePass: test123 + XlrAdminPass: password + XlrDbName: xl-release + XlrDbPass: xl-release + XlrDbUser: xl-release + XlrLic: ../integration-tests/files/test-file + XlrOfficialVersion: 9.5.2 + XlrReportDbName: xl-release-report + XlrReportDbPass: xl-release-report + XlrReportDbUser: xl-release-report +xl_mode: up diff --git a/xl-infra/blueprint.yaml b/xl-infra/blueprint.yaml index bef7c384..2a425817 100644 --- a/xl-infra/blueprint.yaml +++ b/xl-infra/blueprint.yaml @@ -24,6 +24,8 @@ spec: value: GoogleGKE - label: Plain multi-node K8s cluster value: PlainK8SCluster + - label: Plain Openshift Cluster + value: Openshift saveInXlvals: true description: "The flavour of Kubernetes to deploy or undeploy the XebiaLabs Devops Platform to. Only the listed options are supported" diff --git a/xl-up/blueprint.yaml b/xl-up/blueprint.yaml index 1bfded13..6a410ea1 100644 --- a/xl-up/blueprint.yaml +++ b/xl-up/blueprint.yaml @@ -8,6 +8,26 @@ metadata: version: 1.0 spec: parameters: + - name: UseExistingOpenshiftServiceAccount + type: Confirm + prompt: "Do you want to use an existing Service Account?" + promptIf: !expr "K8sSetup == 'Openshift'" + default: false + saveInXlvals: true + ignoreIfSkipped: true + overrideDefault: false + description: "When using existing Service Account you have to attach An Existing Security Context Constraint." + + - name: OpenshiftServiceAccount + type: Input + prompt: "Enter the name of the existing Service Account where the XebiaLabs DevOps Platform will be installed, updated or undeployed:" + promptIf: !expr "UseExistingOpenshiftServiceAccount" + default: xebialabs + saveInXlvals: true + ignoreIfSkipped: true + overrideDefault: false + description: "Enter the name of existing Service Account to be used while deploying DevOps Platform to Openshift Cluster." + - name: UseCustomRegistry type: Confirm prompt: "Do you want to use custom Docker Registry and custom images?" @@ -651,7 +671,7 @@ spec: - name: NfsServerHost type: Input prompt: "Enter your NFS server name or IP address:" - promptIf: !expr "(K8sSetup == 'PlainK8SCluster' || K8sSetup == 'GoogleGKE') && !UseExistingStorageClasses" + promptIf: !expr "(K8sSetup == 'PlainK8SCluster' || K8sSetup == 'GoogleGKE' || K8sSetup == 'Openshift') && !UseExistingStorageClasses" saveInXlvals: true ignoreIfSkipped: true description: "The IP address of the NFS server which will be used for creating Kubernetes volumes for the shared folders of XL Deploy (work and export directories) or XL Release (export folder). Make sure that the your NFS instance can be reached from nodes of your Kubernetes cluster" @@ -661,7 +681,7 @@ spec: - name: NfsSharePath type: Input prompt: "Enter your NFS share path:" - promptIf: !expr "(K8sSetup == 'PlainK8SCluster' || K8sSetup == 'GoogleGKE') && !UseExistingStorageClasses" + promptIf: !expr "(K8sSetup == 'PlainK8SCluster' || K8sSetup == 'GoogleGKE' || K8sSetup == 'Openshift') && !UseExistingStorageClasses" saveInXlvals: true ignoreIfSkipped: true validate: !expr "isValidAbsPath(NfsSharePath)" @@ -854,14 +874,16 @@ spec: writeIf: !expr "K8sSetup == 'AzureAKS' && !UseExistingStorageClasses" - path: xebialabs/kubernetes/xl-k8s-foundation/dockercred.yaml.tmpl writeIf: !expr "UseCustomRegistry" + - path: xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml.tmpl + writeIf: !expr "K8sSetup == 'Openshift'" - path: xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml.tmpl writeIf: !expr "!ExternalDatabase" - path: xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml.tmpl - writeIf: !expr "(K8sSetup == 'PlainK8SCluster' || K8sSetup == 'GoogleGKE') && !UseExistingStorageClasses" + writeIf: !expr "(K8sSetup == 'PlainK8SCluster' || K8sSetup == 'GoogleGKE' || K8sSetup == 'Openshift') && !UseExistingStorageClasses" - path: xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml.tmpl - writeIf: !expr "(K8sSetup == 'PlainK8SCluster' || K8sSetup == 'GoogleGKE') && !UseExistingStorageClasses" + writeIf: !expr "(K8sSetup == 'PlainK8SCluster' || K8sSetup == 'GoogleGKE' || K8sSetup == 'Openshift') && !UseExistingStorageClasses" - path: xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml.tmpl - writeIf: !expr "(K8sSetup == 'PlainK8SCluster' || K8sSetup == 'GoogleGKE') && !UseExistingStorageClasses" + writeIf: !expr "(K8sSetup == 'PlainK8SCluster' || K8sSetup == 'GoogleGKE' || K8sSetup == 'Openshift') && !UseExistingStorageClasses" #xl-deploy - path: xebialabs/xl-deploy.yaml.tmpl writeIf: !expr InstallXLD diff --git a/xl-up/generated_answers.yaml.tmpl b/xl-up/generated_answers.yaml.tmpl index ae74338e..be858788 100644 --- a/xl-up/generated_answers.yaml.tmpl +++ b/xl-up/generated_answers.yaml.tmpl @@ -36,6 +36,10 @@ UseInternalLoadBalancer: {{ .UseInternalLoadBalancer }} {{- end }} Namespace: {{.Namespace}} UseCustomNamespace: {{.UseCustomNamespace}} +{{- if eq .K8sSetup "Openshift" }} +OpenshiftServiceAccount: {{ .OpenshiftServiceAccount }} +UseExistingOpenshiftServiceAccount: {{ .UseExistingOpenshiftServiceAccount }} +{{- end }} UseCustomRegistry: {{.UseCustomRegistry}} InstallXLD: {{ .InstallXLD }} InstallXLR: {{ .InstallXLR }} @@ -91,7 +95,7 @@ XldDbPass: {{ .XldDbPass }} EfsId: {{ .EfsId }} EfsRegion: {{ .EfsRegion }} {{- end}} -{{- if and (or (eq .K8sSetup "GoogleGKE" ) (eq .K8sSetup "PlainK8SCluster")) (not .UseExistingStorageClasses)}} +{{- if and (or (eq .K8sSetup "GoogleGKE" ) (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")) (not .UseExistingStorageClasses)}} NfsServerHost: {{ .NfsServerHost }} NfsSharePath: {{ .NfsSharePath }} {{- end}} @@ -145,4 +149,4 @@ UseExternalIngress: {{ .UseExternalIngress }} {{if .UseExternalIngress}} GrafanaUser: {{ .GrafanaUser }} GrafanaUserPass: {{ .GrafanaUserPass }} -{{end}} \ No newline at end of file +{{end}} diff --git a/xl-up/xebialabs/answers.yaml.tmpl b/xl-up/xebialabs/answers.yaml.tmpl index 189d1a1e..4e6397e7 100644 --- a/xl-up/xebialabs/answers.yaml.tmpl +++ b/xl-up/xebialabs/answers.yaml.tmpl @@ -12,6 +12,10 @@ data: {{- end}} UseCustomRegistry: {{.UseCustomRegistry}} Namespace: {{.Namespace}} + {{- if eq .K8sSetup "Openshift" }} + UseExistingOpenshiftServiceAccount: {{ .UseExistingOpenshiftServiceAccount }} + OpenshiftServiceAccount: {{ .OpenshiftServiceAccount }} + {{- end }} InstallXLD: {{ .InstallXLD }} InstallXLR: {{ .InstallXLR }} {{- if .UseCustomRegistry }} @@ -68,7 +72,7 @@ data: EfsId: {{ .EfsId }} EfsRegion: {{ .EfsRegion }} {{- end}} - {{- if and (or (eq .K8sSetup "GoogleGKE" ) (eq .K8sSetup "PlainK8SCluster")) (not .UseExistingStorageClasses)}} + {{- if and (or (eq .K8sSetup "GoogleGKE" ) (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")) (not .UseExistingStorageClasses)}} NfsServerHost: {{ .NfsServerHost }} NfsSharePath: {{ .NfsSharePath }} {{- end}} diff --git a/xl-up/xebialabs/kubernetes/pg-stack/grafana/secret.yaml.tmpl b/xl-up/xebialabs/kubernetes/pg-stack/grafana/secret.yaml.tmpl index a0c5b8cd..25a13769 100644 --- a/xl-up/xebialabs/kubernetes/pg-stack/grafana/secret.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/pg-stack/grafana/secret.yaml.tmpl @@ -13,4 +13,4 @@ metadata: namespace: {{ .Namespace }} labels: organization: xebialabs -type: Opaque \ No newline at end of file +type: Opaque diff --git a/xl-up/xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml.tmpl index fc4def8c..c18b857a 100644 --- a/xl-up/xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-master.yaml.tmpl @@ -126,6 +126,9 @@ spec: prometheus.io/scrape: 'true' prometheus.io/port: '9100' spec: + {{- if eq .K8sSetup "Openshift" }} + serviceAccountName: {{ .OpenshiftServiceAccount }} + {{- end }} affinity: podAntiAffinity: requiredDuringSchedulingIgnoredDuringExecution: diff --git a/xl-up/xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml.tmpl index 5b122304..10d13cc8 100644 --- a/xl-up/xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-deploy/external-db/active-active/xld-deployment-worker.yaml.tmpl @@ -53,6 +53,9 @@ spec: prometheus.io/scrape: 'true' prometheus.io/port: '9100' spec: + {{- if eq .K8sSetup "Openshift" }} + serviceAccountName: {{ .OpenshiftServiceAccount }} + {{- end }} affinity: podAntiAffinity: requiredDuringSchedulingIgnoredDuringExecution: @@ -196,9 +199,9 @@ spec: storageClassName: xebialabs-standard-retain {{else if eq .K8sSetup "AzureAKS" }} storageClassName: xebialabs-default-retain - {{else if eq .K8sSetup "PlainK8SCluster" }} + {{else if or (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")}} storageClassName: xebialabs-managed-nfs-storage {{end}} resources: requests: - storage: {{ .XldWorkPvcSize }} \ No newline at end of file + storage: {{ .XldWorkPvcSize }} diff --git a/xl-up/xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml.tmpl index 5934b7f3..5edd0afc 100644 --- a/xl-up/xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-deploy/local-db/xld-deployment-single-node.yaml.tmpl @@ -230,7 +230,7 @@ spec: defaultMode: 0777 {{- end }} {{end}} - {{if (or (eq .K8sSetup "AwsEKS" ) (eq .K8sSetup "PlainK8SCluster" ))}} + {{if or (eq .K8sSetup "AwsEKS" ) (eq .K8sSetup "PlainK8SCluster" )}} volumeClaimTemplates: - metadata: name: repository diff --git a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml.tmpl index 2e585452..7b0291f2 100644 --- a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/ha-proxy-ingress-controller/ingress-controller.yaml.tmpl @@ -211,4 +211,4 @@ spec: {{- else if eq .K8sSetup "AzureAKS"}} kubernetes.io/os: linux {{- end}} - {{- end}} \ No newline at end of file + {{- end}} diff --git a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml.tmpl index 86a3c6a8..e2779141 100644 --- a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/deployment.yaml.tmpl @@ -1,4 +1,4 @@ - {{$NFS_PROVISIONER_NAME := "{{NFS_PROVISIONER_NAME}}"}} +{{$NFS_PROVISIONER_NAME := "{{NFS_PROVISIONER_NAME}}"}} {{$NFS_SERVER := "{{NFS_SERVER}}"}} {{$NFS_PATH := "{{NFS_PATH}}"}} kind: Deployment @@ -57,4 +57,4 @@ spec: - name: nfs-client-root nfs: server: {{$NFS_SERVER}} - path: {{$NFS_PATH}} \ No newline at end of file + path: {{$NFS_PATH}} diff --git a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml.tmpl index 53c85fc1..8cf167d8 100644 --- a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/rbac.yaml.tmpl @@ -73,4 +73,4 @@ subjects: roleRef: kind: Role name: xebialabs-leader-locking-nfs-client-provisioner - apiGroup: rbac.authorization.k8s.io \ No newline at end of file + apiGroup: rbac.authorization.k8s.io diff --git a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml.tmpl index 542bf5a7..0b62c5db 100644 --- a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml.tmpl @@ -11,4 +11,4 @@ allowVolumeExpansion: true # Allow volume to be expanded dynamically reclaimPolicy: Retain parameters: archiveOnDelete: "true" # When set to "false" your PVs will not be archived - # by the provisioner upon deletion of the PVC. \ No newline at end of file + # by the provisioner upon deletion of the PVC. diff --git a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml.tmpl new file mode 100644 index 00000000..52bcc567 --- /dev/null +++ b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml.tmpl @@ -0,0 +1,88 @@ +{{- if eq .K8sSetup "Openshift" }} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ .OpenshiftServiceAccount }} + namespace: {{ .Namespace }} +--- +allowPrivilegeEscalation: true +allowPrivilegedContainer: true +apiVersion: security.openshift.io/v1 +fsGroup: + type: RunAsAny +groups: [] +kind: SecurityContextConstraints +metadata: + name: xebialabs-privileged +runAsUser: + type: RunAsAny +seLinuxContext: + type: MustRunAs +supplementalGroups: + type: RunAsAny +users: +- system:serviceaccount:{{ .Namespace }}:{{ .OpenshiftServiceAccount }} +volumes: +- '*' +{{- if not .UseExternalIngress }} +--- +allowPrivilegeEscalation: true +apiVersion: security.openshift.io/v1 +fsGroup: + type: RunAsAny +groups: +- system:cluster-admins +kind: SecurityContextConstraints +metadata: + name: xebialabs-anyuid +priority: 10 +requiredDropCapabilities: +- MKNOD +runAsUser: + type: RunAsAny +seLinuxContext: + type: MustRunAs +supplementalGroups: + type: RunAsAny +users: +- system:serviceaccount:{{ .Namespace }}:haproxy-ingress-serviceaccount +volumes: +- configMap +- downwardAPI +- emptyDir +- persistentVolumeClaim +- projected +- secret +{{- end }} +{{- if and (eq .K8sSetup "Openshift") (not .UseExistingStorageClasses)}} +--- +allowHostDirVolumePlugin: true +allowPrivilegeEscalation: true +apiVersion: security.openshift.io/v1 +fsGroup: + type: RunAsAny +groups: [] +kind: SecurityContextConstraints +metadata: + name: xebialabs-hostmount-anyuid +requiredDropCapabilities: +- MKNOD +runAsUser: + type: RunAsAny +seLinuxContext: + type: MustRunAs +supplementalGroups: + type: RunAsAny +users: +- system:serviceaccount:{{ .Namespace }}:xebialabs-nfs-client-provisioner +volumes: +- configMap +- downwardAPI +- emptyDir +- hostPath +- nfs +- persistentVolumeClaim +- projected +- secret +{{- end}} +{{- end }} diff --git a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml.tmpl index 5089c215..3647a878 100644 --- a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml.tmpl @@ -39,6 +39,9 @@ spec: app: postgresql organization: xebialabs spec: + {{- if eq .K8sSetup "Openshift" }} + serviceAccount: {{ .OpenshiftServiceAccount }} + {{- end }} initContainers: - name: fix-the-volume-permission {{if .UseCustomRegistryForAllImages }} @@ -136,10 +139,10 @@ spec: storageClassName: xebialabs-standard-retain {{else if eq .K8sSetup "AzureAKS" }} storageClassName: xebialabs-default-retain - {{else if eq .K8sSetup "PlainK8SCluster" }} + {{else if or (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")}} storageClassName: xebialabs-managed-nfs-storage {{end}} resources: requests: storage: {{ .PostgresqlDataPvcSize }} - {{end}} \ No newline at end of file + {{end}} diff --git a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml.tmpl index 8704aef5..e8b0c36d 100644 --- a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/rabbitmq/xl-rabbitmq.yaml.tmpl @@ -122,7 +122,7 @@ spec: storageClassName: xebialabs-gp2-retain {{else if eq .K8sSetup "GoogleGKE" }} storageClassName: xebialabs-standard-retain - {{else if eq .K8sSetup "PlainK8SCluster" }} + {{else if or (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")}} storageClassName: xebialabs-managed-nfs-storage {{else if eq .K8sSetup "AzureAKS" }} storageClassName: xebialabs-default-retain diff --git a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml.tmpl index 0287befc..1be5e5b4 100644 --- a/xl-up/xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml.tmpl @@ -32,4 +32,4 @@ spec: port: 1936 protocol: TCP targetPort: 1936 - nodePort: 31936 \ No newline at end of file + nodePort: 31936 diff --git a/xl-up/xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml.tmpl b/xl-up/xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml.tmpl index 74db0315..8c757c24 100644 --- a/xl-up/xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml.tmpl +++ b/xl-up/xebialabs/kubernetes/xl-release/local-db/xlr-deployment-single-node.yaml.tmpl @@ -233,7 +233,7 @@ spec: name: postgresql-init-sql-xlr defaultMode: 0777 {{- end }} - {{if (or (eq .K8sSetup "AwsEKS" ) (eq .K8sSetup "PlainK8SCluster"))}} + {{if or (eq .K8sSetup "AwsEKS" ) (eq .K8sSetup "PlainK8SCluster")}} volumeClaimTemplates: - metadata: name: repository @@ -244,7 +244,7 @@ spec: storageClassName: {{.StorageClassName}} {{ else if eq .K8sSetup "AwsEKS" }} storageClassName: xebialabs-gp2-retain - {{else if eq .K8sSetup "PlainK8SCluster"}} + {{else if (eq .K8sSetup "PlainK8SCluster")}} storageClassName: xebialabs-managed-nfs-storage {{end}} resources: diff --git a/xl-up/xebialabs/xl-k8s-foundation.yaml.tmpl b/xl-up/xebialabs/xl-k8s-foundation.yaml.tmpl index fe073e19..1f794b67 100644 --- a/xl-up/xebialabs/xl-k8s-foundation.yaml.tmpl +++ b/xl-up/xebialabs/xl-k8s-foundation.yaml.tmpl @@ -113,7 +113,7 @@ spec: {{- if and (eq .K8sSetup "AwsEKS") (not .UseExistingStorageClasses)}} EFS_ID: !value EfsId EFS_REGION: !value EfsRegion - {{- else if and (or (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "GoogleGKE") ) (not .UseExistingStorageClasses)}} + {{- else if and (or (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "Openshift")) (not .UseExistingStorageClasses)}} NFS_PROVISIONER_NAME: "xebialabs-nfs-storage-provisioner" NFS_SERVER: !value NfsServerHost NFS_PATH: !value NfsSharePath @@ -143,7 +143,7 @@ spec: {{- if .UseCustomNamespace }} - Infrastructure/XEBIALABS/K8s-MASTER/{{.Namespace}} {{- end }} - {{- end }} + {{- end }} dictionaries: - Environments/XEBIALABS/DICTIONARY --- @@ -187,10 +187,10 @@ spec: PostgreSQL: "10.5" {{ end }} {{- if and (ne .K8sSetup "DockerDesktopK8s") (ne .K8sSetup "MinikubeK8s")}} - {{- if and (ne .K8sSetup "PlainK8SCluster") (not .UseExistingStorageClasses)}} + {{- if and (ne .K8sSetup "PlainK8SCluster") (ne .K8sSetup "Openshift") (not .UseExistingStorageClasses)}} K8s-StorageClass: "1.0" {{- end }} - {{- if or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster")}} + {{- if or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")}} K8s-NFS-Client-Provisioner: "v3.1.0-k8s1.11" {{- else if eq .K8sSetup "AwsEKS" }} K8S-EFS-Provisioner: "v1.0.0-k8s1.10" @@ -229,10 +229,10 @@ spec: {{- end }} {{- if and (ne .K8sSetup "DockerDesktopK8s") (ne .K8sSetup "MinikubeK8s")}} {{- if and (ne .K8sSetup "DockerDesktopK8s") (ne .K8sSetup "MinikubeK8s")}} - {{- if and (ne .K8sSetup "PlainK8SCluster") (not .UseExistingStorageClasses)}} + {{- if and (ne .K8sSetup "PlainK8SCluster") (ne .K8sSetup "Openshift") (not .UseExistingStorageClasses)}} K8s-StorageClass: "1.0" {{- end }} - {{- if or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster")}} + {{- if or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")}} K8s-NFS-Client-Provisioner: "v3.1.0-k8s1.11" {{- else if eq .K8sSetup "AwsEKS" }} K8S-EFS-Provisioner: "v1.0.0-k8s1.10" @@ -269,6 +269,9 @@ spec: readinessProbeRetry: 120 file: !file kubernetes/xl-k8s-foundation/xebialabs-service-internal.yaml applicationDependencies: + {{- if eq .K8sSetup "Openshift"}} + Openshift-SCC: "1.0" + {{- end}} undeployDependencies: "true" {{ end }} {{- if and (or (eq .K8sSetup "AwsEKS") (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "AzureAKS")) (not .UseExistingStorageClasses)}} @@ -349,7 +352,10 @@ spec: file: !file "kubernetes/xl-k8s-foundation/xl-pvc/pvc-xlr-reports.yaml" {{- end }} applicationDependencies: - {{- if or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster")}} + {{- if eq .K8sSetup "Openshift"}} + Openshift-SCC: "1.0" + {{- end}} + {{- if or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")}} K8s-NFS-Client-Provisioner: "v3.1.0-k8s1.11" {{- else if eq .K8sSetup "AwsEKS" }} K8S-EFS-Provisioner: "v1.0.0-k8s1.10" @@ -370,11 +376,14 @@ spec: readinessProbeRetry: 120 file: !file kubernetes/xl-k8s-foundation/postgresql/xl-postgresql.yaml applicationDependencies: - {{- if and (ne .K8sSetup "DockerDesktopK8s") (ne .K8sSetup "MinikubeK8s") }} - {{- if and (ne .K8sSetup "PlainK8SCluster") (not .UseExistingStorageClasses)}} + {{- if eq .K8sSetup "Openshift"}} + Openshift-SCC: "1.0" + {{- end}} + {{- if and (ne .K8sSetup "DockerDesktopK8s") (ne .K8sSetup "MinikubeK8s")}} + {{- if and (ne .K8sSetup "PlainK8SCluster") (ne .K8sSetup "Openshift") (not .UseExistingStorageClasses)}} K8s-StorageClass: "1.0" {{- end }} - {{- if and (or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster")) (not .UseExistingStorageClasses)}} + {{- if and (or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")) (not .UseExistingStorageClasses)}} K8s-NFS-Client-Provisioner: "v3.1.0-k8s1.11" {{- else if and (eq .K8sSetup "AwsEKS") (not .UseExistingStorageClasses) }} K8S-EFS-Provisioner: "v1.0.0-k8s1.10" @@ -383,7 +392,20 @@ spec: {{- end }} undeployDependencies: "true" {{- end }} - {{- if and (or (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "GoogleGKE")) (not .UseExistingStorageClasses)}} + {{- if eq .K8sSetup "Openshift" }} + - name: Openshift-SCC + type: udm.Application + children: + - name: "1.0" + type: udm.DeploymentPackage + orchestrator: + - sequential-by-dependency + deployables: + - name: ServiceAccount-SCC + type: k8s.ResourcesFile + file: !file kubernetes/xl-k8s-foundation/openshift-scc/sa-scc.yaml + {{- end}} + {{- if and (or (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "Openshift")) (not .UseExistingStorageClasses)}} - name: K8s-NFS-Client-Provisioner type: udm.Application children: @@ -404,6 +426,10 @@ spec: type: k8s.ResourcesFile readinessProbeRetry: 120 file: !file kubernetes/xl-k8s-foundation/nfs-client-provisioner/storageclass.yaml + applicationDependencies: + {{- if eq .K8sSetup "Openshift"}} + Openshift-SCC: "1.0" + {{- end}} {{- end }} {{- if and (not .RabbitMQExternal) (ne .K8sSetup "DockerDesktopK8s") (ne .K8sSetup "MinikubeK8s") ( .InstallXLD)}} - name: RabbitMQ @@ -431,11 +457,11 @@ spec: {{end}} applicationDependencies: {{- if and (ne .K8sSetup "DockerDesktopK8s") (ne .K8sSetup "MinikubeK8s") }} - {{- if and (ne .K8sSetup "PlainK8SCluster") (not .UseExistingStorageClasses)}} + {{- if and (ne .K8sSetup "PlainK8SCluster") (ne .K8sSetup "Openshift") (not .UseExistingStorageClasses)}} K8s-StorageClass: "1.0" {{- end }} XL-PVC-Claims: "1.0.0" - {{- if or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster")}} + {{- if or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")}} K8s-NFS-Client-Provisioner: "v3.1.0-k8s1.11" {{- else if eq .K8sSetup "AwsEKS" }} K8S-EFS-Provisioner: "v1.0.0-k8s1.10" @@ -471,10 +497,10 @@ spec: readinessProbeRetry: 120 file: !file "kubernetes/efk-stack/es-curator/configmap.yaml" applicationDependencies: - {{- if and (ne .K8sSetup "PlainK8SCluster") (not .UseExistingStorageClasses)}} + {{- if and (ne .K8sSetup "PlainK8SCluster") (ne .K8sSetup "Openshift") (not .UseExistingStorageClasses)}} K8s-StorageClass: "1.0" {{- end }} - {{- if or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster")}} + {{- if or (eq .K8sSetup "GoogleGKE") (eq .K8sSetup "PlainK8SCluster") (eq .K8sSetup "Openshift")}} K8s-NFS-Client-Provisioner: "v3.1.0-k8s1.11" {{- else if eq .K8sSetup "AwsEKS" }} K8S-EFS-Provisioner: "v1.0.0-k8s1.10"