From 601abc924a1c680855abde3bbc03f2bb2f3f281b Mon Sep 17 00:00:00 2001 From: Mark Lee Date: Tue, 19 Jan 2021 07:06:34 -0500 Subject: [PATCH] Add SXC Sitecore Commerce Container SDK 10.0.0.60239.10228 --- sxc/10.0/k8s-commerce-xc1/bizfx.yaml | 78 ++ sxc/10.0/k8s-commerce-xc1/cd.yaml | 201 +++++ sxc/10.0/k8s-commerce-xc1/cm.yaml | 281 +++++++ .../k8s-commerce-xc1/cortexprocessing.yaml | 79 ++ .../cortexprocessingworker.yaml | 126 +++ .../k8s-commerce-xc1/cortexreporting.yaml | 79 ++ .../k8s-commerce-xc1/engine-authoring.yaml | 200 +++++ sxc/10.0/k8s-commerce-xc1/engine-minions.yaml | 200 +++++ sxc/10.0/k8s-commerce-xc1/engine-ops.yaml | 200 +++++ sxc/10.0/k8s-commerce-xc1/engine-shops.yaml | 200 +++++ sxc/10.0/k8s-commerce-xc1/external/mssql.yaml | 44 + sxc/10.0/k8s-commerce-xc1/external/redis.yaml | 36 + sxc/10.0/k8s-commerce-xc1/external/solr.yaml | 39 + sxc/10.0/k8s-commerce-xc1/id.yaml | 114 +++ .../ingress-nginx/configuration.yaml | 7 + .../ingress-nginx/ingress.yaml | 93 +++ .../k8s-commerce-xc1/init/mssql-init.yaml | 182 +++++ sxc/10.0/k8s-commerce-xc1/init/solr-init.yaml | 25 + sxc/10.0/k8s-commerce-xc1/prc.yaml | 156 ++++ sxc/10.0/k8s-commerce-xc1/rep.yaml | 114 +++ .../secrets/kustomization.yaml | 127 +++ .../secrets/tls/global-authoring/tls.crt | 19 + .../secrets/tls/global-authoring/tls.key | 27 + .../secrets/tls/global-authority/root.crt | 19 + .../secrets/tls/global-authority/root.key | 27 + .../secrets/tls/global-bizfx/tls.crt | 19 + .../secrets/tls/global-bizfx/tls.key | 27 + .../secrets/tls/global-cd/tls.crt | 19 + .../secrets/tls/global-cd/tls.key | 27 + .../secrets/tls/global-cm/tls.crt | 19 + .../secrets/tls/global-cm/tls.key | 27 + .../secrets/tls/global-id/tls.crt | 19 + .../secrets/tls/global-id/tls.key | 27 + .../secrets/tls/global-minions/tls.crt | 19 + .../secrets/tls/global-minions/tls.key | 27 + .../secrets/tls/global-ops/tls.crt | 19 + .../secrets/tls/global-ops/tls.key | 27 + .../secrets/tls/global-shops/tls.crt | 19 + .../secrets/tls/global-shops/tls.key | 27 + .../secrets/xc/commerce-bizfx-currency.txt | 1 + .../secrets/xc/commerce-bizfx-language.txt | 1 + .../secrets/xc/commerce-bizfx-shopname.txt | 1 + .../secrets/xc/commerce-connect-clientid.txt | 1 + .../xc/commerce-connect-clientsecret.txt | 0 ...mmerce-connect-redis-connection-string.txt | 1 + .../commerce-engine-braintreeenvironment.txt | 0 .../commerce-engine-braintreemerchantid.txt | 0 .../commerce-engine-braintreeprivatekey.txt | 0 .../xc/commerce-engine-braintreepublickey.txt | 0 .../xc/commerce-redis-connection-string.txt | 1 + .../xc/commerce-solr-connection-string.txt | 1 + .../secrets/xp/sitecore-adminpassword.txt | 1 + ...tion-shardmapmanager-database-password.txt | 1 + ...tion-shardmapmanager-database-username.txt | 1 + .../xp/sitecore-core-database-password.txt | 1 + .../xp/sitecore-core-database-username.txt | 1 + .../sitecore-database-elastic-pool-name.txt | 0 .../secrets/xp/sitecore-databasepassword.txt | 1 + .../xp/sitecore-databaseservername.txt | 1 + .../secrets/xp/sitecore-databaseusername.txt | 1 + .../sitecore-exm-master-database-password.txt | 1 + .../sitecore-exm-master-database-username.txt | 1 + .../xp/sitecore-forms-database-password.txt | 1 + .../xp/sitecore-forms-database-username.txt | 1 + .../xp/sitecore-identitycertificate.txt | 0 .../sitecore-identitycertificatepassword.txt | 0 .../secrets/xp/sitecore-identitysecret.txt | 0 .../secrets/xp/sitecore-license.txt | 0 ...marketing-automation-database-password.txt | 1 + ...marketing-automation-database-username.txt | 1 + .../xp/sitecore-master-database-password.txt | 1 + .../xp/sitecore-master-database-username.txt | 1 + .../sitecore-messaging-database-password.txt | 1 + .../sitecore-messaging-database-username.txt | 1 + ...ssing-engine-storage-database-password.txt | 1 + ...ssing-engine-storage-database-username.txt | 1 + ...cessing-engine-tasks-database-password.txt | 1 + ...cessing-engine-tasks-database-username.txt | 1 + ...ore-processing-pools-database-password.txt | 1 + ...ore-processing-pools-database-username.txt | 1 + ...ore-processing-tasks-database-password.txt | 1 + ...ore-processing-tasks-database-username.txt | 1 + .../xp/sitecore-redis-connection-string.txt | 1 + ...ecore-reference-data-database-password.txt | 1 + ...ecore-reference-data-database-username.txt | 1 + .../sitecore-reporting-database-password.txt | 1 + .../sitecore-reporting-database-username.txt | 1 + .../secrets/xp/sitecore-reportingapikey.txt | 1 + .../sitecore-solr-connection-string-xdb.txt | 1 + .../xp/sitecore-solr-connection-string.txt | 1 + .../xp/sitecore-telerikencryptionkey.txt | 0 .../xp/sitecore-web-database-password.txt | 1 + .../xp/sitecore-web-database-username.txt | 1 + .../storage/platform-config-storage.yaml | 14 + sxc/10.0/k8s-commerce-xc1/xdbautomation.yaml | 114 +++ .../k8s-commerce-xc1/xdbautomationrpt.yaml | 91 +++ .../k8s-commerce-xc1/xdbautomationworker.yaml | 108 +++ sxc/10.0/k8s-commerce-xc1/xdbcollection.yaml | 115 +++ sxc/10.0/k8s-commerce-xc1/xdbrefdata.yaml | 79 ++ sxc/10.0/k8s-commerce-xc1/xdbsearch.yaml | 124 +++ .../k8s-commerce-xc1/xdbsearchworker.yaml | 84 ++ sxc/10.0/scripts/CleanContainerCache.ps1 | 65 ++ sxc/10.0/scripts/ContainerBuild.ps1 | 50 ++ sxc/10.0/scripts/ContainerTag.ps1 | 74 ++ sxc/10.0/scripts/FakeLicenseFile.txt | 1 + sxc/10.0/scripts/PrepContainerBuild.ps1 | 134 +++ sxc/10.0/scripts/ScriptSupport.psm1 | 68 ++ sxc/10.0/scripts/UpdateEnvCompose.ps1 | 133 +++ sxc/10.0/scripts/UpdateEnvTag.ps1 | 96 +++ sxc/10.0/scripts/UpdateK8SYaml.ps1 | 177 ++++ sxc/10.0/scripts/WDPMapping.json | 174 ++++ sxc/10.0/scripts/config2004.json | 15 + sxc/10.0/scripts/config2009.json | 15 + sxc/10.0/scripts/configltsc2019.json | 15 + sxc/10.0/scripts/readme.md | 59 ++ sxc/10.0/xc-common/.env | 5 + sxc/10.0/xc-common/bizfx/Dockerfile | 34 + sxc/10.0/xc-common/bizfx/Init.ps1 | 21 + .../xc-common/bizfx/InstallPrerequisites.ps1 | 33 + .../xc-common/bizfx/LogMonitorConfig.json | 23 + sxc/10.0/xc-common/cd-cm/Dockerfile | 38 + sxc/10.0/xc-common/docker-compose.build.yml | 20 + sxc/10.0/xc-common/engine/Dockerfile | 31 + .../engine/Healthchecks/Healthcheck.ps1 | 42 + .../engine/LogMonitor/LogMonitorConfig.json | 12 + sxc/10.0/xc-common/id/Dockerfile | 9 + .../mssql/common/tools/DeployRoles.ps1 | 126 +++ .../mssql/common/tools/StartCommerceInit.ps1 | 29 + sxc/10.0/xc-common/mssql/init/Dockerfile | 35 + .../xc-common/mssql/standalone/Dockerfile | 19 + .../xc-common/prc-rep-xdba-xdbc/Dockerfile | 10 + sxc/10.0/xc-common/solr-init/Dockerfile | 36 + .../tools/scripts/New-SolrCore-Commerce.ps1 | 48 ++ .../tools/scripts/Start-Commerce.ps1 | 92 +++ .../solr-init/xc1/cores-commerce.json | 9 + sxc/10.0/xc-common/solr/Dockerfile | 19 + .../tools/scripts/Add-Commerce-SolrCores.ps1 | 44 + .../solr/tools/scripts/Start-Commerce.ps1 | 26 + sxc/10.0/xc-common/xdbworkers/Dockerfile | 11 + sxc/10.0/xc0/.env | 50 ++ .../App_Config/Include/Domains.Shared.config | 6 + .../Y.Sitecore.Commerce.config | 30 + .../AdditionalWriteAllowedFolders.txt | 0 .../xc0/cm/tools/GrantWritePermission.ps1 | 24 + .../cm/tools/Invoke-XdtTransformations.ps1 | 43 + sxc/10.0/xc0/cm/xdts/Web.config.xdt | 11 + sxc/10.0/xc0/docker-compose.build.yml | 45 ++ sxc/10.0/xc0/docker-compose.yml | 561 +++++++++++++ .../xc0/traefik/certs/authoring.localhost.crt | 19 + .../xc0/traefik/certs/authoring.localhost.key | 27 + .../xc0/traefik/certs/bizfx.localhost.crt | 19 + .../xc0/traefik/certs/bizfx.localhost.key | 27 + .../xc0/traefik/certs/minions.localhost.crt | 19 + .../xc0/traefik/certs/minions.localhost.key | 27 + sxc/10.0/xc0/traefik/certs/ops.localhost.crt | 19 + sxc/10.0/xc0/traefik/certs/ops.localhost.key | 27 + sxc/10.0/xc0/traefik/certs/root-ca.crt | 19 + sxc/10.0/xc0/traefik/certs/root-ca.key | 27 + .../xc0/traefik/certs/shops.localhost.crt | 19 + .../xc0/traefik/certs/shops.localhost.key | 27 + .../xc0/traefik/certs/xc0cm.localhost.crt | 19 + .../xc0/traefik/certs/xc0cm.localhost.key | 27 + .../xc0/traefik/certs/xc0id.localhost.crt | 19 + .../xc0/traefik/certs/xc0id.localhost.key | 27 + .../traefik/config/dynamic/certs_config.yaml | 16 + sxc/10.0/xc0/xconnect/keep.txt | 0 sxc/10.0/xc1-cxa/.env | 55 ++ sxc/10.0/xc1-cxa/cd/Dockerfile | 20 + sxc/10.0/xc1-cxa/cd/xdts/Web.config.xdt | 44 + sxc/10.0/xc1-cxa/cm/Dockerfile | 26 + sxc/10.0/xc1-cxa/cm/xdts/Web.config.xdt | 44 + sxc/10.0/xc1-cxa/commerce.build.yml | 51 ++ sxc/10.0/xc1-cxa/docker-compose.build.yml | 51 ++ sxc/10.0/xc1-cxa/docker-compose.yml | 762 ++++++++++++++++++ sxc/10.0/xc1-cxa/mssql/init/Dockerfile | 23 + sxc/10.0/xc1-cxa/mssql/standalone/Dockerfile | 30 + sxc/10.0/xc1-cxa/solr/init/Dockerfile | 12 + sxc/10.0/xc1-cxa/solr/standalone/Dockerfile | 15 + .../traefik/certs/authoring.localhost.crt | 19 + .../traefik/certs/authoring.localhost.key | 27 + .../xc1-cxa/traefik/certs/bizfx.localhost.crt | 18 + .../xc1-cxa/traefik/certs/bizfx.localhost.key | 27 + .../traefik/certs/minions.localhost.crt | 18 + .../traefik/certs/minions.localhost.key | 27 + .../xc1-cxa/traefik/certs/ops.localhost.crt | 18 + .../xc1-cxa/traefik/certs/ops.localhost.key | 27 + sxc/10.0/xc1-cxa/traefik/certs/root-ca.crt | 19 + sxc/10.0/xc1-cxa/traefik/certs/root-ca.key | 27 + sxc/10.0/xc1-cxa/traefik/certs/root.crt | 19 + sxc/10.0/xc1-cxa/traefik/certs/root.key | 27 + .../xc1-cxa/traefik/certs/shops.localhost.crt | 18 + .../xc1-cxa/traefik/certs/shops.localhost.key | 27 + .../xc1-cxa/traefik/certs/xc1cd.localhost.crt | 18 + .../xc1-cxa/traefik/certs/xc1cd.localhost.key | 27 + .../xc1-cxa/traefik/certs/xc1cm.localhost.crt | 18 + .../xc1-cxa/traefik/certs/xc1cm.localhost.key | 27 + .../xc1-cxa/traefik/certs/xc1id.localhost.crt | 18 + .../xc1-cxa/traefik/certs/xc1id.localhost.key | 27 + .../traefik/certs/xc1sxacd.localhost.crt | 19 + .../traefik/certs/xc1sxacd.localhost.key | 27 + .../traefik/certs/xc1sxacm.localhost.crt | 19 + .../traefik/certs/xc1sxacm.localhost.key | 27 + .../traefik/config/dynamic/certs_config.yaml | 18 + sxc/10.0/xc1/.env | 15 + .../App_Config/Include/Domains.Shared.config | 6 + .../Y.Sitecore.Commerce.config | 24 + .../AdditionalWriteAllowedFolders.txt | 1 + .../xc1/cd/tools/GrantWritePermission.ps1 | 24 + .../cd/tools/Invoke-XdtTransformations.ps1 | 43 + sxc/10.0/xc1/cd/xdts/Web.config.xdt | 11 + .../App_Config/Include/Domains.Shared.config | 6 + .../Y.Sitecore.Commerce.config | 30 + .../AdditionalWriteAllowedFolders.txt | 1 + .../xc1/cm/tools/GrantWritePermission.ps1 | 24 + .../cm/tools/Invoke-XdtTransformations.ps1 | 43 + sxc/10.0/xc1/cm/xdts/Web.config.xdt | 11 + sxc/10.0/xc1/docker-compose.build.yml | 96 +++ sxc/10.0/xc1/prcrep/keep.txt | 0 sxc/10.0/xc1/xdbautomation/keep.txt | 0 sxc/10.0/xc1/xdbcollection/keep.txt | 0 sxc/10.0/xc1/xdbsearch/keep.txt | 0 221 files changed, 8800 insertions(+) create mode 100644 sxc/10.0/k8s-commerce-xc1/bizfx.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/cd.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/cm.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/cortexprocessing.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/cortexprocessingworker.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/cortexreporting.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/engine-authoring.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/engine-minions.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/engine-ops.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/engine-shops.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/external/mssql.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/external/redis.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/external/solr.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/id.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/ingress-nginx/configuration.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/ingress-nginx/ingress.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/init/mssql-init.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/init/solr-init.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/prc.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/rep.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/kustomization.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authoring/tls.crt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authoring/tls.key create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authority/root.crt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authority/root.key create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-bizfx/tls.crt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-bizfx/tls.key create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cd/tls.crt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cd/tls.key create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cm/tls.crt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cm/tls.key create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-id/tls.crt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-id/tls.key create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-minions/tls.crt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-minions/tls.key create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-ops/tls.crt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-ops/tls.key create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-shops/tls.crt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/tls/global-shops/tls.key create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-currency.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-language.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-shopname.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-clientid.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-clientsecret.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-redis-connection-string.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreeenvironment.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreemerchantid.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreeprivatekey.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreepublickey.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-redis-connection-string.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-solr-connection-string.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-adminpassword.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-collection-shardmapmanager-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-collection-shardmapmanager-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-core-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-core-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-database-elastic-pool-name.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databasepassword.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databaseservername.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databaseusername.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-exm-master-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-exm-master-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-forms-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-forms-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-identitycertificate.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-identitycertificatepassword.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-identitysecret.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-license.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-marketing-automation-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-marketing-automation-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-master-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-master-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-messaging-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-messaging-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-storage-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-storage-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-tasks-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-tasks-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-pools-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-pools-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-tasks-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-tasks-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-redis-connection-string.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reference-data-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reference-data-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reporting-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reporting-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reportingapikey.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-solr-connection-string-xdb.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-solr-connection-string.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-telerikencryptionkey.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-web-database-password.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-web-database-username.txt create mode 100644 sxc/10.0/k8s-commerce-xc1/storage/platform-config-storage.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/xdbautomation.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/xdbautomationrpt.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/xdbautomationworker.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/xdbcollection.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/xdbrefdata.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/xdbsearch.yaml create mode 100644 sxc/10.0/k8s-commerce-xc1/xdbsearchworker.yaml create mode 100644 sxc/10.0/scripts/CleanContainerCache.ps1 create mode 100644 sxc/10.0/scripts/ContainerBuild.ps1 create mode 100644 sxc/10.0/scripts/ContainerTag.ps1 create mode 100644 sxc/10.0/scripts/FakeLicenseFile.txt create mode 100644 sxc/10.0/scripts/PrepContainerBuild.ps1 create mode 100644 sxc/10.0/scripts/ScriptSupport.psm1 create mode 100644 sxc/10.0/scripts/UpdateEnvCompose.ps1 create mode 100644 sxc/10.0/scripts/UpdateEnvTag.ps1 create mode 100644 sxc/10.0/scripts/UpdateK8SYaml.ps1 create mode 100644 sxc/10.0/scripts/WDPMapping.json create mode 100644 sxc/10.0/scripts/config2004.json create mode 100644 sxc/10.0/scripts/config2009.json create mode 100644 sxc/10.0/scripts/configltsc2019.json create mode 100644 sxc/10.0/scripts/readme.md create mode 100644 sxc/10.0/xc-common/.env create mode 100644 sxc/10.0/xc-common/bizfx/Dockerfile create mode 100644 sxc/10.0/xc-common/bizfx/Init.ps1 create mode 100644 sxc/10.0/xc-common/bizfx/InstallPrerequisites.ps1 create mode 100644 sxc/10.0/xc-common/bizfx/LogMonitorConfig.json create mode 100644 sxc/10.0/xc-common/cd-cm/Dockerfile create mode 100644 sxc/10.0/xc-common/docker-compose.build.yml create mode 100644 sxc/10.0/xc-common/engine/Dockerfile create mode 100644 sxc/10.0/xc-common/engine/Healthchecks/Healthcheck.ps1 create mode 100644 sxc/10.0/xc-common/engine/LogMonitor/LogMonitorConfig.json create mode 100644 sxc/10.0/xc-common/id/Dockerfile create mode 100644 sxc/10.0/xc-common/mssql/common/tools/DeployRoles.ps1 create mode 100644 sxc/10.0/xc-common/mssql/common/tools/StartCommerceInit.ps1 create mode 100644 sxc/10.0/xc-common/mssql/init/Dockerfile create mode 100644 sxc/10.0/xc-common/mssql/standalone/Dockerfile create mode 100644 sxc/10.0/xc-common/prc-rep-xdba-xdbc/Dockerfile create mode 100644 sxc/10.0/xc-common/solr-init/Dockerfile create mode 100644 sxc/10.0/xc-common/solr-init/tools/scripts/New-SolrCore-Commerce.ps1 create mode 100644 sxc/10.0/xc-common/solr-init/tools/scripts/Start-Commerce.ps1 create mode 100644 sxc/10.0/xc-common/solr-init/xc1/cores-commerce.json create mode 100644 sxc/10.0/xc-common/solr/Dockerfile create mode 100644 sxc/10.0/xc-common/solr/tools/scripts/Add-Commerce-SolrCores.ps1 create mode 100644 sxc/10.0/xc-common/solr/tools/scripts/Start-Commerce.ps1 create mode 100644 sxc/10.0/xc-common/xdbworkers/Dockerfile create mode 100644 sxc/10.0/xc0/.env create mode 100644 sxc/10.0/xc0/cm/Content/Website/App_Config/Include/Domains.Shared.config create mode 100644 sxc/10.0/xc0/cm/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config create mode 100644 sxc/10.0/xc0/cm/Permissions/AdditionalWriteAllowedFolders.txt create mode 100644 sxc/10.0/xc0/cm/tools/GrantWritePermission.ps1 create mode 100644 sxc/10.0/xc0/cm/tools/Invoke-XdtTransformations.ps1 create mode 100644 sxc/10.0/xc0/cm/xdts/Web.config.xdt create mode 100644 sxc/10.0/xc0/docker-compose.build.yml create mode 100644 sxc/10.0/xc0/docker-compose.yml create mode 100644 sxc/10.0/xc0/traefik/certs/authoring.localhost.crt create mode 100644 sxc/10.0/xc0/traefik/certs/authoring.localhost.key create mode 100644 sxc/10.0/xc0/traefik/certs/bizfx.localhost.crt create mode 100644 sxc/10.0/xc0/traefik/certs/bizfx.localhost.key create mode 100644 sxc/10.0/xc0/traefik/certs/minions.localhost.crt create mode 100644 sxc/10.0/xc0/traefik/certs/minions.localhost.key create mode 100644 sxc/10.0/xc0/traefik/certs/ops.localhost.crt create mode 100644 sxc/10.0/xc0/traefik/certs/ops.localhost.key create mode 100644 sxc/10.0/xc0/traefik/certs/root-ca.crt create mode 100644 sxc/10.0/xc0/traefik/certs/root-ca.key create mode 100644 sxc/10.0/xc0/traefik/certs/shops.localhost.crt create mode 100644 sxc/10.0/xc0/traefik/certs/shops.localhost.key create mode 100644 sxc/10.0/xc0/traefik/certs/xc0cm.localhost.crt create mode 100644 sxc/10.0/xc0/traefik/certs/xc0cm.localhost.key create mode 100644 sxc/10.0/xc0/traefik/certs/xc0id.localhost.crt create mode 100644 sxc/10.0/xc0/traefik/certs/xc0id.localhost.key create mode 100644 sxc/10.0/xc0/traefik/config/dynamic/certs_config.yaml create mode 100644 sxc/10.0/xc0/xconnect/keep.txt create mode 100644 sxc/10.0/xc1-cxa/.env create mode 100644 sxc/10.0/xc1-cxa/cd/Dockerfile create mode 100644 sxc/10.0/xc1-cxa/cd/xdts/Web.config.xdt create mode 100644 sxc/10.0/xc1-cxa/cm/Dockerfile create mode 100644 sxc/10.0/xc1-cxa/cm/xdts/Web.config.xdt create mode 100644 sxc/10.0/xc1-cxa/commerce.build.yml create mode 100644 sxc/10.0/xc1-cxa/docker-compose.build.yml create mode 100644 sxc/10.0/xc1-cxa/docker-compose.yml create mode 100644 sxc/10.0/xc1-cxa/mssql/init/Dockerfile create mode 100644 sxc/10.0/xc1-cxa/mssql/standalone/Dockerfile create mode 100644 sxc/10.0/xc1-cxa/solr/init/Dockerfile create mode 100644 sxc/10.0/xc1-cxa/solr/standalone/Dockerfile create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/authoring.localhost.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/authoring.localhost.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/bizfx.localhost.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/bizfx.localhost.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/minions.localhost.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/minions.localhost.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/ops.localhost.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/ops.localhost.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/root-ca.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/root-ca.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/root.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/root.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/shops.localhost.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/shops.localhost.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/xc1cd.localhost.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/xc1cd.localhost.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/xc1cm.localhost.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/xc1cm.localhost.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/xc1id.localhost.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/xc1id.localhost.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/xc1sxacd.localhost.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/xc1sxacd.localhost.key create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/xc1sxacm.localhost.crt create mode 100644 sxc/10.0/xc1-cxa/traefik/certs/xc1sxacm.localhost.key create mode 100644 sxc/10.0/xc1-cxa/traefik/config/dynamic/certs_config.yaml create mode 100644 sxc/10.0/xc1/.env create mode 100644 sxc/10.0/xc1/cd/Content/Website/App_Config/Include/Domains.Shared.config create mode 100644 sxc/10.0/xc1/cd/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config create mode 100644 sxc/10.0/xc1/cd/Permissions/AdditionalWriteAllowedFolders.txt create mode 100644 sxc/10.0/xc1/cd/tools/GrantWritePermission.ps1 create mode 100644 sxc/10.0/xc1/cd/tools/Invoke-XdtTransformations.ps1 create mode 100644 sxc/10.0/xc1/cd/xdts/Web.config.xdt create mode 100644 sxc/10.0/xc1/cm/Content/Website/App_Config/Include/Domains.Shared.config create mode 100644 sxc/10.0/xc1/cm/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config create mode 100644 sxc/10.0/xc1/cm/Permissions/AdditionalWriteAllowedFolders.txt create mode 100644 sxc/10.0/xc1/cm/tools/GrantWritePermission.ps1 create mode 100644 sxc/10.0/xc1/cm/tools/Invoke-XdtTransformations.ps1 create mode 100644 sxc/10.0/xc1/cm/xdts/Web.config.xdt create mode 100644 sxc/10.0/xc1/docker-compose.build.yml create mode 100644 sxc/10.0/xc1/prcrep/keep.txt create mode 100644 sxc/10.0/xc1/xdbautomation/keep.txt create mode 100644 sxc/10.0/xc1/xdbcollection/keep.txt create mode 100644 sxc/10.0/xc1/xdbsearch/keep.txt diff --git a/sxc/10.0/k8s-commerce-xc1/bizfx.yaml b/sxc/10.0/k8s-commerce-xc1/bizfx.yaml new file mode 100644 index 0000000..b0e8d6a --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/bizfx.yaml @@ -0,0 +1,78 @@ +apiVersion: v1 +kind: Service +metadata: + name: bizfx +spec: + selector: + app: bizfx + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: bizfx + labels: + app: bizfx +spec: + replicas: 1 + selector: + matchLabels: + app: bizfx + template: + metadata: + labels: + app: bizfx + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xc-bizfx + image: {registry}/{sxc-project}/sitecore-xc-bizfx:{commerce-version} + ports: + - containerPort: 80 + env: + - name: sitecore_xc_bizfx_default_language + valueFrom: + secretKeyRef: + name: commerce-bizfx + key: commerce-bizfx-language.txt + - name: sitecore_xc_bizfx_default_currency + valueFrom: + secretKeyRef: + name: commerce-bizfx + key: commerce-bizfx-currency.txt + - name: sitecore_xc_bizfx_default_shopname + valueFrom: + secretKeyRef: + name: commerce-bizfx + key: commerce-bizfx-shopname.txt + - name: sitecore_xc_bizfx_bizfx_url + value: https://bizfx.globalhost + - name: sitecore_xc_bizfx_authoring_url + value: https://authoring.globalhost + - name: sitecore_xc_bizfx_identity_server_url + value: https://id.globalhost + livenessProbe: + httpGet: + path: / + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: / + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/cd.yaml b/sxc/10.0/k8s-commerce-xc1/cd.yaml new file mode 100644 index 0000000..38bf427 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/cd.yaml @@ -0,0 +1,201 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: cd-config-storage +spec: + accessModes: + - ReadWriteMany + storageClassName: azurefile + resources: + requests: + storage: 1Gi +--- +apiVersion: v1 +kind: Service +metadata: + name: cd +spec: + selector: + app: cd + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: cd + labels: + app: cd +spec: + replicas: 1 + selector: + matchLabels: + app: cd + template: + metadata: + labels: + app: cd + spec: + nodeSelector: + kubernetes.io/os: windows + initContainers: + - name: wait-xdbcollection + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbcollection/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-xdbautomation + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbautomation/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-xdbautomationrpt + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbautomationrpt/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-xdbrefdata + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbrefdata/healthz/ready).StatusCode -eq 200} catch { $false }));"] + containers: + - name: sitecore-xc1-cd + image: {registry}/{sxc-project}/sitecore-xc1-cd:{commerce-version} + ports: + - containerPort: 80 + volumeMounts: + - name: config-storage-volume + mountPath: "/inetpub/wwwroot/App_Config/Security-Shared" + env: + - name: Sitecore_InstanceName + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Core_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-username.txt + - name: Core_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-password.txt + - name: Web_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-web-database-username.txt + - name: Web_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-web-database-password.txt + - name: Forms_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-forms-database-username.txt + - name: Forms_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-forms-database-password.txt + - name: Exm_Master_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-exm-master-database-username.txt + - name: Exm_Master_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-exm-master-database-password.txt + - name: Messaging_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-username.txt + - name: Messaging_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_xc_Client_Secret_Hash + valueFrom: + secretKeyRef: + name: commerce-connect-client + key: commerce-connect-clientsecret.txt + - name: Sitecore_ConnectionStrings_Security + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Core;User ID=$(Core_Database_Username);Password=$(Core_Database_Password); + - name: Sitecore_ConnectionStrings_Web + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Web;User ID=$(Web_Database_Username);Password=$(Web_Database_Password); + - name: Sitecore_ConnectionStrings_Messaging + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Messaging;User ID=$(Messaging_Database_Username);Password=$(Messaging_Database_Password); + - name: Sitecore_ConnectionStrings_ExperienceForms + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.ExperienceForms;User ID=$(Forms_Database_Username);Password=$(Forms_Database_Password); + - name: Sitecore_ConnectionStrings_Exm.Master + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Exm.master;User ID=$(Exm_Master_Database_Username);Password=$(Exm_Master_Database_Password); + - name: Sitecore_ConnectionStrings_Solr.Search + valueFrom: + secretKeyRef: + name: sitecore-solr + key: sitecore-solr-connection-string.txt + - name: Sitecore_ConnectionStrings_XConnect.Collection + value: http://xdbcollection + - name: Sitecore_ConnectionStrings_Xdb.MarketingAutomation.Operations.Client + value: http://xdbautomation + - name: Sitecore_ConnectionStrings_Xdb.MarketingAutomation.Reporting.Client + value: http://xdbautomationrpt + - name: Sitecore_ConnectionStrings_Xdb.ReferenceData.Client + value: http://xdbrefdata + - name: Sitecore_ConnectionStrings_Redis.Sessions + valueFrom: + secretKeyRef: + name: sitecore-redis + key: sitecore-redis-connection-string.txt + - name: Sitecore_Identity_Server_Authority + value: https://id.globalhost + - name: Sitecore_Identity_Server_InternalAuthority + value: http://id + - name: Sitecore_xc_Minions_Url + value: http://engine-minions:5000/commerceops/ + - name: Sitecore_xc_Ops_Url + value: http://engine-ops:5000/commerceops/ + - name: Sitecore_xc_Shops_Url + value: http://engine-shops:5000/api/ + - name: Sitecore_xc_ConnectionStrings_Redis + valueFrom: + secretKeyRef: + name: commerce-redis + key: commerce-connect-redis-connection-string.txt + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + volumes: + - name: config-storage-volume + persistentVolumeClaim: + claimName: cd-config-storage + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/cm.yaml b/sxc/10.0/k8s-commerce-xc1/cm.yaml new file mode 100644 index 0000000..a70416a --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/cm.yaml @@ -0,0 +1,281 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: cm-config-storage +spec: + accessModes: + - ReadWriteMany + storageClassName: azurefile + resources: + requests: + storage: 1Gi +--- +apiVersion: v1 +kind: Service +metadata: + name: cm +spec: + selector: + app: cm + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: cm + labels: + app: cm +spec: + replicas: 1 + selector: + matchLabels: + app: cm + template: + metadata: + labels: + app: cm + spec: + nodeSelector: + kubernetes.io/os: windows + initContainers: + - name: wait-xdbcollection + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbcollection/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-xdbsearch + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbsearch/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-cortexreporting + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://cortexreporting/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-xdbautomation + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbautomation/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-xdbautomationrpt + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbautomationrpt/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-xdbrefdata + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbrefdata/healthz/ready).StatusCode -eq 200} catch { $false }));"] + containers: + - name: sitecore-xc1-cm + image: {registry}/{sxc-project}/sitecore-xc1-cm:{commerce-version} + ports: + - containerPort: 80 + volumeMounts: + - name: config-storage-volume + mountPath: "/inetpub/wwwroot/App_Config/Security-Shared" + env: + - name: Sitecore_InstanceName + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Master_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-master-database-username.txt + - name: Master_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-master-database-password.txt + - name: Core_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-username.txt + - name: Core_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-password.txt + - name: Web_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-web-database-username.txt + - name: Web_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-web-database-password.txt + - name: Forms_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-forms-database-username.txt + - name: Forms_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-forms-database-password.txt + - name: Exm_Master_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-exm-master-database-username.txt + - name: Exm_Master_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-exm-master-database-password.txt + - name: Messaging_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-username.txt + - name: Messaging_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-password.txt + - name: Reporting_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-username.txt + - name: Reporting_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-password.txt + - name: Reference_Data_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-username.txt + - name: Reference_Data_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-password.txt + - name: Sitecore_ConnectionStrings_Sitecoreidentity.secret + valueFrom: + secretKeyRef: + name: sitecore-identity + key: sitecore-identitysecret.txt + - name: Sitecore_AppSettings_Telerik.AsyncUpload.ConfigurationEncryptionKey + valueFrom: + secretKeyRef: + name: sitecore-telerik + key: sitecore-telerikencryptionkey.txt + - name: Sitecore_AppSettings_Telerik.Upload.ConfigurationHashKey + valueFrom: + secretKeyRef: + name: sitecore-telerik + key: sitecore-telerikencryptionkey.txt + - name: Sitecore_AppSettings_Telerik.Web.UI.DialogParametersEncryptionKey + valueFrom: + secretKeyRef: + name: sitecore-telerik + key: sitecore-telerikencryptionkey.txt + - name: Sitecore_ConnectionStrings_Reporting.ApiKey + valueFrom: + secretKeyRef: + name: sitecore-reporting + key: sitecore-reportingapikey.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_xc_Client_Secret_Hash + valueFrom: + secretKeyRef: + name: commerce-connect-client + key: commerce-connect-clientsecret.txt + - name: Sitecore_ConnectionStrings_Core + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Core;User ID=$(Core_Database_Username);Password=$(Core_Database_Password); + - name: Sitecore_ConnectionStrings_Security + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Core;User ID=$(Core_Database_Username);Password=$(Core_Database_Password); + - name: Sitecore_ConnectionStrings_Master + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Master;User ID=$(Master_Database_Username);Password=$(Master_Database_Password); + - name: Sitecore_ConnectionStrings_Web + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Web;User ID=$(Web_Database_Username);Password=$(Web_Database_Password); + - name: Sitecore_ConnectionStrings_Messaging + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Messaging;User ID=$(Messaging_Database_Username);Password=$(Messaging_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Referencedata + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Referencedata;User ID=$(Reference_Data_Database_Username);Password=$(Reference_Data_Database_Password); + - name: Sitecore_ConnectionStrings_ExperienceForms + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.ExperienceForms;User ID=$(Forms_Database_Username);Password=$(Forms_Database_Password); + - name: Sitecore_ConnectionStrings_Exm.Master + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Exm.master;User ID=$(Exm_Master_Database_Username);Password=$(Exm_Master_Database_Password); + - name: Sitecore_ConnectionStrings_Reporting + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Reporting;User ID=$(Reporting_Database_Username);Password=$(Reporting_Database_Password); + - name: Sitecore_ConnectionStrings_Sitecore.Reporting.Client + value: http://cortexreporting + - name: Sitecore_ConnectionStrings_Solr.Search + valueFrom: + secretKeyRef: + name: sitecore-solr + key: sitecore-solr-connection-string.txt + - name: Sitecore_ConnectionStrings_XConnect.Collection + value: http://xdbcollection + - name: Sitecore_ConnectionStrings_XConnect.Search + value: http://xdbsearch + - name: Sitecore_ConnectionStrings_Xdb.MarketingAutomation.Operations.Client + value: http://xdbautomation + - name: Sitecore_ConnectionStrings_Xdb.MarketingAutomation.Reporting.Client + value: http://xdbautomationrpt + - name: Sitecore_ConnectionStrings_Xdb.ReferenceData.Client + value: http://xdbrefdata + - name: Sitecore_Reporting_Service_Url + value: http://rep + - name: Sitecore_Processing_Service_Url + value: http://prc + - name: Sitecore_Reporting_Service_Require_Https + value: 'false' + - name: Sitecore_Processing_Service_Require_Https + value: 'false' + - name: Sitecore_Identity_Server_Authority + value: https://id.globalhost + - name: Sitecore_Identity_Server_CallbackAuthority + value: https://cm.globalhost + - name: Sitecore_Identity_Server_InternalAuthority + value: http://id + - name: Sitecore_Identity_Server_Require_Https + value: "false" + - name: Sitecore_xc_Minions_Url + value: http://engine-minions:5000/commerceops/ + - name: Sitecore_xc_Ops_Url + value: http://engine-ops:5000/commerceops/ + - name: Sitecore_xc_Shops_Url + value: http://engine-authoring:5000/api/ + - name: Sitecore_xc_ConnectionStrings_Redis + valueFrom: + secretKeyRef: + name: commerce-redis + key: commerce-connect-redis-connection-string.txt + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + volumes: + - name: config-storage-volume + persistentVolumeClaim: + claimName: cm-config-storage + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/cortexprocessing.yaml b/sxc/10.0/k8s-commerce-xc1/cortexprocessing.yaml new file mode 100644 index 0000000..05ae6f7 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/cortexprocessing.yaml @@ -0,0 +1,79 @@ +apiVersion: v1 +kind: Service +metadata: + name: cortexprocessing +spec: + selector: + app: cortexprocessing + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: cortexprocessing + labels: + app: cortexprocessing +spec: + replicas: 1 + selector: + matchLabels: + app: cortexprocessing + template: + metadata: + labels: + app: cortexprocessing + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xp1-cortexprocessing + image: {registry}/{project}/sitecore-xp1-cortexprocessing:{version} + ports: + - containerPort: 80 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Processing_Engine_Storage_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-engine-storage-database-username.txt + - name: Processing_Engine_Storage_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-engine-storage-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Processing.Engine.Storage + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Processing.Engine.Storage;User ID=$(Processing_Engine_Storage_Database_Username);Password=$(Processing_Engine_Storage_Database_Password); + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/cortexprocessingworker.yaml b/sxc/10.0/k8s-commerce-xc1/cortexprocessingworker.yaml new file mode 100644 index 0000000..49d6564 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/cortexprocessingworker.yaml @@ -0,0 +1,126 @@ +apiVersion: v1 +kind: Service +metadata: + name: cortexprocessingworker +spec: + selector: + app: cortexprocessingworker + ports: + - protocol: TCP + port: 8080 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: cortexprocessingworker + labels: + app: cortexprocessingworker +spec: + replicas: 1 + selector: + matchLabels: + app: cortexprocessingworker + template: + metadata: + labels: + app: cortexprocessingworker + spec: + nodeSelector: + kubernetes.io/os: windows + initContainers: + - name: wait-xdbcollection + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbcollection/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-xdbsearch + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbsearch/healthz/ready).StatusCode -eq 200} catch { $false }));"] + containers: + - name: sitecore-xp1-cortexprocessingworker + image: {registry}/{project}/sitecore-xp1-cortexprocessingworker:{version} + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Processing_Engine_Tasks_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-engine-tasks-database-username.txt + - name: Processing_Engine_Tasks_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-engine-tasks-database-password.txt + - name: Processing_Engine_Storage_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-engine-storage-database-username.txt + - name: Processing_Engine_Storage_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-engine-storage-database-password.txt + - name: Messaging_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-username.txt + - name: Messaging_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-password.txt + - name: Reporting_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-username.txt + - name: Reporting_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Processing.Engine.Storage + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Processing.Engine.Storage;User ID=$(Processing_Engine_Storage_Database_Username);Password=$(Processing_Engine_Storage_Database_Password); + - name: Sitecore_ConnectionStrings_Processing.Engine.Tasks + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Processing.Engine.Tasks;User ID=$(Processing_Engine_Tasks_Database_Username);Password=$(Processing_Engine_Tasks_Database_Password); + - name: Sitecore_ConnectionStrings_Processing.Webapi.Blob + value: http://cortexprocessing + - name: Sitecore_ConnectionStrings_Processing.Webapi.Table + value: http://cortexprocessing + - name: Sitecore_ConnectionStrings_Xconnect.Collection + value: http://xdbcollection + - name: Sitecore_ConnectionStrings_Xconnect.Configuration + value: http://xdbcollection + - name: Sitecore_ConnectionStrings_XConnect.Search + value: http://xdbsearch + - name: Sitecore_ConnectionStrings_Messaging + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Messaging;User ID=$(Messaging_Database_Username);Password=$(Messaging_Database_Password); + - name: Sitecore_ConnectionStrings_Reporting + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Reporting;User ID=$(Reporting_Database_Username);Password=$(Reporting_Database_Password); + livenessProbe: + exec: + command: + - curl + - http://localhost:8080/healthz/live + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + exec: + command: + - curl + - http://localhost:8080/healthz/ready + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/cortexreporting.yaml b/sxc/10.0/k8s-commerce-xc1/cortexreporting.yaml new file mode 100644 index 0000000..317ff28 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/cortexreporting.yaml @@ -0,0 +1,79 @@ +apiVersion: v1 +kind: Service +metadata: + name: cortexreporting +spec: + selector: + app: cortexreporting + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: cortexreporting + labels: + app: cortexreporting +spec: + replicas: 1 + selector: + matchLabels: + app: cortexreporting + template: + metadata: + labels: + app: cortexreporting + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xp1-cortexreporting + image: {registry}/{project}/sitecore-xp1-cortexreporting:{version} + ports: + - containerPort: 80 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Reporting_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-username.txt + - name: Reporting_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Reporting + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Reporting;User ID=$(Reporting_Database_Username);Password=$(Reporting_Database_Password); + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/engine-authoring.yaml b/sxc/10.0/k8s-commerce-xc1/engine-authoring.yaml new file mode 100644 index 0000000..56889a6 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/engine-authoring.yaml @@ -0,0 +1,200 @@ +apiVersion: v1 +kind: Service +metadata: + name: engine-authoring +spec: + selector: + app: engine-authoring + ports: + - protocol: TCP + port: 5000 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: engine-authoring + labels: + app: engine-authoring +spec: + replicas: 1 + selector: + matchLabels: + app: engine-authoring + template: + metadata: + labels: + app: engine-authoring + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xc-engine + image: {registry}/{sxc-project}/sitecore-xc-engine:{commerce-version} + ports: + - containerPort: 5000 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: COMMERCEENGINE_AppSettings__DeploymentId + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: COMMERCEENGINE_CommerceConnector__ClientId + valueFrom: + secretKeyRef: + name: commerce-connect-client + key: commerce-connect-clientid.txt + - name: COMMERCEENGINE_GlobalDatabaseUserName + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseusername.txt + - name: COMMERCEENGINE_GlobalDatabasePassword + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databasepassword.txt + - name: COMMERCEENGINE_SharedDatabaseUserName + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseusername.txt + - name: COMMERCEENGINE_SharedDatabasePassword + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databasepassword.txt + - name: COMMERCEENGINE_SitecorePassword + valueFrom: + secretKeyRef: + name: sitecore-admin + key: sitecore-adminpassword.txt + - name: COMMERCEENGINE_BraintreeEnvironment + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreeenvironment.txt + - name: COMMERCEENGINE_BraintreeMerchantId + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreemerchantid.txt + - name: COMMERCEENGINE_BraintreePublicKey + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreepublickey.txt + - name: COMMERCEENGINE_BraintreePrivateKey + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreeprivatekey.txt + - name: COMMERCEENGINE_SolrUrl + valueFrom: + secretKeyRef: + name: commerce-solr + key: commerce-solr-connection-string.txt + - name: COMMERCEENGINE_AppSettings__EnvironmentName + value: HabitatAuthoring + - name: COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl + value: https://id.globalhost + - name: COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl + value: http://id + - name: COMMERCEENGINE_AppSettings__AllowedOrigins + value: https://bizfx.globalhost|https://cm.globalhost|https://cd.globalhost + - name: COMMERCEENGINE_AppSettings__AntiForgeryEnabled + value: "false" + - name: COMMERCEENGINE_AppSettings__UseHttpsInKestrel + value: "false" + - name: COMMERCEENGINE_Caching__Redis__Options__Configuration + valueFrom: + secretKeyRef: + name: commerce-redis + key: commerce-redis-connection-string.txt + - name: COMMERCEENGINE_Caching__Redis__Options__InstanceName + value: Redis + - name: COMMERCEENGINE_GlobalDatabaseName + value: SitecoreCommerce_Global + - name: COMMERCEENGINE_GlobalDatabaseServer + value: $(Database_Server) + - name: COMMERCEENGINE_GlobalTrustedConnection + value: "false" + - name: COMMERCEENGINE_SharedDatabaseName + value: SitecoreCommerce_SharedEnvironments + - name: COMMERCEENGINE_SharedDatabaseServer + value: $(Database_Server) + - name: COMMERCEENGINE_SharedTrustedConnection + value: "false" + - name: COMMERCEENGINE_SitecoreHost + value: $(CM_SERVICE_HOST) + - name: COMMERCEENGINE_SitecoreDatabase + value: master + - name: COMMERCEENGINE_SitecoreUsername + value: admin + - name: COMMERCEENGINE_SitecoreDomain + value: sitecore + - name: COMMERCEENGINE_SitecoreProtocol + value: http + - name: COMMERCEENGINE_SitecoreAllowAnonymousUser + value: "true" + - name: COMMERCEENGINE_SitecoreExternalProtocol + value: https + - name: COMMERCEENGINE_SitecoreExternalHost + value: cm.globalhost + - name: COMMERCEENGINE_IsSolrCloud + value: "true" + - name: COMMERCEENGINE_StorefrontIndexPrefix_web_index + value: sitecore_web_index + - name: COMMERCEENGINE_StorefrontIndexPrefix_master_index + value: sitecore_master_index + - name: COMMERCEENGINE_SearchIndexPrefixOrdersScope + value: commerce_OrdersScope + - name: COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild + value: commerce_OrdersScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixCustomersScope + value: commerce_CustomersScope + - name: COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild + value: commerce_CustomersScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope + value: commerce_CatalogItemsScope + - name: COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild + value: commerce_CatalogItemsScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixPromotionsScope + value: commerce_PromotionsScope + - name: COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild + value: commerce_PromotionsScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixPriceCardsScope + value: commerce_PriceCardsScope + - name: COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild + value: commerce_PriceCardsScope-Rebuild + - name: COMMERCEENGINE_EngineAuthoringUrl + value: https://authoring.globalhost + - name: COMMERCEENGINE_EngineShopsUrl + value: https://shops.globalhost + - name: COMMERCEENGINE_EngineMinionsUrl + value: https://minions.globalhost + livenessProbe: + httpGet: + path: /health + port: 5000 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /health + port: 5000 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/engine-minions.yaml b/sxc/10.0/k8s-commerce-xc1/engine-minions.yaml new file mode 100644 index 0000000..e3ec644 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/engine-minions.yaml @@ -0,0 +1,200 @@ +apiVersion: v1 +kind: Service +metadata: + name: engine-minions +spec: + selector: + app: engine-minions + ports: + - protocol: TCP + port: 5000 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: engine-minions + labels: + app: engine-minions +spec: + replicas: 1 + selector: + matchLabels: + app: engine-minions + template: + metadata: + labels: + app: engine-minions + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xc-engine + image: {registry}/{sxc-project}/sitecore-xc-engine:{commerce-version} + ports: + - containerPort: 5000 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: COMMERCEENGINE_AppSettings__DeploymentId + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: COMMERCEENGINE_CommerceConnector__ClientId + valueFrom: + secretKeyRef: + name: commerce-connect-client + key: commerce-connect-clientid.txt + - name: COMMERCEENGINE_GlobalDatabaseUserName + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseusername.txt + - name: COMMERCEENGINE_GlobalDatabasePassword + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databasepassword.txt + - name: COMMERCEENGINE_SharedDatabaseUserName + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseusername.txt + - name: COMMERCEENGINE_SharedDatabasePassword + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databasepassword.txt + - name: COMMERCEENGINE_SitecorePassword + valueFrom: + secretKeyRef: + name: sitecore-admin + key: sitecore-adminpassword.txt + - name: COMMERCEENGINE_BraintreeEnvironment + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreeenvironment.txt + - name: COMMERCEENGINE_BraintreeMerchantId + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreemerchantid.txt + - name: COMMERCEENGINE_BraintreePublicKey + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreepublickey.txt + - name: COMMERCEENGINE_BraintreePrivateKey + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreeprivatekey.txt + - name: COMMERCEENGINE_SolrUrl + valueFrom: + secretKeyRef: + name: commerce-solr + key: commerce-solr-connection-string.txt + - name: COMMERCEENGINE_AppSettings__EnvironmentName + value: HabitatMinions + - name: COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl + value: https://id.globalhost + - name: COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl + value: http://id + - name: COMMERCEENGINE_AppSettings__AllowedOrigins + value: https://bizfx.globalhost|https://cm.globalhost|https://cd.globalhost + - name: COMMERCEENGINE_AppSettings__AntiForgeryEnabled + value: "false" + - name: COMMERCEENGINE_AppSettings__UseHttpsInKestrel + value: "false" + - name: COMMERCEENGINE_Caching__Redis__Options__Configuration + valueFrom: + secretKeyRef: + name: commerce-redis + key: commerce-redis-connection-string.txt + - name: COMMERCEENGINE_Caching__Redis__Options__InstanceName + value: Redis + - name: COMMERCEENGINE_GlobalDatabaseName + value: SitecoreCommerce_Global + - name: COMMERCEENGINE_GlobalDatabaseServer + value: $(Database_Server) + - name: COMMERCEENGINE_GlobalTrustedConnection + value: "false" + - name: COMMERCEENGINE_SharedDatabaseName + value: SitecoreCommerce_SharedEnvironments + - name: COMMERCEENGINE_SharedDatabaseServer + value: $(Database_Server) + - name: COMMERCEENGINE_SharedTrustedConnection + value: "false" + - name: COMMERCEENGINE_SitecoreHost + value: $(CM_SERVICE_HOST) + - name: COMMERCEENGINE_SitecoreDatabase + value: master + - name: COMMERCEENGINE_SitecoreUsername + value: admin + - name: COMMERCEENGINE_SitecoreDomain + value: sitecore + - name: COMMERCEENGINE_SitecoreProtocol + value: http + - name: COMMERCEENGINE_SitecoreAllowAnonymousUser + value: "true" + - name: COMMERCEENGINE_SitecoreExternalProtocol + value: https + - name: COMMERCEENGINE_SitecoreExternalHost + value: cm.globalhost + - name: COMMERCEENGINE_IsSolrCloud + value: "true" + - name: COMMERCEENGINE_StorefrontIndexPrefix_web_index + value: sitecore_web_index + - name: COMMERCEENGINE_StorefrontIndexPrefix_master_index + value: sitecore_master_index + - name: COMMERCEENGINE_SearchIndexPrefixOrdersScope + value: commerce_OrdersScope + - name: COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild + value: commerce_OrdersScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixCustomersScope + value: commerce_CustomersScope + - name: COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild + value: commerce_CustomersScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope + value: commerce_CatalogItemsScope + - name: COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild + value: commerce_CatalogItemsScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixPromotionsScope + value: commerce_PromotionsScope + - name: COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild + value: commerce_PromotionsScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixPriceCardsScope + value: commerce_PriceCardsScope + - name: COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild + value: commerce_PriceCardsScope-Rebuild + - name: COMMERCEENGINE_EngineAuthoringUrl + value: https://authoring.globalhost + - name: COMMERCEENGINE_EngineShopsUrl + value: https://shops.globalhost + - name: COMMERCEENGINE_EngineMinionsUrl + value: https://minions.globalhost + livenessProbe: + httpGet: + path: /health + port: 5000 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /health + port: 5000 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/engine-ops.yaml b/sxc/10.0/k8s-commerce-xc1/engine-ops.yaml new file mode 100644 index 0000000..3156ec6 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/engine-ops.yaml @@ -0,0 +1,200 @@ +apiVersion: v1 +kind: Service +metadata: + name: engine-ops +spec: + selector: + app: engine-ops + ports: + - protocol: TCP + port: 5000 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: engine-ops + labels: + app: engine-ops +spec: + replicas: 1 + selector: + matchLabels: + app: engine-ops + template: + metadata: + labels: + app: engine-ops + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xc-engine + image: {registry}/{sxc-project}/sitecore-xc-engine:{commerce-version} + ports: + - containerPort: 5000 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: COMMERCEENGINE_AppSettings__DeploymentId + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: COMMERCEENGINE_CommerceConnector__ClientId + valueFrom: + secretKeyRef: + name: commerce-connect-client + key: commerce-connect-clientid.txt + - name: COMMERCEENGINE_GlobalDatabaseUserName + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseusername.txt + - name: COMMERCEENGINE_GlobalDatabasePassword + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databasepassword.txt + - name: COMMERCEENGINE_SharedDatabaseUserName + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseusername.txt + - name: COMMERCEENGINE_SharedDatabasePassword + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databasepassword.txt + - name: COMMERCEENGINE_SitecorePassword + valueFrom: + secretKeyRef: + name: sitecore-admin + key: sitecore-adminpassword.txt + - name: COMMERCEENGINE_BraintreeEnvironment + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreeenvironment.txt + - name: COMMERCEENGINE_BraintreeMerchantId + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreemerchantid.txt + - name: COMMERCEENGINE_BraintreePublicKey + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreepublickey.txt + - name: COMMERCEENGINE_BraintreePrivateKey + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreeprivatekey.txt + - name: COMMERCEENGINE_SolrUrl + valueFrom: + secretKeyRef: + name: commerce-solr + key: commerce-solr-connection-string.txt + - name: COMMERCEENGINE_AppSettings__EnvironmentName + value: HabitatOps + - name: COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl + value: https://id.globalhost + - name: COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl + value: http://id + - name: COMMERCEENGINE_AppSettings__AllowedOrigins + value: https://bizfx.globalhost|https://cm.globalhost|https://cd.globalhost + - name: COMMERCEENGINE_AppSettings__AntiForgeryEnabled + value: "false" + - name: COMMERCEENGINE_AppSettings__UseHttpsInKestrel + value: "false" + - name: COMMERCEENGINE_Caching__Redis__Options__Configuration + valueFrom: + secretKeyRef: + name: commerce-redis + key: commerce-redis-connection-string.txt + - name: COMMERCEENGINE_Caching__Redis__Options__InstanceName + value: Redis + - name: COMMERCEENGINE_GlobalDatabaseName + value: SitecoreCommerce_Global + - name: COMMERCEENGINE_GlobalDatabaseServer + value: $(Database_Server) + - name: COMMERCEENGINE_GlobalTrustedConnection + value: "false" + - name: COMMERCEENGINE_SharedDatabaseName + value: SitecoreCommerce_SharedEnvironments + - name: COMMERCEENGINE_SharedDatabaseServer + value: $(Database_Server) + - name: COMMERCEENGINE_SharedTrustedConnection + value: "false" + - name: COMMERCEENGINE_SitecoreHost + value: $(CM_SERVICE_HOST) + - name: COMMERCEENGINE_SitecoreDatabase + value: master + - name: COMMERCEENGINE_SitecoreUsername + value: admin + - name: COMMERCEENGINE_SitecoreDomain + value: sitecore + - name: COMMERCEENGINE_SitecoreProtocol + value: http + - name: COMMERCEENGINE_SitecoreAllowAnonymousUser + value: "true" + - name: COMMERCEENGINE_SitecoreExternalProtocol + value: https + - name: COMMERCEENGINE_SitecoreExternalHost + value: cm.globalhost + - name: COMMERCEENGINE_IsSolrCloud + value: "true" + - name: COMMERCEENGINE_StorefrontIndexPrefix_web_index + value: sitecore_web_index + - name: COMMERCEENGINE_StorefrontIndexPrefix_master_index + value: sitecore_master_index + - name: COMMERCEENGINE_SearchIndexPrefixOrdersScope + value: commerce_OrdersScope + - name: COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild + value: commerce_OrdersScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixCustomersScope + value: commerce_CustomersScope + - name: COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild + value: commerce_CustomersScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope + value: commerce_CatalogItemsScope + - name: COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild + value: commerce_CatalogItemsScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixPromotionsScope + value: commerce_PromotionsScope + - name: COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild + value: commerce_PromotionsScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixPriceCardsScope + value: commerce_PriceCardsScope + - name: COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild + value: commerce_PriceCardsScope-Rebuild + - name: COMMERCEENGINE_EngineAuthoringUrl + value: https://authoring.globalhost + - name: COMMERCEENGINE_EngineShopsUrl + value: https://shops.globalhost + - name: COMMERCEENGINE_EngineMinionsUrl + value: https://minions.globalhost + livenessProbe: + httpGet: + path: /health + port: 5000 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /health + port: 5000 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/engine-shops.yaml b/sxc/10.0/k8s-commerce-xc1/engine-shops.yaml new file mode 100644 index 0000000..fea04d0 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/engine-shops.yaml @@ -0,0 +1,200 @@ +apiVersion: v1 +kind: Service +metadata: + name: engine-shops +spec: + selector: + app: engine-shops + ports: + - protocol: TCP + port: 5000 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: engine-shops + labels: + app: engine-shops +spec: + replicas: 1 + selector: + matchLabels: + app: engine-shops + template: + metadata: + labels: + app: engine-shops + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xc-engine + image: {registry}/{sxc-project}/sitecore-xc-engine:{commerce-version} + ports: + - containerPort: 5000 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: COMMERCEENGINE_AppSettings__DeploymentId + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: COMMERCEENGINE_CommerceConnector__ClientId + valueFrom: + secretKeyRef: + name: commerce-connect-client + key: commerce-connect-clientid.txt + - name: COMMERCEENGINE_GlobalDatabaseUserName + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseusername.txt + - name: COMMERCEENGINE_GlobalDatabasePassword + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databasepassword.txt + - name: COMMERCEENGINE_SharedDatabaseUserName + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseusername.txt + - name: COMMERCEENGINE_SharedDatabasePassword + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databasepassword.txt + - name: COMMERCEENGINE_SitecorePassword + valueFrom: + secretKeyRef: + name: sitecore-admin + key: sitecore-adminpassword.txt + - name: COMMERCEENGINE_BraintreeEnvironment + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreeenvironment.txt + - name: COMMERCEENGINE_BraintreeMerchantId + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreemerchantid.txt + - name: COMMERCEENGINE_BraintreePublicKey + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreepublickey.txt + - name: COMMERCEENGINE_BraintreePrivateKey + valueFrom: + secretKeyRef: + name: commerce-braintree + key: commerce-engine-braintreeprivatekey.txt + - name: COMMERCEENGINE_SolrUrl + valueFrom: + secretKeyRef: + name: commerce-solr + key: commerce-solr-connection-string.txt + - name: COMMERCEENGINE_AppSettings__EnvironmentName + value: HabitatShops + - name: COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl + value: https://id.globalhost + - name: COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl + value: http://id + - name: COMMERCEENGINE_AppSettings__AllowedOrigins + value: https://bizfx.globalhost|https://cm.globalhost|https://cd.globalhost + - name: COMMERCEENGINE_AppSettings__AntiForgeryEnabled + value: "false" + - name: COMMERCEENGINE_AppSettings__UseHttpsInKestrel + value: "false" + - name: COMMERCEENGINE_Caching__Redis__Options__Configuration + valueFrom: + secretKeyRef: + name: commerce-redis + key: commerce-redis-connection-string.txt + - name: COMMERCEENGINE_Caching__Redis__Options__InstanceName + value: Redis + - name: COMMERCEENGINE_GlobalDatabaseName + value: SitecoreCommerce_Global + - name: COMMERCEENGINE_GlobalDatabaseServer + value: $(Database_Server) + - name: COMMERCEENGINE_GlobalTrustedConnection + value: "false" + - name: COMMERCEENGINE_SharedDatabaseName + value: SitecoreCommerce_SharedEnvironments + - name: COMMERCEENGINE_SharedDatabaseServer + value: $(Database_Server) + - name: COMMERCEENGINE_SharedTrustedConnection + value: "false" + - name: COMMERCEENGINE_SitecoreHost + value: $(CM_SERVICE_HOST) + - name: COMMERCEENGINE_SitecoreDatabase + value: master + - name: COMMERCEENGINE_SitecoreUsername + value: admin + - name: COMMERCEENGINE_SitecoreDomain + value: sitecore + - name: COMMERCEENGINE_SitecoreProtocol + value: http + - name: COMMERCEENGINE_SitecoreAllowAnonymousUser + value: "true" + - name: COMMERCEENGINE_SitecoreExternalProtocol + value: https + - name: COMMERCEENGINE_SitecoreExternalHost + value: cm.globalhost + - name: COMMERCEENGINE_IsSolrCloud + value: "true" + - name: COMMERCEENGINE_StorefrontIndexPrefix_web_index + value: sitecore_web_index + - name: COMMERCEENGINE_StorefrontIndexPrefix_master_index + value: sitecore_master_index + - name: COMMERCEENGINE_SearchIndexPrefixOrdersScope + value: commerce_OrdersScope + - name: COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild + value: commerce_OrdersScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixCustomersScope + value: commerce_CustomersScope + - name: COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild + value: commerce_CustomersScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope + value: commerce_CatalogItemsScope + - name: COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild + value: commerce_CatalogItemsScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixPromotionsScope + value: commerce_PromotionsScope + - name: COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild + value: commerce_PromotionsScope-Rebuild + - name: COMMERCEENGINE_SearchIndexPrefixPriceCardsScope + value: commerce_PriceCardsScope + - name: COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild + value: PriceCardsScope-Rebuild + - name: COMMERCEENGINE_EngineAuthoringUrl + value: https://authoring.globalhost + - name: COMMERCEENGINE_EngineShopsUrl + value: https://shops.globalhost + - name: COMMERCEENGINE_EngineMinionsUrl + value: https://minions.globalhost + livenessProbe: + httpGet: + path: /health + port: 5000 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /health + port: 5000 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/external/mssql.yaml b/sxc/10.0/k8s-commerce-xc1/external/mssql.yaml new file mode 100644 index 0000000..4bd1738 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/external/mssql.yaml @@ -0,0 +1,44 @@ +apiVersion: v1 +kind: Service +metadata: + name: mssql +spec: + selector: + app: mssql + ports: + - protocol: TCP + port: 1433 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: mssql + labels: + app: mssql +spec: + replicas: 1 + selector: + matchLabels: + app: mssql + template: + metadata: + labels: + app: mssql + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: mssql + image: {registry}/{nonproduction-project}/mssql-developer:2017-{short-version-ltsc} + ports: + - containerPort: 1433 + env: + - name: SA_PASSWORD + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databasepassword.txt + - name: ACCEPT_EULA + value: "Y" + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/external/redis.yaml b/sxc/10.0/k8s-commerce-xc1/external/redis.yaml new file mode 100644 index 0000000..a7e1359 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/external/redis.yaml @@ -0,0 +1,36 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis +spec: + selector: + app: redis + ports: + - protocol: TCP + port: 6379 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: redis + labels: + app: redis +spec: + replicas: 1 + selector: + matchLabels: + app: redis + template: + metadata: + labels: + app: redis + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-redis + image: {registry}/{project}/sitecore-redis:{version} + ports: + - containerPort: 6379 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/external/solr.yaml b/sxc/10.0/k8s-commerce-xc1/external/solr.yaml new file mode 100644 index 0000000..c4d1b10 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/external/solr.yaml @@ -0,0 +1,39 @@ +apiVersion: v1 +kind: Service +metadata: + name: solr +spec: + selector: + app: solr + ports: + - protocol: TCP + port: 8983 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: solr + labels: + app: solr +spec: + replicas: 1 + selector: + matchLabels: + app: solr + template: + metadata: + labels: + app: solr + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: solr + image: {registry}/{nonproduction-project}/solr:8.4.0-{short-version-ltsc} + ports: + - containerPort: 8983 + env: + - name: SOLR_MODE + value: solrcloud + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/id.yaml b/sxc/10.0/k8s-commerce-xc1/id.yaml new file mode 100644 index 0000000..84eb9d3 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/id.yaml @@ -0,0 +1,114 @@ +apiVersion: v1 +kind: Service +metadata: + name: id +spec: + selector: + app: id + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: id + labels: + app: id +spec: + replicas: 1 + selector: + matchLabels: + app: id + template: + metadata: + labels: + app: id + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xc-id + image: {registry}/{sxc-project}/sitecore-xc-id:{commerce-version} + ports: + - containerPort: 80 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Core_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-username.txt + - name: Core_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-password.txt + - name: Sitecore_Sitecore__IdentityServer__Clients__PasswordClient__ClientSecrets__ClientSecret1 + valueFrom: + secretKeyRef: + name: sitecore-identity + key: sitecore-identitysecret.txt + - name: Sitecore_Sitecore__IdentityServer__CertificateRawData + valueFrom: + secretKeyRef: + name: sitecore-identitycertificate + key: sitecore-identitycertificate.txt + - name: Sitecore_Sitecore__IdentityServer__CertificateRawDataPassword + valueFrom: + secretKeyRef: + name: sitecore-identitycertificate + key: sitecore-identitycertificatepassword.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_Sitecore__IdentityServer__Clients__CommerceEngineConnectClient__ClientId + valueFrom: + secretKeyRef: + name: commerce-connect-client + key: commerce-connect-clientid.txt + - name: Sitecore_Sitecore__IdentityServer__Clients__CommerceEngineConnectClient__ClientSecrets__ClientSecret1 + valueFrom: + secretKeyRef: + name: commerce-connect-client + key: commerce-connect-clientsecret.txt + - name: Sitecore_Sitecore__IdentityServer__SitecoreMemberShipOptions__ConnectionString + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Core;User ID=$(Core_Database_Username);Password=$(Core_Database_Password); + - name: Sitecore_Sitecore__IdentityServer__AccountOptions__PasswordRecoveryUrl + value: https://cm.globalhost/sitecore/login?rc=1 + - name: Sitecore_Sitecore__IdentityServer__Clients__DefaultClient__AllowedCorsOrigins__AllowedCorsOriginsGroup1 + value: https://cm.globalhost + - name: Sitecore_Sitecore__IdentityServer__PublicOrigin + value: https://id.globalhost + - name: Sitecore_Sitecore__IdentityServer__Clients__CommerceClient__AllowedCorsOrigins__AllowedCorsOriginsGroup1 + value: https://bizfx.globalhost|https://authoring.globalhost + - name: Sitecore_Sitecore__IdentityServer__Clients__CommerceEngineConnectClient__AllowedCorsOrigins__AllowedCorsOriginsGroup1 + value: https://cm.globalhost|https://cd.globalhost + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry diff --git a/sxc/10.0/k8s-commerce-xc1/ingress-nginx/configuration.yaml b/sxc/10.0/k8s-commerce-xc1/ingress-nginx/configuration.yaml new file mode 100644 index 0000000..af60a88 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/ingress-nginx/configuration.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: nginx-ingress-controller +data: + use-forwarded-headers: "true" + enable-underscores-in-headers: "true" \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/ingress-nginx/ingress.yaml b/sxc/10.0/k8s-commerce-xc1/ingress-nginx/ingress.yaml new file mode 100644 index 0000000..1b569ec --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/ingress-nginx/ingress.yaml @@ -0,0 +1,93 @@ +apiVersion: extensions/v1beta1 +kind: Ingress +metadata: + name: sitecore-ingress + annotations: + nginx.ingress.kubernetes.io/affinity: "cookie" + nginx.ingress.kubernetes.io/proxy-buffer-size: "32k" + nginx.ingress.kubernetes.io/proxy-read-timeout: "600" + nginx.ingress.kubernetes.io/proxy-send-timeout: "600" + nginx.ingress.kubernetes.io/rewrite-target: / +spec: + rules: + - host: cd.globalhost + http: + paths: + - path: / + backend: + serviceName: cd + servicePort: 80 + - host: cm.globalhost + http: + paths: + - path: / + backend: + serviceName: cm + servicePort: 80 + - host: id.globalhost + http: + paths: + - path: / + backend: + serviceName: id + servicePort: 80 + - host: bizfx.globalhost + http: + paths: + - path: / + backend: + serviceName: bizfx + servicePort: 80 + - host: authoring.globalhost + http: + paths: + - path: / + backend: + serviceName: engine-authoring + servicePort: 5000 + - host: minions.globalhost + http: + paths: + - path: / + backend: + serviceName: engine-minions + servicePort: 5000 + - host: ops.globalhost + http: + paths: + - path: / + backend: + serviceName: engine-ops + servicePort: 5000 + - host: shops.globalhost + http: + paths: + - path: / + backend: + serviceName: engine-shops + servicePort: 5000 + tls: + - secretName: global-cd-tls + hosts: + - cd.globalhost + - secretName: global-cm-tls + hosts: + - cm.globalhost + - secretName: global-id-tls + hosts: + - id.globalhost + - secretName: global-bizfx-tls + hosts: + - bizfx.globalhost + - secretName: global-authoring-tls + hosts: + - authoring.globalhost + - secretName: global-minions-tls + hosts: + - minions.globalhost + - secretName: global-ops-tls + hosts: + - ops.globalhost + - secretName: global-shops-tls + hosts: + - shops.globalhost \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/init/mssql-init.yaml b/sxc/10.0/k8s-commerce-xc1/init/mssql-init.yaml new file mode 100644 index 0000000..11d2b2e --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/init/mssql-init.yaml @@ -0,0 +1,182 @@ +apiVersion: batch/v1 +kind: Job +metadata: + name: mssql-init +spec: + template: + spec: + imagePullSecrets: + - name: sitecore-docker-registry + containers: + - name: mssql-init + image: {registry}/{sxc-project}/sitecore-xc1-mssql-init:{commerce-version} + env: + - name: sitecore_admin_password + valueFrom: + secretKeyRef: + name: sitecore-admin + key: sitecore-adminpassword.txt + - name: SQL_ADMIN_PASSWORD + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databasepassword.txt + - name: SQL_ADMIN_LOGIN + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseusername.txt + - name: SQL_SERVER + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: SQL_ELASTIC_POOL_NAME + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-database-elastic-pool-name.txt + - name: Master_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-master-database-username.txt + - name: Master_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-master-database-password.txt + - name: Core_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-username.txt + - name: Core_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-password.txt + - name: Web_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-web-database-username.txt + - name: Web_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-web-database-password.txt + - name: Forms_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-forms-database-username.txt + - name: Forms_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-forms-database-password.txt + - name: Exm_Master_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-exm-master-database-username.txt + - name: Exm_Master_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-exm-master-database-password.txt + - name: Marketing_Automation_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-username.txt + - name: Marketing_Automation_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-password.txt + - name: Messaging_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-username.txt + - name: Messaging_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-password.txt + - name: Reporting_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-username.txt + - name: Reporting_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-password.txt + - name: Reference_Data_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-username.txt + - name: Reference_Data_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-password.txt + - name: Processing_Pools_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-pools-database-username.txt + - name: Processing_Pools_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-pools-database-password.txt + - name: Processing_Tasks_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-tasks-database-username.txt + - name: Processing_Tasks_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-tasks-database-password.txt + - name: Processing_Engine_Tasks_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-engine-tasks-database-username.txt + - name: Processing_Engine_Tasks_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-engine-tasks-database-password.txt + - name: Processing_Engine_Storage_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-engine-storage-database-username.txt + - name: Processing_Engine_Storage_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-engine-storage-database-password.txt + - name: Collection_ShardMapManager_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-collection-shardmapmanager-database-username.txt + - name: Collection_ShardMapManager_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-collection-shardmapmanager-database-password.txt + - name: SITECORE_CORE_DB + value: Sitecore.Core + restartPolicy: Never + backoffLimit: 5 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/init/solr-init.yaml b/sxc/10.0/k8s-commerce-xc1/init/solr-init.yaml new file mode 100644 index 0000000..becee18 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/init/solr-init.yaml @@ -0,0 +1,25 @@ +apiVersion: batch/v1 +kind: Job +metadata: + name: solr-init +spec: + template: + spec: + imagePullSecrets: + - name: sitecore-docker-registry + containers: + - name: solr-init + image: {registry}/{sxc-project}/sitecore-xc1-solr-init:{commerce-version} + env: + - name: SITECORE_SOLR_CONNECTION_STRING + valueFrom: + secretKeyRef: + name: sitecore-solr + key: sitecore-solr-connection-string.txt + - name: COMMERCE_SOLR_CONNECTION_STRING + valueFrom: + secretKeyRef: + name: commerce-solr + key: commerce-solr-connection-string.txt + restartPolicy: Never + backoffLimit: 5 diff --git a/sxc/10.0/k8s-commerce-xc1/prc.yaml b/sxc/10.0/k8s-commerce-xc1/prc.yaml new file mode 100644 index 0000000..898a729 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/prc.yaml @@ -0,0 +1,156 @@ +apiVersion: v1 +kind: Service +metadata: + name: prc +spec: + selector: + app: prc + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: prc + labels: + app: prc +spec: + replicas: 1 + selector: + matchLabels: + app: prc + template: + metadata: + labels: + app: prc + spec: + nodeSelector: + kubernetes.io/os: windows + initContainers: + - name: wait-xdbcollection + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbcollection/healthz/ready).StatusCode -eq 200} catch { $false }));"] + containers: + - name: sitecore-xp1-prc + image: {registry}/{project}/sitecore-xp1-prc:{version} + ports: + - containerPort: 80 + env: + - name: Sitecore_InstanceName + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Master_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-master-database-username.txt + - name: Master_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-master-database-password.txt + - name: Core_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-username.txt + - name: Core_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-password.txt + - name: Reporting_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-username.txt + - name: Reporting_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-password.txt + - name: Reference_Data_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-username.txt + - name: Reference_Data_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-password.txt + - name: Processing_Pools_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-pools-database-username.txt + - name: Processing_Pools_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-pools-database-password.txt + - name: Processing_Tasks_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-tasks-database-username.txt + - name: Processing_Tasks_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-tasks-database-password.txt + - name: Sitecore_ConnectionStrings_Reporting.ApiKey + valueFrom: + secretKeyRef: + name: sitecore-reporting + key: sitecore-reportingapikey.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Core + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Core;User ID=$(Core_Database_Username);Password=$(Core_Database_Password); + - name: Sitecore_ConnectionStrings_Security + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Core;User ID=$(Core_Database_Username);Password=$(Core_Database_Password); + - name: Sitecore_ConnectionStrings_Master + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Master;User ID=$(Master_Database_Username);Password=$(Master_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Processing.Pools + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Processing.pools;User ID=$(Processing_Pools_Database_Username);Password=$(Processing_Pools_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Referencedata + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Referencedata;User ID=$(Reference_Data_Database_Username);Password=$(Reference_Data_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Processing.Tasks + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Processing.tasks;User ID=$(Processing_Tasks_Database_Username);Password=$(Processing_Tasks_Database_Password); + - name: Sitecore_ConnectionStrings_Reporting + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Reporting;User ID=$(Reporting_Database_Username);Password=$(Reporting_Database_Password); + - name: Sitecore_ConnectionStrings_XConnect.Collection + value: http://xdbcollection + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/rep.yaml b/sxc/10.0/k8s-commerce-xc1/rep.yaml new file mode 100644 index 0000000..da24b36 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/rep.yaml @@ -0,0 +1,114 @@ +apiVersion: v1 +kind: Service +metadata: + name: rep +spec: + selector: + app: rep + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: rep + labels: + app: rep +spec: + replicas: 1 + selector: + matchLabels: + app: rep + template: + metadata: + labels: + app: rep + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xc1-rep + image: {registry}/{sxc-project}/sitecore-xc1-rep:{commerce-version} + ports: + - containerPort: 80 + env: + - name: Sitecore_InstanceName + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Master_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-master-database-username.txt + - name: Master_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-master-database-password.txt + - name: Core_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-username.txt + - name: Core_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-core-database-password.txt + - name: Sitecore_ConnectionStrings_Reporting.ApiKey + valueFrom: + secretKeyRef: + name: sitecore-reporting + key: sitecore-reportingapikey.txt + - name: Reporting_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-username.txt + - name: Reporting_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reporting-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Core + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Core;User ID=$(Core_Database_Username);Password=$(Core_Database_Password); + - name: Sitecore_ConnectionStrings_Security + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Core;User ID=$(Core_Database_Username);Password=$(Core_Database_Password); + - name: Sitecore_ConnectionStrings_Master + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Master;User ID=$(Master_Database_Username);Password=$(Master_Database_Password); + - name: Sitecore_ConnectionStrings_Reporting + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Reporting;User ID=$(Reporting_Database_Username);Password=$(Reporting_Database_Password); + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/kustomization.yaml b/sxc/10.0/k8s-commerce-xc1/secrets/kustomization.yaml new file mode 100644 index 0000000..bdb2b36 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/kustomization.yaml @@ -0,0 +1,127 @@ +generatorOptions: + disableNameSuffixHash: true +secretGenerator: +- name: sitecore-admin + files: + - xp/sitecore-adminpassword.txt +- name: sitecore-database + files: + - xp/sitecore-databaseusername.txt + - xp/sitecore-databasepassword.txt + - xp/sitecore-databaseservername.txt + - xp/sitecore-collection-shardmapmanager-database-password.txt + - xp/sitecore-collection-shardmapmanager-database-username.txt + - xp/sitecore-core-database-password.txt + - xp/sitecore-core-database-username.txt + - xp/sitecore-exm-master-database-password.txt + - xp/sitecore-exm-master-database-username.txt + - xp/sitecore-forms-database-password.txt + - xp/sitecore-forms-database-username.txt + - xp/sitecore-marketing-automation-database-password.txt + - xp/sitecore-marketing-automation-database-username.txt + - xp/sitecore-master-database-password.txt + - xp/sitecore-master-database-username.txt + - xp/sitecore-messaging-database-password.txt + - xp/sitecore-messaging-database-username.txt + - xp/sitecore-processing-engine-storage-database-password.txt + - xp/sitecore-processing-engine-storage-database-username.txt + - xp/sitecore-processing-engine-tasks-database-password.txt + - xp/sitecore-processing-engine-tasks-database-username.txt + - xp/sitecore-processing-pools-database-password.txt + - xp/sitecore-processing-pools-database-username.txt + - xp/sitecore-processing-tasks-database-password.txt + - xp/sitecore-processing-tasks-database-username.txt + - xp/sitecore-reference-data-database-password.txt + - xp/sitecore-reference-data-database-username.txt + - xp/sitecore-reporting-database-password.txt + - xp/sitecore-reporting-database-username.txt + - xp/sitecore-web-database-password.txt + - xp/sitecore-web-database-username.txt + - xp/sitecore-database-elastic-pool-name.txt +- name: sitecore-identitycertificate + files: + - xp/sitecore-identitycertificate.txt + - xp/sitecore-identitycertificatepassword.txt +- name: sitecore-license + files: + - xp/sitecore-license.txt +- name: sitecore-identity + files: + - xp/sitecore-identitysecret.txt +- name: sitecore-telerik + files: + - xp/sitecore-telerikencryptionkey.txt +- name: sitecore-reporting + files: + - xp/sitecore-reportingapikey.txt +- name: sitecore-redis + files: + - xp/sitecore-redis-connection-string.txt +- name: sitecore-solr + files: + - xp/sitecore-solr-connection-string.txt +- name: sitecore-solr-xdb + files: + - xp/sitecore-solr-connection-string-xdb.txt +- name: commerce-bizfx + files: + - xc/commerce-bizfx-currency.txt + - xc/commerce-bizfx-language.txt + - xc/commerce-bizfx-shopname.txt +- name: commerce-connect-client + files: + - xc/commerce-connect-clientid.txt + - xc/commerce-connect-clientsecret.txt +- name: commerce-braintree + files: + - xc/commerce-engine-braintreeenvironment.txt + - xc/commerce-engine-braintreemerchantid.txt + - xc/commerce-engine-braintreepublickey.txt + - xc/commerce-engine-braintreeprivatekey.txt +- name: commerce-redis + files: + - xc/commerce-redis-connection-string.txt + - xc/commerce-connect-redis-connection-string.txt +- name: commerce-solr + files: + - xc/commerce-solr-connection-string.txt +- name: global-cd-tls + files: + - tls/global-cd/tls.key + - tls/global-cd/tls.crt + type: kubernetes.io/tls +- name: global-cm-tls + files: + - tls/global-cm/tls.key + - tls/global-cm/tls.crt + type: kubernetes.io/tls +- name: global-id-tls + files: + - tls/global-id/tls.key + - tls/global-id/tls.crt + type: kubernetes.io/tls +- name: global-bizfx-tls + files: + - tls/global-bizfx/tls.key + - tls/global-bizfx/tls.crt + type: kubernetes.io/tls +- name: global-authoring-tls + files: + - tls/global-authoring/tls.key + - tls/global-authoring/tls.crt + type: kubernetes.io/tls +- name: global-minions-tls + files: + - tls/global-minions/tls.key + - tls/global-minions/tls.crt + type: kubernetes.io/tls +- name: global-ops-tls + files: + - tls/global-ops/tls.key + - tls/global-ops/tls.crt + type: kubernetes.io/tls +- name: global-shops-tls + files: + - tls/global-shops/tls.key + - tls/global-shops/tls.crt + type: kubernetes.io/tls \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authoring/tls.crt b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authoring/tls.crt new file mode 100644 index 0000000..183e191 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authoring/tls.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDDTCCAfWgAwIBAgIUV55kUKrxUoY/+zSh/785YT7KybcwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTI1MTkyNzI5WhcNMzAwNTIzMTkyNzI5WjAfMR0wGwYDVQQDDBRhdXRob3Jpbmcu +Z2xvYmFsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALPBjrU7 +R5CU3H4afmOd/n0WWim15R/7o9sl94mo0ottY03PF4OvX0vBgd3j5YRkZvu9kKai +NeFA5Ka7dFHiDhyvh8aTjDZmDyVjJCDOZckef42sMeM6yY4KJUmQ0plZ8cktZvxr +B3J55zjPBzPN7uvgkcd3CQG9Q14Vz1DHgkfo2oefTDe5tEPPii7Cjt9sDztvW54U +HzyNtCjjWeGDcrNAHTCOGSNaG75L+RKhe79pgo7XNHjdLExt2InSxmT/o94jg6Wc +BaqoRNDR+O8eUiyx13EvW6UCis6QWXcPCUGOSLJhntf7IAbJB961NMSU/5+AeUcV +/iZIqRw3WHhVyOUCAwEAAaM7MDkwCQYDVR0TBAIwADALBgNVHQ8EBAMCBeAwHwYD +VR0RBBgwFoIUYXV0aG9yaW5nLmdsb2JhbGhvc3QwDQYJKoZIhvcNAQELBQADggEB +AJikbT8u1TPcheGcC2dIS7bfWBGap4EWskAa16/bvQSjZZFf3WIXZZIQJQyXV3s5 +HUESWpPhN4Wy3ynMeL9mI1z/ZxsUnHcqr/Er79P2ZSJZ8ulcqbC57n+SOuvdMnwk +4xHa4+hMqUfzywymMe/RpaRupzcT2EuUDRp/+CzPIf0CCI0aR2b3kAOdRyHS069h +GQWBkIuDKT4sfQ993s0iYDZchHAWP924IfqPjhn22q80KtA/c7Q2DVlOMLLdbrDj +DXj6HpbhQ24MPPwqSb4YM5NthXWWG3ps36/1ZnPm5+5qGBYLbqH5mUlLtrTWbfz5 +1XkLxj6hDEuQP4S+bk+/K+g= +-----END CERTIFICATE----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authoring/tls.key b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authoring/tls.key new file mode 100644 index 0000000..4754814 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authoring/tls.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAs8GOtTtHkJTcfhp+Y53+fRZaKbXlH/uj2yX3iajSi21jTc8X +g69fS8GB3ePlhGRm+72QpqI14UDkprt0UeIOHK+HxpOMNmYPJWMkIM5lyR5/jawx +4zrJjgolSZDSmVnxyS1m/GsHcnnnOM8HM83u6+CRx3cJAb1DXhXPUMeCR+jah59M +N7m0Q8+KLsKO32wPO29bnhQfPI20KONZ4YNys0AdMI4ZI1obvkv5EqF7v2mCjtc0 +eN0sTG3YidLGZP+j3iODpZwFqqhE0NH47x5SLLHXcS9bpQKKzpBZdw8JQY5IsmGe +1/sgBskH3rU0xJT/n4B5RxX+JkipHDdYeFXI5QIDAQABAoIBAQCvn2ZsTrSG38nl +MsFVVqGzWMlSgzKO4u6eSCPnTRgXvRIOjUyuDgOPIkpdnjE5/lZXkkfnZgg6QYqk +E/V7ot6izCRdsP6Gj4QwxQIhQ0ZTDwcURa6gEWmm6uavT11TEnuWUFOUPoWSJOPx +ruOci5DoyAnl1bjpCB7vp2NbyvDQi166xGYAaeFQQ8DrIZ+qIAk6qV2+cyIa2ojg +aRBl2ue/4qTaHny5jQBkUpr5d5sEhGtt2ih+8AZ7PSnDarwJPEzQRcVdXvghtcOr +qdtXV7wuz9Dbm4B5+ubMYCxHOZcHdHm+jnM5P9wypKEQIuck1sgkGPmLYbp3abpD +SYRrs61pAoGBAN4AiPrC8lwZoND73X7DpjjPhlTugiE2E6txUsvxuCQ3l5g5ZGBX +wI7dwDwGa6Bqhz4OSw1WFJU28WoCk2KYqZtRXa2AN3h38iuHRu31jPnIuFKnG9q6 +cgF1VD8QWSCDwfx/nclBtpbg8EYfq1EEENq3p50zj3IlmvzKg7oZFEhPAoGBAM9I +yrfy6XtCfq5kb/h7Bn1niruR3FbW9+mA/5x0R2LQeRMeqscqF7UXzdB2Wa2Tl7wX +zmR2dlXGA0Ky00Au2TpK00uvt/Zi1UttEob//ARlTVQokQMtYj48E5l42LtXrg0Q +Uwg2Y2lWNGk5hHFuPjiUtq9kTHJcstDl34DUPZqLAoGAfL7cOdw1h583CHeevM5/ +psil+S+Um8jhQKMLHWKUUHWUj4sgZiqpHx5oGNKaw6dYm3w4nCPUqQwYl7Me0nZq +R8Zu10GG6gCsad039BrYvrsVKAyS0FOYIE2nq1AqZOTkqlejeCWeziVTnnPJNlsM +hXpRizofzspmzsmVP4s8JG0CgYBwFd54ZYPXQPebeXgKlwvFV+3uy0qoMonP3A9c +HIxVZIFz00tpcttq8zo5lSWc9IhCD2VtcZk/fFlbAbO1qx+Po9JpxNTnCD5qEMrJ +8TXncpfEAEOZwjqziGzYuj4H37ugGMmtUSukVBb3J0D0zTYcBl5arROha3rN9t9K +nHnLTQKBgF5GnBhYeQeSRyM739yqkZ9VBNmQ6Uvii7qIfSe3wWfvDxP/85bhK7TC +miSlRjZJpcFUa+0Q40hfLMbcv083GurzBqeYFSzh1wj4MZ9RQxXyvU5VnTO7OiOU +j3NGRZP0RYPF+VEgFPJdfj4dvENuTNECw/mrKGCPaZqUZkyeRGBH +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authority/root.crt b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authority/root.crt new file mode 100644 index 0000000..d134e6e --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authority/root.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDKzCCAhOgAwIBAgIUTtyxXGMSAGqacagqX2MztBOqEj8wDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTI1MTkyNzI2WhcNNDcxMDExMTkyNzI2WjAlMSMwIQYDVQQDDBpDb21tZXJjZSBD +b250YWluZXIgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +ALHqALgoV8Qv2nDlZ5+6Ti3QOFTNUEoe4jx5Q1HTfD2HSdyllANPgTP6uzC060xL ++2RPQkqTKLz/jQgvzkUq6iIBAXcv9aT4Dbiuif/bVbl0llGMlNQ3FxtBAKyRngfR +pg56eZiH4f2ee/5+cipA6mSVGHAHX8TaiBG58kjKFxm3PgzPbomBbzCCPZgg8yE5 +UNEW01bs6CQqH6H4ijBmye0OPu2qq7/1ymg6lAGtRqMKpJq1z2sA78oR43GdAl98 +ejkDxecK0blrPpbhIUC7w7PIkn5LbNsMo1Ugm0lfm+qUw1j+PFtcOdXJYHA9DfJk +RwKAY8Lvc2k1ZG+wqDm6YE0CAwEAAaNTMFEwHQYDVR0OBBYEFM5xK9Uyf/9Jk093 +Yo0yV8aCGtazMB8GA1UdIwQYMBaAFM5xK9Uyf/9Jk093Yo0yV8aCGtazMA8GA1Ud +EwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBABqS5/hjb2HeHdgtV9But7Ph +m5gnF2c4Eu5Ep5OYkZVNMF7OxV22frgl0KJGhYQNwocwaBX6PRr5wvzzOeEDC9u9 +jwmMxv7O+bLe2ma0YQHT4y1LITdnRF+/9u2kAHROIafaVWpNM7yaiiGMldRuGNXl +Kbh4xk+TCM2BDi9IZI5rSr5L5tAwOHlDUc+DCmfdWD3tz14LLGGOJ2HRwjYww/n6 +NMX3PV7b9TNfC2980R1FEYnO9jb0oEhSoDZazPLWav8Y5la9Kbp7oa68wX5iN6WJ +rEVF/NmAi4Di0IfH5X+zwfmKHVbWW7YmZHG6GVwm9H4p6KsXrouYFgOyEZZBXbg= +-----END CERTIFICATE----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authority/root.key b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authority/root.key new file mode 100644 index 0000000..2ab6fe5 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-authority/root.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEogIBAAKCAQEAseoAuChXxC/acOVnn7pOLdA4VM1QSh7iPHlDUdN8PYdJ3KWU +A0+BM/q7MLTrTEv7ZE9CSpMovP+NCC/ORSrqIgEBdy/1pPgNuK6J/9tVuXSWUYyU +1DcXG0EArJGeB9GmDnp5mIfh/Z57/n5yKkDqZJUYcAdfxNqIEbnySMoXGbc+DM9u +iYFvMII9mCDzITlQ0RbTVuzoJCofofiKMGbJ7Q4+7aqrv/XKaDqUAa1GowqkmrXP +awDvyhHjcZ0CX3x6OQPF5wrRuWs+luEhQLvDs8iSfkts2wyjVSCbSV+b6pTDWP48 +W1w51clgcD0N8mRHAoBjwu9zaTVkb7CoObpgTQIDAQABAoIBAGvOf+EXkRcwaA1A +9Sm0murn4TqBrsU7MZuzXzeWDxK5h+hL7QSUiJYWuJcrCemRoSOHY4QM6AKeV7c+ +QJ9pAbbZJSozxYXRSX8/RB/lqGxYWT3REd4GA9pf6SiolDnor9bWIBhtPmOQRVJR +DJzN+To5njVEQqPmR811/3pb+uN5QtxrGmUc6o6pK801yrEzLF0bsKS8Yr19w6gH +cXZfoORnw4dxJ8ZaxqCz8c0FJV54UlMEtt2I/1cN77fxULOQa0wY1VgfrZPXPtQN +XUjJ712PoSpHSYGVR+fo5XA+5CebCS2784h1SixRFoTH1eZCDeX/a1BemTJhvJKU +J+pLe4ECgYEA4xfcOBaTft9KNW+dblDxa3FNVUpzTAK6z0IGfWIHKpsw2K/tGcU2 +3i9597J9YPUAJDF7boYQdgUpO2Xqs0OxG2Gu3o4dlwmiOb3U0VEkGd/WFatduPU4 +WEwfMlxbFWkzXUHoJSMil6x/JmqOULrT5hXXv2r9ED6MiljDV7wbq0sCgYEAyI+S +78t7WXK3WHcZILhdklewpkWINTvWCWAUiqd7UiSh8CXiZa7Q/f3KL8wMTC4ot59V +IcGqW9uDvUFS8xLqu7EkatkZwAcDRv4Z0LisjHyx7bOEyENIyHmHaMOGxCSOrGB9 +o0JGtzEoykfpJvNV3rTgOjYNWVyc/0vVoIoUC8cCgYBdp7V2nDjwFf5w0ztGB7PI +781I449xRZ7tYvlyND9oXuBiPQu3mRHryACxGreCiQgp5Q5WooufYLmEeZ+1lrEv +7bVEq6+gXqS804E1YhVVZm7QOQBKCzfVkm87QcN+rQg16bxntHnLu6Qkn8VZnfNN +7KwxkVoUnPcxBzJouHdgyQKBgC07E+w4e60EjgzJb0VNzux+EjytWbaHtBGRNZC/ +jLRNxqeeI5zC/CcL4Vk+L1fO4SfoKw7d2km1C9TWsppXHdEOdiQSqhgAfOC51aCY +xXE5ffcZkUyIwBVWMw+RaQc7J2IAsNTs0X3m/EgCR7adEjSTni4CmqgYlt+MfrUh +7rtpAoGAdMiL0SSY0bbqJgjHRgKSQpDbtUb5GlnUHLHliVCzxZsZ9lYLSU2xIL38 +35tFVfDZx6n3Tj3TRxrmxoIbevWVAMtgHGTKNumsMggBoTyDnFji98FkuzjuxupV +guyXbIkMjO3h0C2R8thHDeWsL7KG5KUxLXS6yt7boiA2j/Q60xw= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-bizfx/tls.crt b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-bizfx/tls.crt new file mode 100644 index 0000000..1de2e70 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-bizfx/tls.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDBTCCAe2gAwIBAgIUV55kUKrxUoY/+zSh/785YT7KybYwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTI1MTkyNzI5WhcNMzAwNTIzMTkyNzI5WjAbMRkwFwYDVQQDDBBiaXpmeC5nbG9i +YWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx1M4i2dwtVkK +1F0i/koBgijgpZDmLnr195nb2/IZZHPLPlPYrbFAjPe23qA8HNQ8RFHuKial1B5G +VfZVJ+Xxb7N1caOLyPZ2g6N0NC5jMEOxZJSv0WZRs+gE7mIMN4P14EAuPOr8bSF7 +R5mdeuhfCTSgwKJNTCMtzGHrkeJas4YiawV5o+1bu6QvVOZiT9HYCtNrLVEiH9Li +kgkGiVllBorFc/nmKYZyQSd56pO1pVkAeBnPvk9xX3N6asEoFRqjFPmyhL7UOKoQ +uOco9D9GqgdkNUloAvbDPyxJ4hbxPH7HadLjxkd5trtOKF5SNZG2czOon6lkL9+t +6G5zWZ6Q2wIDAQABozcwNTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAbBgNVHREE +FDASghBiaXpmeC5nbG9iYWxob3N0MA0GCSqGSIb3DQEBCwUAA4IBAQA4JdHdVnSJ +HRBJF9Jrl4QoIobBqxNK1u+mhBXzxL1+2CHd7/v6tzg+YS6XTsfsx7Y2NeidkfBS +e7hyEazIlZMiCdIsslyCNu+ykEO4fKZyPSkcuUNsBZSCYnxlTLlmXHGWumht2TuH +gcgjuUpJ/QCZcFPV9pCg3dnkNhiFRYN2yowrXaji0UsaJ5o77YaPHDZ559aEdbMv +j8Dx1sZIosq6LR2Lwlxh6T3gS4PJqutTK1rpViXtDX2boP1lxkGU08/PY05O6paq +kPTbxIL3/g67b4LxIXl2Padegir9zf/4c+ojKhHT3yD9q9JRF2cJESkKskD4qqRu +u4dJVZ0fooj8 +-----END CERTIFICATE----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-bizfx/tls.key b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-bizfx/tls.key new file mode 100644 index 0000000..9e15457 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-bizfx/tls.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEogIBAAKCAQEAx1M4i2dwtVkK1F0i/koBgijgpZDmLnr195nb2/IZZHPLPlPY +rbFAjPe23qA8HNQ8RFHuKial1B5GVfZVJ+Xxb7N1caOLyPZ2g6N0NC5jMEOxZJSv +0WZRs+gE7mIMN4P14EAuPOr8bSF7R5mdeuhfCTSgwKJNTCMtzGHrkeJas4YiawV5 +o+1bu6QvVOZiT9HYCtNrLVEiH9LikgkGiVllBorFc/nmKYZyQSd56pO1pVkAeBnP +vk9xX3N6asEoFRqjFPmyhL7UOKoQuOco9D9GqgdkNUloAvbDPyxJ4hbxPH7HadLj +xkd5trtOKF5SNZG2czOon6lkL9+t6G5zWZ6Q2wIDAQABAoIBACKkRgmEWsRJy2YJ +IdHMDuMOM6zSuA6P9DuqE9nwA5W/wiz86YWWbr+RNckPVCM2h5rgGmJdASkScery +uu4KOqHNMLYlVGAC5aoPOFzxSu/Sc/wlE0FzZPO9eU3s4G6tkof834xa0rAsx340 +Jnh79jhlWyLfkkuPOaBxzD04d8cHU+TS0W8r2o48sdd4U9O9kv3khMWJTzaNsnRX +KC7rtrRwUmDZG0VTUtNZck7VGXx+HVNd2f/SWehScsFOcZXGLKz5jCRctGTz4rvR +6Jh4efWz0g8xWBJnnXTbd4fIBIOKyt7WGozti+9+Aidm3/YLu7V34UERg2Z9tRkV +MwGW4kECgYEA/K0T/TX7OZS8+1IKY81ENiHz/00kFgdrQ0I2w80DPtE49NbuUohT ++MS2hRRLtqxNi0LVqrCvwI9DjyINSJiyCNVvbDCf0/xP7AhB/8sSPykfMg1dkcb6 +hrhwx1DBk1exdAZJB4Uuip8WrXM3uuGX5WfloHl3cIqOtVSoxiNXmrECgYEAyfJ5 +0Zz7OEQje00Gn8uRe1pjBmsesNiwD9M5UrybybG5DPUSfx86ePn8OXjXBnGov3re +s/ZJNazkYED9K1CKh+1RhUNVx7G2+cSLWWKwo2ReHA/XLPOqP2SA4mBvqCn0EJlS +5fDPu7BvabMx1+cnlTs7ilpd52s2unstSc5Z70sCgYAR83noE121yYtjj4CNdpfS +ALeE+8YEiqJkNOAPKRGB9PtG6b4kvuq4UcFl0vtODw+zRRxI9CSIWaVDFfg7oB2F +4yP3W7z/In3LFwsZUSQKuLEurSRopupFh/T7NBGMlj5VL90gW6Xi00qZKAZdkIlq +EueNbxO9OxrIZytWaExhAQKBgGoViS62szV0fdsYtGEe89aDvb8yaFXoDlzRzawL +zh6e0KHg342N3w6L65ZZR0NoU4f6yKBqwTyEDRgPK68kSRFsdkV2AMq9LWx5deZH +tJiwcct1+sfvXECe0CGbHSyOlVpe4LBP1yA2Z+BztLxA/ocjLXzZSbj2ljJR4JGD +57SPAoGAKN4Evnb6pbalphxbLMmpfFMnpIIVeEOe8M1D+4t+PYn2etahXgbL30Za +/56NlZBROLsYx16+R9NQ5xichfLPvh6lxwE+wuZwl8PbDsQW+JIVp5F7xD7yNu3w +2oi/A4wmDqeUfGo7uVH1srK4muhrLTHSb9KYCJPSK627ZUP0N80= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cd/tls.crt b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cd/tls.crt new file mode 100644 index 0000000..2386fea --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cd/tls.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIC/zCCAeegAwIBAgIUV55kUKrxUoY/+zSh/785YT7KybUwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTI1MTkyNzI4WhcNMzAwNTIzMTkyNzI4WjAYMRYwFAYDVQQDDA1jZC5nbG9iYWxo +b3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAw6Ful4XXvU4UIPk+ +iI6pXX16VW4skMAIhg4Jolwxz6/Wun33VEv7D5DvjkMrNccQJR9PEWHRB6YBhafh +aq0QOdLG0d0MtVCCrpIWZdk5mWQEfVIoWbTEuC4UAmcMl6DoRgcu7HV8Hh4LES+Z +EPqQIJpoOUCG291ZVLSQEL3EbCCsrhRgCmAxULSo3JjEkfCV3YUPz9QrN0z7qNu2 +PQG4CyiYdivPEJL1HEyfN+s5ex2pju6ovxzo3aAbwtp7Zmk3aVNOXha0xkzbzXHF +tqrIi380aftEzV5cmEpdm8cUueqZN45HO5WCEmKpy1Vyv/61uPlT8VjjA+v+2DT0 +YORNJwIDAQABozQwMjAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAYBgNVHREEETAP +gg1jZC5nbG9iYWxob3N0MA0GCSqGSIb3DQEBCwUAA4IBAQBV7l6QLZvjIeeEgCkj +7gW+12QWl1eRQ1XDjzmfaSCKbpIwjVO/KllD1dKtiPGT8Pe9AVr0PvYoVCWY9nDX +X1LXrZvYaY4d21IbcWrWNkwOaadmFbQ8FSD/2XWFgloM9zHwxXZa6z641JGLb9vS +j4bIWXJlILiKiV4KTE7m1Hr3q5wfIrQdZrmmNRtw+S5IqCMw75BdGVH0FGxxm7Fs +5Zr9P0dQBO60fb4VoyvcYXlv5wwXRiniNi+DkO/A5vjA9o3KoWsxBfdeiID2LErg +AOjoRIcvqGXmrM+8CrxmIoi33n+FQF2cau3QfnpyOziQC5uNtj5O3ePjGkJZv5EU +DOw5 +-----END CERTIFICATE----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cd/tls.key b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cd/tls.key new file mode 100644 index 0000000..eabe58c --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cd/tls.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEogIBAAKCAQEAw6Ful4XXvU4UIPk+iI6pXX16VW4skMAIhg4Jolwxz6/Wun33 +VEv7D5DvjkMrNccQJR9PEWHRB6YBhafhaq0QOdLG0d0MtVCCrpIWZdk5mWQEfVIo +WbTEuC4UAmcMl6DoRgcu7HV8Hh4LES+ZEPqQIJpoOUCG291ZVLSQEL3EbCCsrhRg +CmAxULSo3JjEkfCV3YUPz9QrN0z7qNu2PQG4CyiYdivPEJL1HEyfN+s5ex2pju6o +vxzo3aAbwtp7Zmk3aVNOXha0xkzbzXHFtqrIi380aftEzV5cmEpdm8cUueqZN45H +O5WCEmKpy1Vyv/61uPlT8VjjA+v+2DT0YORNJwIDAQABAoIBAGmCXXUXWJ3eyHho +NNPNrYagsCP3Qc3n5DD4zTVl5++NdJAsdAJg4E0q7CicDWf5rrl2w1wql2Q6okOF +ocu4/zFQfq6dO8dmXrTsUWwo1inmiY1VjDGljxuOrngFQANfYyaxpRse2gwcQ/fG +5hUELkuHO4L1TEa0gQNwRurgjlmJ6p0jYQT/m7gAQSxgy3dG5bID6qaJmRO+9kui +36uKs4OiYswH2fMjidIv0jjLysJFkbFZy0FB0DBc9Hk/ojymiouuzuxGq0+uk50U +9ThLpCpQ4NTse28YorkAilfggs+K43eRPUPTt7vlNuYeVe+8aXAo7qx9f1vf5RLA +1HzXE9ECgYEA/SKnSOn5T0D+c9D7Pf1CzeDlLWZ0TQKhFmjgCM5s6CN1llnAz1ms +LV8koRRtK1J+ylFNKry+QE+ZuX5FtaCxKCWE9OjYVSnaVTtr4+elTxcnwCONmv66 +YY2XGFd3yLrcQ6W2fzed1V+hSzK8zJ4DDWnoq7ko/STda5e4YQAl2FsCgYEAxdgv +JlVezzu0OouUUGtg3w4vAnMxmsCKvPnsYszg3f81sTFUhInEzhmXCN4qUY8D7Bjb +Lt44lJQDexC8uhhWgad8DbwudQDjxwSvX4wQUhVh54H33Zwk329v2I0T/R+BYl8Y +c9VRRRKc2Jx4LB82vBswtQsQXUdfG2UtxCrCmCUCgYAVQVaoobTkecGj+fVOxDha +zzqPMF4tpT3fgtjlBGhSqb+S62BsSMxTVvzdZbiw/ZFV7bO8FfMntUdkMv0pfh/C +Djx20CJyLDyAEahCj83qsTgOQy39yMvfqyL30Uhmm4IpT/3d+s6O/yOtC8qcp9v7 +wVvfJ4IQl4rcIPZDdt62pwKBgCV6iZwKahZ56e95R5Rgcw5uQmuFZO068k1QTv58 +b1C+qu4xOSCOdLDSWjE83OlsXULZhpP/VtqWm34xsn7SY3jWQILdljNmAsBN2+cO +wny6Pjy7+zeI/9cv5hEw0IuP71OyThCLZYTfPMUwBvfcxeKmh/iT6vqwrYykAyJ5 +MzndAoGAHlJ0gvBBrr6MkzrSd5UT0r6n6GFlmkIX9IppeQp49taeTM/SQfhhX5TD +iTYy+8+Eqf+sujUzBlYb9jE8c9WY1lkOSCRKIEBlvAxzyFNWttMRInm+L4xf3K0q +xcTcRiQjwcj9Qtk3g8YIaTrKPhjIyjP/cOdSaMAzu8ZRL9ta76k= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cm/tls.crt b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cm/tls.crt new file mode 100644 index 0000000..730006f --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cm/tls.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIC/zCCAeegAwIBAgIUV55kUKrxUoY/+zSh/785YT7KybQwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTI1MTkyNzI4WhcNMzAwNTIzMTkyNzI4WjAYMRYwFAYDVQQDDA1jbS5nbG9iYWxo +b3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5Yw49VWGUVTpKETG +WkBwp4L5c6LdvlmhJymrBNHFYC76j1P/CIVpt/mOnSgGZKb7PV+EGf36t5Ye7YCZ +KTGr6DuPojPRCEyOXZkKNtZpVZ4mrOxfCUS2tONr3xfctqrYcaCCalhAuh52p8Xg +leV0ohBqdRy9dRhi2LWOLI53DNX65ppECHV43uE9OWvR8YSnwpZJm4MHsaBr7Fmn +vIjRSQ4LLZsfHM8casY09WvlmOzM4rqJT1HoxrYWLBG41PwXJvZkPxGeRAD/rIxl +6x2UYrQ8hgeT+wbbh6Dhb9X9Dsv0GAa3iLsX7zXxknz6GGkDWXUm8SIOZazGS3Od +yY+b2QIDAQABozQwMjAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAYBgNVHREEETAP +gg1jbS5nbG9iYWxob3N0MA0GCSqGSIb3DQEBCwUAA4IBAQA5+HZWmShI1Bm43UmI +uYrxMOzvRi6JX+L22M2/vZwB031fZd6vHzzLykHX/QzjH7DPmY+wzrH4uyebmKnS +Niph6k/Q2w3f/SlY+mmuBcTVCdliuCMf0Q0mzBjHfkp1iyU2yTdJnBHqgs23gT5E +709XsRLLlm3FCnc1Mf9W/oxx6I+Sxrm4T01glwUnZZoJuOC0fbmtGEXZY7ZLtX/w +XqZtKLTiwUkrjTMt1ZUtRNHuh+NnxxMAdo8p2lKV6cPuKg3iVgAzY/gBkrT0xY6e +MHcVQ9sovzIvvw7vOOfO+9jXfpOYUwDZHm7q3cHJkVxv/Qpsa6U0evKxmVSYN+/w +SEF4 +-----END CERTIFICATE----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cm/tls.key b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cm/tls.key new file mode 100644 index 0000000..33a542b --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-cm/tls.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEA5Yw49VWGUVTpKETGWkBwp4L5c6LdvlmhJymrBNHFYC76j1P/ +CIVpt/mOnSgGZKb7PV+EGf36t5Ye7YCZKTGr6DuPojPRCEyOXZkKNtZpVZ4mrOxf +CUS2tONr3xfctqrYcaCCalhAuh52p8XgleV0ohBqdRy9dRhi2LWOLI53DNX65ppE +CHV43uE9OWvR8YSnwpZJm4MHsaBr7FmnvIjRSQ4LLZsfHM8casY09WvlmOzM4rqJ +T1HoxrYWLBG41PwXJvZkPxGeRAD/rIxl6x2UYrQ8hgeT+wbbh6Dhb9X9Dsv0GAa3 +iLsX7zXxknz6GGkDWXUm8SIOZazGS3OdyY+b2QIDAQABAoIBAQCpZtM+ErC+Yuhy +hFbRkg7RQHIxaXc1m9W3HiQMuXZs5h6ZGcbzlemQEQazai9VpnlxMIU/3VRimdIX +OjlN0k9oYlQ8wvq3oi/KWT/VemRgAAfQw9va7i/bzJ32FRkYYXq8WFUGgDy8XfD5 +HaoBVUW+uFioNt6GhMml3k6fCUBIYlgoTZsmt3eTo5dvpMX6seDjvXPHJkedkf6K +jDY7/TG4wDmn6z/XREO8AEszK50VQpwaS2uw9+gJid9bCL6E1UJWqIFBc84gZxoE +TKZoExcN8DZr4FmjKoAovnlSHsZkWd0lqYhtiXmbn6drF3dOIq+S1ebm49se8AaJ +nVeUzW4BAoGBAPScBXQwIk39jsDNUKd7UX4Jw49HP0QeRIoZ/G8j5DR2nDg/i4uS +52+8q2drZ4a/1DWaHDA1SO3YxxjvbXRW502sPDuS9MLJpAl38dLmpJ2IsDXtUSvu +R7WsRHaEgon1OYvTNTH8N5k+IkEHk62LXKV3nvj9v9tQG6TxYXqO1RWZAoGBAPA8 +prHftfNlwnNCOz5zgwAxx2XdPn5I3xTJNVrPSABDdSFFqBZT+9iyK21qDZmtEIRf +OlMhCN/SOYhCnfXnLTKkkIYgkiIU0cRtXQG2k62CsGNJ3jJ3FYC40f4Z00Dyfzut +Vl30zGq8e2xaaVIcXoL6iBpET5K4hN51sjMOEiBBAoGAe2OUsLZzJ4pHD2TCUam4 +Qu7j8guLk239Pvi6yMl/HSPTy9/qIX76NfgjMmkQcP2lK2DQ5VSLtEcMr7xfJzeL +ODgwrhCEXRngIFKb7rofwcOot5s9vf5VuAPtCSfwvWyxGaJyDAPhe/DG0Kzkxr8s +/d7ol0tRE21GdJ66gFs6i8kCgYBqEd1n2+ZyORPJ4AxYXpgQlen8R9s31uToQI6W +Mb8QnrgwoJi+gwZHfyM9g/3NRGRujb0qxwMsD53nU8J6uD90hMRq9CaRda/IkqDm +CL7bdUB8FjlM/tc3pmLRVoW3v1n992KSyWsYFXBJPwIRhwUTv5ooPtEDbwT7U+wC +LsxCAQKBgAHD6esIDWTzOr98BpGhmj9ioQE+05dvz6IqjZZTexB8gGUC3l8Jvt4x +ZtApIpO2C0Iy51yqn1ihaNEiJsIwxbp7FDQmIdS2CebKMWh1okJgZcKj5DKDN5+s +jgYVS/MDL91Vu7yWW5V4BIJhlsKvqyoqPSTXilT0/rN5AZ2bHgry +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-id/tls.crt b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-id/tls.crt new file mode 100644 index 0000000..8df3dd0 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-id/tls.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIC/zCCAeegAwIBAgIUV55kUKrxUoY/+zSh/785YT7KybMwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTI1MTkyNzI4WhcNMzAwNTIzMTkyNzI4WjAYMRYwFAYDVQQDDA1pZC5nbG9iYWxo +b3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu1X2666Tp3I17TOK +9zxVZSiI2sf9LgLQ9pndcmHm9DuvK3W753HvfwI+pythEpY/EvAKjYh6JDAHU+Cc +L1+oHg577YZZ4SoEW/kZDlssgdRHV3esdvliROSoxTnUX7mdZ40O6EHDJ8YIGCtc +eB8AXpil/EGRknFIgh1qVoETbW/YOTm+eb8O20mYwmH1/Hjqlmw/NoqnkNNiUzkn +HgtGOs7USaWIogOueD+pnGX0dPEmiXvuhb4dYxuNHAmjNCdqYf4dQWN8ThBruxmg +t3PJ7B875gl0S6KNdwCX/6+mYTlOF6LH/mkkNFRXoSDZ4REeDOsXesqBD7l2NShG +G4tOLwIDAQABozQwMjAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAYBgNVHREEETAP +gg1pZC5nbG9iYWxob3N0MA0GCSqGSIb3DQEBCwUAA4IBAQBxKdiB/dYIX161txWV +DtyHEpZT2WA90hRQvbYV5yZQZSs+HE1O3LGdGr2cJyaxIHBnb8R0DA4J36K5SZx9 +VhmuTqhTOLW4lPqizh0FOS/bwaVjY6MzRHNsNB5cdKZAV0IKsjeK4zmygfaCfUsN ++EDQP+OcDVBwSvT62OJ5DFciUm8Y4amrDyKpOB+cf/dZ5TMtq6LnQ40HtpXINHnQ +Iu3NctLHt0sG4QGldymkynAQCVWg1IxWKVwPNHY9++TAd2z6Jy5qx2yCBWO1VTxE +hsmUu1+IlPM6z4szha0kn2otWupIcIVusyhzTXt6BOi10VSr0Kbv0bB46chGSdWO +pGLZ +-----END CERTIFICATE----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-id/tls.key b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-id/tls.key new file mode 100644 index 0000000..22427ed --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-id/tls.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEogIBAAKCAQEAu1X2666Tp3I17TOK9zxVZSiI2sf9LgLQ9pndcmHm9DuvK3W7 +53HvfwI+pythEpY/EvAKjYh6JDAHU+CcL1+oHg577YZZ4SoEW/kZDlssgdRHV3es +dvliROSoxTnUX7mdZ40O6EHDJ8YIGCtceB8AXpil/EGRknFIgh1qVoETbW/YOTm+ +eb8O20mYwmH1/Hjqlmw/NoqnkNNiUzknHgtGOs7USaWIogOueD+pnGX0dPEmiXvu +hb4dYxuNHAmjNCdqYf4dQWN8ThBruxmgt3PJ7B875gl0S6KNdwCX/6+mYTlOF6LH +/mkkNFRXoSDZ4REeDOsXesqBD7l2NShGG4tOLwIDAQABAoIBAH8xidpRiP0q5YRs +95CQDWcGk40ANl2UGe8lXx63bEktcOzwHimxySuSCZoVMO6exqqEApZAMLX7Si5g +FYtwxkPKD8ig7MudbKJJygJeUyS/TcUMgzOwdVFTc2edsR1heIcDVjjJ1cheg8Zt +QnZojiasPB6/Iiis888sS7P6JYeqPD4K/2Zyoh6JfwEMijWEKP9jIXy58xKqaACI +uFI5ukQGS0foNOLi/dF4UTGdqohcgyBmETD7gX44DJ05KTJWN38O62Dxawawd++T +02YBV4yDVpd81O3NwdP9MUim7ECCq4qdPo4BouknhMGnEiSFZp9SBAp7gAVUaar7 +cdA790kCgYEA4edLYxaRtvhHLWWTy/9BPcNIEd4O91e3/9i5AgsJqWdPnUBAw16a +R7YU1D1q/Exhcjq+qgQsGPolILN3prWemPLGuHxSKsyk+rvgC50fFp+jzl0sWkSA +x65/grLa7a9OBNH9t3hZx9n9ERQBbel4nkrfc5N3pTzKG4L2b3Dp5QMCgYEA1EtF +894ZiCNJUBtDBAYBmQxCIQXqoOAxvlcUaUpLU1MiVuElsB0xphwp7qI5ehyK661G +VYkKLnernxHOvk+Uic+x8hqG3LQaPjCysulAeA2conzwzFgzuAvJqfmh/YYUhluc +mcJM9fECSLyKpS9gJUpjBgKP22BOSDP5gppH/GUCgYBJMHezPc+t+RiOc7eDw0pu +6UMDTu+IYWoiwSOHru3NbcRUjUmuQos3qp1q+g8ceN6ldLTrPnjPCtRWmO6uG2+r +3BRYFydD6JOXDKGVAa3d1ZDrvjIteL5Ec5uqS6o0kbR0SVirRZnI7y5XhyTDaH4E +wvtMZb3A0kYkzbRr/Kg64wKBgAeDDludvUuK7BowjMOEruPKgkCG5BGDPV9d13QO +U/ID3BA08U91CP+2uWkfRmdiwSuruvRl3/1a8LC1QZqMWFY0Cjjl5WXD3bXbpUcd +Z9GXsbYyM5cXe+UETcN8+NVuvCUw8q6iKHT/bTRDr6g+r+lB45Uf3BVIKBz38dlE +Ok3dAoGANOqcctgPDCUb7znmIgcLp3BhxPWd+REmwKM2jFWSVeH6m8VyjxLV0Nxr +orR1rmWZVtgzsm2m8OrkuJV0ybKpMuMSypL1KhXhHbbXrRK1Ozjh2N23NaX4fLLK +NiHE/7pIin5N7ejugvcmjl+fsAHa08jCXaMbbgLz9oYFCme8TSg= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-minions/tls.crt b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-minions/tls.crt new file mode 100644 index 0000000..054b959 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-minions/tls.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDCTCCAfGgAwIBAgIUV55kUKrxUoY/+zSh/785YT7KybgwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTI1MTkyNzI5WhcNMzAwNTIzMTkyNzI5WjAdMRswGQYDVQQDDBJtaW5pb25zLmds +b2JhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDCtN0hUquY +pt8Q8p46RQPJFDqL34GIU/I4fCkkbozgMPNL6esmxOZtfR6cAKkLW0+LA1xHYM6E +UJ5dDmMm4u4yTahEDaBi7OIFX0p1L7NTS4LOpeesXYvCU/hDmnjIOdrPx930iZIC +zEhCcDKGGTP10HoD3G7W12pqAeIghwQtZfRV08shJPu3PSvp+87BrCEpXPmxfhL+ +UiwvUmYVT0IEkZxAoX1C+UwR3qdkys/rDNcNeYRQX1Im4rmYUzM287kG1xfQ/EOO +JePmXoHDMlYA/12TgmfCBPx3qaBLHyuCZKbyYylwtw80OqTRJs0clpkD5KzpTZGt +38y+hQsx9YWPAgMBAAGjOTA3MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgXgMB0GA1Ud +EQQWMBSCEm1pbmlvbnMuZ2xvYmFsaG9zdDANBgkqhkiG9w0BAQsFAAOCAQEAciab +Zx2NrFNJVuxTX9MsvOoH7aUFX2+mRmoHq6YUjCXGsiXJaZuqgGx90nY0Tv+YwO/a +EiTSxF+Eg+3luym3f8iax+27Y11Xwwi/1dhen1bqXolo4+uKUpdiag+7/fwXfunc +w6KJ0W+oNeyiNRPY+n7uezlH2tUaP0m6HDsI3Ufcin+DpFamgYqqcqSKcAwzOspA +rMT3GgWlds+tKe928/AGAnJBGLpUrik4MoARtcl3lKyL4UWqVB14y8+hECfh7gtX +ycIQCcpqJd99rXQevSHteeMQMiYGWblC/++rZklHmAdGbTyC/FXnfjRiWk93V/Zg +GcoeNYP6bNExbZg4jw== +-----END CERTIFICATE----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-minions/tls.key b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-minions/tls.key new file mode 100644 index 0000000..7d164f1 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-minions/tls.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpQIBAAKCAQEAwrTdIVKrmKbfEPKeOkUDyRQ6i9+BiFPyOHwpJG6M4DDzS+nr +JsTmbX0enACpC1tPiwNcR2DOhFCeXQ5jJuLuMk2oRA2gYuziBV9KdS+zU0uCzqXn +rF2LwlP4Q5p4yDnaz8fd9ImSAsxIQnAyhhkz9dB6A9xu1tdqagHiIIcELWX0VdPL +IST7tz0r6fvOwawhKVz5sX4S/lIsL1JmFU9CBJGcQKF9QvlMEd6nZMrP6wzXDXmE +UF9SJuK5mFMzNvO5BtcX0PxDjiXj5l6BwzJWAP9dk4JnwgT8d6mgSx8rgmSm8mMp +cLcPNDqk0SbNHJaZA+Ss6U2Rrd/MvoULMfWFjwIDAQABAoIBAQCY/1pMFxQz7dyX +Cq7/BsBEv5qJ0uWMZLqPXDFQKXaVrKFh47weSNbw7kKhP3uWKvhEOi3HAPEG0/q9 +ENMk+WlHKfKxFywS0CWDJy/xCbyWFV4CWCfGL/Pkjesl5DpIy/1/DIUC5R9RB4k4 +e8WXzjIgVOOsKQkH1VoPVs+D09SafoYQx3+SJONFfJImkvFD4zEDIC0GehySxh6I +akSOEpmIk59cX4gBc8gLpzbyPA7I3dUire6NEcTSJvRL1WC4WIJFUuSpLjrlNil0 +XrZ75gvms2vgbSIZypwS6ynW9oWmF/Xi1C2FicZiKkNTs+oRbTDxvV0/vxxHwQZ3 +K7KgAt3BAoGBAOWJo4obUGoRbknU9mXGt8t74afxY3cy/uflHoGSpnK4k5wZw64I +AwiCMTpDLSMlFv3E1f5pi5WOCBIx52aysgl1cei1OoeofKXHcvbSYjvi4R1a2XO2 +AbcGxSso4FtrpaCMFMDd5eisRfUcdErFm0dKEIIynyoLw9v6mS4rlaVRAoGBANkn +QCtrmILr6TEbP9nKIFgSd88bhrG44RCeMJtdSofMD55NJi+0MokehQ7plkXbj8DD +jtjkxHngNb3TW9GypoGETjzWkKY3Ug6I+2BV6Wz2NDC2XQCy266uSfP5kf7iJ3yy +eP+0jdzPee7wIA1+PzPJFqKSCGQUYKZEl3SnYUTfAoGBAOEkYi6in/uJ4V2174Dg +q4KBnlL2aBORB4o5p/R7/ZtlBBQHCXJ4FVGRMevt3CYuySBco3GJ4QnuaGhAXrLS +7+JrOjGBIUnSr4CD43XJ4eTPovMCG2xtx7zYfSjaTUYejjStceXDQTE5WN0U7dQx +gx8nvI2YTZoWNCRe50TsJzohAoGBAIPP7IauwBuwYZNaTA7CP5HWW/1OYxtb8tno +e+7C2SvG9TAM+oH4ariK2w+rQHlVBlRnID2N16l3LIf2VQTb4XA6xFbvk0whxmBm +S9g1LgTjCdkLyTZUWz8UMnWy5ykFVBzAJOxqR7ZiBkzAW2R1Xp3rkR7Lb+Z37Bbh +CeJYe5WXAoGAA2ZcEKzXP4OrWnuxonx6CpItFFDOFI+M7XjPBqkPWmrcfyb0o0+M +bgkwfG2n7XZ8mQZkKOh8C7U0V5gCQEdHxa1I1D7VQ5bRrUDh8Bgk6q8GTc9lRYAR +U1qXk8DYa1E3MGkb2KQIsEuHMdEuTYlj3bDv1tbtxAf1WB0+xSOTFl0= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-ops/tls.crt b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-ops/tls.crt new file mode 100644 index 0000000..feecd9d --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-ops/tls.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDATCCAemgAwIBAgIUV55kUKrxUoY/+zSh/785YT7KybkwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTI1MTkyNzI5WhcNMzAwNTIzMTkyNzI5WjAZMRcwFQYDVQQDDA5vcHMuZ2xvYmFs +aG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK0bKwo6uyL8msgO +8r4F4Jx28MIC5MDpE8TeVFy0l5TmnrbDherF6L2akzdmpVYfidPTrw1Ctmcnn6eP +PlHaLZjUyEXcaJb/CITpq2eji/vcCeAN2eFDlamyx76sIuKlCpdozkn+mAojkF81 +96bBu+uv52gnvz7ibwdeot62hKdveRzWr4jXKZf9g3fgArtYNmAXf/t2S5Kdi0Ei +J8D7XooXaNLhtgXRpfCbTfRXVfTqbvAPXOkLfzqCQrgNQJlBrG3mTLQ061UfhduT +NpKTh9PohsVQpzqUYbGLaalja1i5OHqRm9deRQvPXv1KMNMaOMmhZgU355A+Wjxj +ix6akjECAwEAAaM1MDMwCQYDVR0TBAIwADALBgNVHQ8EBAMCBeAwGQYDVR0RBBIw +EIIOb3BzLmdsb2JhbGhvc3QwDQYJKoZIhvcNAQELBQADggEBABSjyNKCxE3ttcld +Pe5ISDvD39Vv+8Kqy9uDONHza2ZNIgIGom/8+uaREYzy6vfhdBgCk3KGmtAKENE4 +zRy0YhaXkbtXZtBCeaJbKt9+qSgeFXSeRHqp7KC2OWPKqBbsSyYkVzPvwA1WFNue +/J2WVKhEzAeM9mu/Ls+EuoKAZNWDjwyrV5bwBMydHWsJzYAzmiJSp6bwyIDVBZVO +l68R805QTEK4iz7u3nXnSGO4W+80k0n2nXE/ZfXmxDq+s6NgFEoNx+pI1Kq6ICT4 +1DY6u+1QLnb2fo+dxoQ7JBItHD8pLQDn2NbVCAgaOoc9sKNX4ckMi8VXvwD6/Mud +0FQGG0U= +-----END CERTIFICATE----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-ops/tls.key b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-ops/tls.key new file mode 100644 index 0000000..d509a0a --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-ops/tls.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEArRsrCjq7IvyayA7yvgXgnHbwwgLkwOkTxN5UXLSXlOaetsOF +6sXovZqTN2alVh+J09OvDUK2Zyefp48+UdotmNTIRdxolv8IhOmrZ6OL+9wJ4A3Z +4UOVqbLHvqwi4qUKl2jOSf6YCiOQXzX3psG766/naCe/PuJvB16i3raEp295HNav +iNcpl/2Dd+ACu1g2YBd/+3ZLkp2LQSInwPteihdo0uG2BdGl8JtN9FdV9Opu8A9c +6Qt/OoJCuA1AmUGsbeZMtDTrVR+F25M2kpOH0+iGxVCnOpRhsYtpqWNrWLk4epGb +115FC89e/Uow0xo4yaFmBTfnkD5aPGOLHpqSMQIDAQABAoIBAQCeoavyZtnA+Q16 +UcB/BHHN0G1WzUIFylGUck2K2u+hwykkwM6C07QxtGo+NbFD2Aj89hqPo1f19ein +q2vnpHFugWe6JX4vCS0sZ9nsUoJgXkcqbGcCuGV5Kl1DTQl2+tlW4PNR+Z4ohGiz +54e36Aemtv7vgqUOIoCulznXsBimOc2/EV8ZgNPCK0B+IFpECQdjSdzcKfkUpXDq +GXoHnBOGtvhvkLs2FlBitwuEz9upcoqGCqgxDMtwYrjkIcN+52g+1c6XmS7DoQhj +kp+c/kfw5gpM0GVj5xBRZR/jrJputBfYVoNRnkkJS5nGpMVUupNgS/klxSYsP9+F +f57uByvVAoGBAN3XxynDmpo9MNjtUAIrNZQ9Ko2fgp6fWlbnKUTqVx5R7GNYNx/9 +zYGFSIQ0NqKr2iTW52/R6qlZPWKrWWftIWDHupMhXUD4UQ3XLrfUW7okrgDCXYG+ +JXj/c/ej6GSe8y78kyZ4TVz5ZydvVeISgteiOlFIDBcRvkkciryBVE7TAoGBAMfC +Xkg+jzpiOZPWQju8Kre87tAn5Kp2ZlN5izMqxtU4VzhHXFwFqk0jz9gARAbh7tlu +OFCdfGuDnDGYF3Gq6n37Jm3MshWu6N8TfZ4/6sYjjjXpzk/x2W9iRsWjRIywnYBj +M6/vVO00tKZSY/RGsHxiUa5HjkXJcO5qpY5J5+BrAoGAOGd/jP/d1C+QtucHu7Vu +xwUSR7XxyRDtMEFP/eSzR9M+jjfEtE6crLzNpkd8SLn3GfzGFWlDB9HXyLmWXtUs +8mV166jFBBreyO0YRMcql1ZyI2FH0xAciPoyaxlyofrEDANOCq71xJjpAF7PcE6S +k+78cuQlpsvtHLu0Dp+3Zt8CgYBdOJ+3JzrADEbCbyLJra5hwJHSIkvcIRTvr7D+ +V+AicQCDCwpXB23KQgQk0Trt21ITthQhytzdb7XcjxWhvhlgYWw1oWkaJV4XfIkK +6NkvTjh3gHz/YeYOzNYqNV8wKNvXpnPgjtgbOpVzaM+sl7CU220y38HNX4yMNsi7 +9lF3sQKBgH8eo8R8yWMzzhppDyTQPBfSufNDWQa9kZSubZVIu0Z6HqtIwfR8s1ZY +porgj1x5HD0S1QpK053D0zYXopEwu/t+nEw65LatIELvOLD8xXHpi6W5vO3S/eBl +eo4tPemyE4TePBSRkUHTFiZG4RazFUOcdy/oYaVmOsRp7sNytp/W +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-shops/tls.crt b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-shops/tls.crt new file mode 100644 index 0000000..f44dd22 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-shops/tls.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDBTCCAe2gAwIBAgIUV55kUKrxUoY/+zSh/785YT7KybowDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTI1MTkyNzI5WhcNMzAwNTIzMTkyNzI5WjAbMRkwFwYDVQQDDBBzaG9wcy5nbG9i +YWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6bmMuIXZ95TI +bH9DU3KyPhsl2UxNN8NKKDFR1AL5HnOAlIrEXoahe8BKc0scA2hC3SrwBNdUywRV +DxnHbsBrX1j0ez4UEYt51AMKQ0mNdhBPIbMOnELiyD/RPbYIwMVlm6UKA/u72Bhf +lHGaZZ0Uv3b2j1uLWxASmA9VD5sQHxOBOXg43tgL/1su/zg3S76Z94h5fgxPet57 +AZJ/eDNkMaEwzYmeICrVjvCrUqS+1b+ES+rhI3CEVUn5IbmSRZ/gfa0bivDC9tNv +nCi0zq6//t/iKKmmuMKexo4bscc3kXj6EbtKjp0Dq9Y6xErOFAJ4l3SoHqDqbJTP +mdEd1+UA3QIDAQABozcwNTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAbBgNVHREE +FDASghBzaG9wcy5nbG9iYWxob3N0MA0GCSqGSIb3DQEBCwUAA4IBAQAYj/qeO5XS +4yv1F1Rn+JBvphhp7HO+cT5C+uOgxd7tUEMHqXQrj7U/vKc2nd/oDeVExd6E93Oj +c6gNnT4PKBpB+5PgOHSjl+dhz0XSXA8RGwX5uI65mIhP8EpRAua5LGQimMdjuE7n +DdclGyhnK9cDz3OpD+I50RefQ70aWDjqqS4yzQYph2mcIFiR0HcvXExGN7b3QK9D +QTQY794dthfBpAfof4dQH8MtLFbbMzffzVm4vALEoahW/zEu0U9ajhUjVx8qcWCH +bvCnuBX99IUBDz3EId14QVsD391BeMUrRvWkGOQqSrPYNAymoVjNTm0j7XOEIGYV +fa7EVYSq7U3M +-----END CERTIFICATE----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-shops/tls.key b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-shops/tls.key new file mode 100644 index 0000000..3f9606c --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/tls/global-shops/tls.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpQIBAAKCAQEA6bmMuIXZ95TIbH9DU3KyPhsl2UxNN8NKKDFR1AL5HnOAlIrE +Xoahe8BKc0scA2hC3SrwBNdUywRVDxnHbsBrX1j0ez4UEYt51AMKQ0mNdhBPIbMO +nELiyD/RPbYIwMVlm6UKA/u72BhflHGaZZ0Uv3b2j1uLWxASmA9VD5sQHxOBOXg4 +3tgL/1su/zg3S76Z94h5fgxPet57AZJ/eDNkMaEwzYmeICrVjvCrUqS+1b+ES+rh +I3CEVUn5IbmSRZ/gfa0bivDC9tNvnCi0zq6//t/iKKmmuMKexo4bscc3kXj6EbtK +jp0Dq9Y6xErOFAJ4l3SoHqDqbJTPmdEd1+UA3QIDAQABAoIBADWfeIWtUADZhdI+ +sHeozPQqzlg4hU7R42WtSxTVScqOvWVXIQ5+3PXDfFFPXjH57b1IaKDztmSNreY1 +B+iFBR1vD0hnSbtswJq/x88ARRBdVYppxmRbhCRlX+BEr2Vq5JD9IHshektt7B/m +oIHHtEbpSFBDtIlD+sAgZGecL+qw4plV+hMQ7pEvhlQVk1yrsWMLO7uq5rYjXLSo +ZgwhAzYiP+64Jm1PpJ4aIObmrXCypiNlsZagSmosYQjlP0Yrv3dojQ5YzzqsDjtX +7wzSVu7WM3LrYEyl6itVZ72Sec/RAqK9jSNV5GHBjc2KNqx2QU7EIdHok9LEp/fg +BUMQ7ZECgYEA/V5uCknsfllzcnvEUIYMx5LXYxL89WJATHsNGClU5CSQi0m578rI +iKIYA1eKFWasNspex30dPnprgn2IYQKq33cG/dSK3rw9aml5ve8C/88RRCF4KRxb +6a1v/PaV0Z+Utc7cYhptNTi66P1gwT0l2JO5zbL9XZ16LJ/i7cbH54cCgYEA7Cbl +nt29SI4rcHLnwSQaDYdHElnI9fd8A3vg0fLgsNPVXI9RvRZJAFjyjWcw7QC/JaF9 +k9JJuH+zBu4udyU2bF76fPCGwi+iMgUnVIC2G0nwfmi8tPp7blFPX9r1nTSnIuUW +5BSEqvlOIceYUpl8KSg1bdRFz35B4rY8a0Ob5XsCgYEA5TuwV4K2g0IvH183KJt/ +qHkEglDFqMVx40BZgoiyk485b6wOnBNeB7CQBUYIWoCAQzopMlfSQ5rC9lbZMtwU ++QVZwAGyev7YmhQ/30YF8qfHuVqGurs7tVoDvlzjA7tb8nnsDp5WPBbNlMrZ5TuL +qD1Pl/nfHfnCdelaiUKVzrUCgYEAgM76onvqef/qG8zhMo1hlI18K7tDjT5vq2rP +h1UGUA1LrNAT0qKsMP9TVeO6YRvuJzV9zLqAMZ2d5iLWv3BRzizETo/XwWW//66l +9Ea8jgf3oMu6WrDh0JuTQwKoxBXrMHJq2P+EGcogXvaC1FMZ0U04T27goTwJ7gJe +1FctWq8CgYEA0wmjzFlB+67VRQTCbbjkBRM13kQFxhhTgC2l/4FrLM1ZvOsAvjkE +ES5A+T+Mel+mVUb01jWj3RYZrEGVAlRgDQV+y71Sb5BHtoA8vaG6eZax97IbA5b6 +Jru4OR4nvMU4A6zWxcx1J5kzH5bsZnIeJwFG/4+YEzwsCpzl0yQ6ApE= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-currency.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-currency.txt new file mode 100644 index 0000000..11d6bf5 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-currency.txt @@ -0,0 +1 @@ +USD \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-language.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-language.txt new file mode 100644 index 0000000..2c4c454 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-language.txt @@ -0,0 +1 @@ +en \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-shopname.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-shopname.txt new file mode 100644 index 0000000..fd834bf --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-bizfx-shopname.txt @@ -0,0 +1 @@ +CommerceEngineDefaultStorefront \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-clientid.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-clientid.txt new file mode 100644 index 0000000..2187f07 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-clientid.txt @@ -0,0 +1 @@ +CommerceEngineConnect \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-clientsecret.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-clientsecret.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-redis-connection-string.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-redis-connection-string.txt new file mode 100644 index 0000000..108c777 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-connect-redis-connection-string.txt @@ -0,0 +1 @@ +redis:6379,defaultDatabase=1,allowAdmin=true,syncTimeout=3600000 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreeenvironment.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreeenvironment.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreemerchantid.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreemerchantid.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreeprivatekey.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreeprivatekey.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreepublickey.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-engine-braintreepublickey.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-redis-connection-string.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-redis-connection-string.txt new file mode 100644 index 0000000..15a10e5 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-redis-connection-string.txt @@ -0,0 +1 @@ +redis:6379,ssl=False,abortConnect=False \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-solr-connection-string.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-solr-connection-string.txt new file mode 100644 index 0000000..0f57f1c --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xc/commerce-solr-connection-string.txt @@ -0,0 +1 @@ +http://solr:8983/solr \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-adminpassword.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-adminpassword.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-adminpassword.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-collection-shardmapmanager-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-collection-shardmapmanager-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-collection-shardmapmanager-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-collection-shardmapmanager-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-collection-shardmapmanager-database-username.txt new file mode 100644 index 0000000..44946c8 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-collection-shardmapmanager-database-username.txt @@ -0,0 +1 @@ +shardmapmanageruser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-core-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-core-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-core-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-core-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-core-database-username.txt new file mode 100644 index 0000000..1a01ffc --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-core-database-username.txt @@ -0,0 +1 @@ +coreuser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-database-elastic-pool-name.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-database-elastic-pool-name.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databasepassword.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databasepassword.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databasepassword.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databaseservername.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databaseservername.txt new file mode 100644 index 0000000..a5faf70 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databaseservername.txt @@ -0,0 +1 @@ +mssql \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databaseusername.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databaseusername.txt new file mode 100644 index 0000000..0107e44 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-databaseusername.txt @@ -0,0 +1 @@ +sa \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-exm-master-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-exm-master-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-exm-master-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-exm-master-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-exm-master-database-username.txt new file mode 100644 index 0000000..6b4a10e --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-exm-master-database-username.txt @@ -0,0 +1 @@ +exmmasteruser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-forms-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-forms-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-forms-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-forms-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-forms-database-username.txt new file mode 100644 index 0000000..2af6196 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-forms-database-username.txt @@ -0,0 +1 @@ +formsuser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-identitycertificate.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-identitycertificate.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-identitycertificatepassword.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-identitycertificatepassword.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-identitysecret.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-identitysecret.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-license.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-license.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-marketing-automation-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-marketing-automation-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-marketing-automation-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-marketing-automation-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-marketing-automation-database-username.txt new file mode 100644 index 0000000..0d2f9dc --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-marketing-automation-database-username.txt @@ -0,0 +1 @@ +mauser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-master-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-master-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-master-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-master-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-master-database-username.txt new file mode 100644 index 0000000..92db714 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-master-database-username.txt @@ -0,0 +1 @@ +masteruser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-messaging-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-messaging-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-messaging-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-messaging-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-messaging-database-username.txt new file mode 100644 index 0000000..627db56 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-messaging-database-username.txt @@ -0,0 +1 @@ +messaginguser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-storage-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-storage-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-storage-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-storage-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-storage-database-username.txt new file mode 100644 index 0000000..0447fe0 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-storage-database-username.txt @@ -0,0 +1 @@ +processingenginestorageuser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-tasks-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-tasks-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-tasks-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-tasks-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-tasks-database-username.txt new file mode 100644 index 0000000..09ab54b --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-engine-tasks-database-username.txt @@ -0,0 +1 @@ +processingenginetasksuser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-pools-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-pools-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-pools-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-pools-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-pools-database-username.txt new file mode 100644 index 0000000..afa6719 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-pools-database-username.txt @@ -0,0 +1 @@ +processingpoolsuser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-tasks-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-tasks-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-tasks-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-tasks-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-tasks-database-username.txt new file mode 100644 index 0000000..8731b1d --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-processing-tasks-database-username.txt @@ -0,0 +1 @@ +processingtasksuser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-redis-connection-string.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-redis-connection-string.txt new file mode 100644 index 0000000..15a10e5 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-redis-connection-string.txt @@ -0,0 +1 @@ +redis:6379,ssl=False,abortConnect=False \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reference-data-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reference-data-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reference-data-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reference-data-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reference-data-database-username.txt new file mode 100644 index 0000000..eec4367 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reference-data-database-username.txt @@ -0,0 +1 @@ +refdatauser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reporting-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reporting-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reporting-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reporting-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reporting-database-username.txt new file mode 100644 index 0000000..68515d5 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reporting-database-username.txt @@ -0,0 +1 @@ +reportinguser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reportingapikey.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reportingapikey.txt new file mode 100644 index 0000000..55c80f2 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-reportingapikey.txt @@ -0,0 +1 @@ +00112233445566778899AABBCCDDEEFF \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-solr-connection-string-xdb.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-solr-connection-string-xdb.txt new file mode 100644 index 0000000..eea97d7 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-solr-connection-string-xdb.txt @@ -0,0 +1 @@ +http://solr:8983/solr/sitecore_xdb;solrCloud=true \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-solr-connection-string.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-solr-connection-string.txt new file mode 100644 index 0000000..223d335 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-solr-connection-string.txt @@ -0,0 +1 @@ +http://solr:8983/solr;solrCloud=true \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-telerikencryptionkey.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-telerikencryptionkey.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-web-database-password.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-web-database-password.txt new file mode 100644 index 0000000..1cbe6f4 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-web-database-password.txt @@ -0,0 +1 @@ +Password12345 \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-web-database-username.txt b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-web-database-username.txt new file mode 100644 index 0000000..134ed9d --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/secrets/xp/sitecore-web-database-username.txt @@ -0,0 +1 @@ +webuser \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/storage/platform-config-storage.yaml b/sxc/10.0/k8s-commerce-xc1/storage/platform-config-storage.yaml new file mode 100644 index 0000000..9ab8d5a --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/storage/platform-config-storage.yaml @@ -0,0 +1,14 @@ +apiVersion: storage.k8s.io/v1 +kind: StorageClass +metadata: + name: platform-config-storage +provisioner: kubernetes.io/azure-file +mountOptions: + - dir_mode=0777 + - file_mode=0777 + - uid=0 + - gid=0 + - mfsymlinks + - cache=strict +parameters: + skuName: Standard_LRS \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/xdbautomation.yaml b/sxc/10.0/k8s-commerce-xc1/xdbautomation.yaml new file mode 100644 index 0000000..3689841 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/xdbautomation.yaml @@ -0,0 +1,114 @@ +apiVersion: v1 +kind: Service +metadata: + name: xdbautomation +spec: + selector: + app: xdbautomation + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: xdbautomation + labels: + app: xdbautomation +spec: + replicas: 1 + selector: + matchLabels: + app: xdbautomation + template: + metadata: + labels: + app: xdbautomation + spec: + nodeSelector: + kubernetes.io/os: windows + initContainers: + - name: wait-xdbcollection + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbcollection/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-xdbsearch + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbsearch/healthz/ready).StatusCode -eq 200} catch { $false }));"] + containers: + - name: sitecore-xc1-xdbautomation + image: {registry}/{sxc-project}/sitecore-xc1-xdbautomation:{commerce-version} + ports: + - containerPort: 80 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Marketing_Automation_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-username.txt + - name: Marketing_Automation_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-password.txt + - name: Messaging_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-username.txt + - name: Messaging_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-password.txt + - name: Reference_Data_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-username.txt + - name: Reference_Data_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Messaging + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Messaging;User ID=$(Messaging_Database_Username);Password=$(Messaging_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Marketingautomation + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Marketingautomation;User ID=$(Marketing_Automation_Database_Username);Password=$(Marketing_Automation_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Referencedata + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Referencedata;User ID=$(Reference_Data_Database_Username);Password=$(Reference_Data_Database_Password); + - name: Sitecore_ConnectionStrings_XConnect.Collection + value: http://xdbcollection + - name: Sitecore_ConnectionStrings_XConnect.Search + value: http://xdbsearch + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/xdbautomationrpt.yaml b/sxc/10.0/k8s-commerce-xc1/xdbautomationrpt.yaml new file mode 100644 index 0000000..8f21e32 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/xdbautomationrpt.yaml @@ -0,0 +1,91 @@ +apiVersion: v1 +kind: Service +metadata: + name: xdbautomationrpt +spec: + selector: + app: xdbautomationrpt + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: xdbautomationrpt + labels: + app: xdbautomationrpt +spec: + replicas: 1 + selector: + matchLabels: + app: xdbautomationrpt + template: + metadata: + labels: + app: xdbautomationrpt + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xp1-xdbautomationrpt + image: {registry}/{project}/sitecore-xp1-xdbautomationrpt:{version} + ports: + - containerPort: 80 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Marketing_Automation_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-username.txt + - name: Marketing_Automation_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-password.txt + - name: Reference_Data_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-username.txt + - name: Reference_Data_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Xdb.Marketingautomation + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Marketingautomation;User ID=$(Marketing_Automation_Database_Username);Password=$(Marketing_Automation_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Referencedata + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Referencedata;User ID=$(Reference_Data_Database_Username);Password=$(Reference_Data_Database_Password); + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/xdbautomationworker.yaml b/sxc/10.0/k8s-commerce-xc1/xdbautomationworker.yaml new file mode 100644 index 0000000..7d80f22 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/xdbautomationworker.yaml @@ -0,0 +1,108 @@ +apiVersion: v1 +kind: Service +metadata: + name: xdbautomationworker +spec: + selector: + app: xdbautomationworker + ports: + - protocol: TCP + port: 8080 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: xdbautomationworker + labels: + app: xdbautomationworker +spec: + replicas: 1 + selector: + matchLabels: + app: xdbautomationworker + template: + metadata: + labels: + app: xdbautomationworker + spec: + nodeSelector: + kubernetes.io/os: windows + initContainers: + - name: wait-xdbcollection + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbcollection/healthz/ready).StatusCode -eq 200} catch { $false }));"] + - name: wait-xdbsearch + image: mcr.microsoft.com/powershell:lts-nanoserver-1809 + command: ["pwsh", "-Command", "do { Start-Sleep -Seconds 3 } until ($(try {(iwr http://xdbsearch/healthz/ready).StatusCode -eq 200} catch { $false }));"] + containers: + - name: sitecore-xc1-xdbautomationworker + image: {registry}/{sxc-project}/sitecore-xc1-xdbautomationworker:{commerce-version} + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Messaging_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-username.txt + - name: Messaging_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-password.txt + - name: Marketing_Automation_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-username.txt + - name: Marketing_Automation_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-password.txt + - name: Reference_Data_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-username.txt + - name: Reference_Data_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_XConnect.Collection + value: http://xdbcollection + - name: Sitecore_ConnectionStrings_XConnect.Search + value: http://xdbsearch + - name: Sitecore_ConnectionStrings_Xdb.Marketingautomation + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Marketingautomation;User ID=$(Marketing_Automation_Database_Username);Password=$(Marketing_Automation_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Referencedata + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Referencedata;User ID=$(Reference_Data_Database_Username);Password=$(Reference_Data_Database_Password); + - name: Sitecore_ConnectionStrings_Messaging + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Messaging;User ID=$(Messaging_Database_Username);Password=$(Messaging_Database_Password); + livenessProbe: + exec: + command: + - curl + - http://localhost:8080/healthz/live + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + exec: + command: + - curl + - http://localhost:8080/healthz/ready + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/xdbcollection.yaml b/sxc/10.0/k8s-commerce-xc1/xdbcollection.yaml new file mode 100644 index 0000000..6ef4f1d --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/xdbcollection.yaml @@ -0,0 +1,115 @@ +apiVersion: v1 +kind: Service +metadata: + name: xdbcollection +spec: + selector: + app: xdbcollection + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: xdbcollection + labels: + app: xdbcollection +spec: + replicas: 1 + selector: + matchLabels: + app: xdbcollection + template: + metadata: + labels: + app: xdbcollection + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xc1-xdbcollection + image: {registry}/{sxc-project}/sitecore-xc1-xdbcollection:{commerce-version} + ports: + - containerPort: 80 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Messaging_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-username.txt + - name: Messaging_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-password.txt + - name: Marketing_Automation_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-username.txt + - name: Marketing_Automation_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-password.txt + - name: Collection_ShardMapManager_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-collection-shardmapmanager-database-username.txt + - name: Collection_ShardMapManager_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-collection-shardmapmanager-database-password.txt + - name: Processing_Pools_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-pools-database-username.txt + - name: Processing_Pools_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-pools-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Messaging + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Messaging;User ID=$(Messaging_Database_Username);Password=$(Messaging_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Marketingautomation + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Marketingautomation;User ID=$(Marketing_Automation_Database_Username);Password=$(Marketing_Automation_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Processing.Pools + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Processing.pools;User ID=$(Processing_Pools_Database_Username);Password=$(Processing_Pools_Database_Password); + - name: Sitecore_ConnectionStrings_Collection + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Xdb.Collection.ShardMapManager;User ID=$(Collection_ShardMapManager_Database_Username);Password=$(Collection_ShardMapManager_Database_Password); + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/xdbrefdata.yaml b/sxc/10.0/k8s-commerce-xc1/xdbrefdata.yaml new file mode 100644 index 0000000..c25d655 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/xdbrefdata.yaml @@ -0,0 +1,79 @@ +apiVersion: v1 +kind: Service +metadata: + name: xdbrefdata +spec: + selector: + app: xdbrefdata + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: xdbrefdata + labels: + app: xdbrefdata +spec: + replicas: 1 + selector: + matchLabels: + app: xdbrefdata + template: + metadata: + labels: + app: xdbrefdata + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xp1-xdbrefdata + image: {registry}/{project}/sitecore-xp1-xdbrefdata:{version} + ports: + - containerPort: 80 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Reference_Data_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-username.txt + - name: Reference_Data_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-reference-data-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Xdb.Referencedata + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Referencedata;User ID=$(Reference_Data_Database_Username);Password=$(Reference_Data_Database_Password); + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/xdbsearch.yaml b/sxc/10.0/k8s-commerce-xc1/xdbsearch.yaml new file mode 100644 index 0000000..1658370 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/xdbsearch.yaml @@ -0,0 +1,124 @@ +apiVersion: v1 +kind: Service +metadata: + name: xdbsearch +spec: + selector: + app: xdbsearch + ports: + - protocol: TCP + port: 80 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: xdbsearch + labels: + app: xdbsearch +spec: + replicas: 1 + selector: + matchLabels: + app: xdbsearch + template: + metadata: + labels: + app: xdbsearch + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xc1-xdbsearch + image: {registry}/{sxc-project}/sitecore-xc1-xdbsearch:{commerce-version} + ports: + - containerPort: 80 + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Messaging_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-username.txt + - name: Messaging_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-messaging-database-password.txt + - name: Marketing_Automation_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-username.txt + - name: Marketing_Automation_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-marketing-automation-database-password.txt + - name: Collection_ShardMapManager_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-collection-shardmapmanager-database-username.txt + - name: Collection_ShardMapManager_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-collection-shardmapmanager-database-password.txt + - name: Processing_Pools_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-pools-database-username.txt + - name: Processing_Pools_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-processing-pools-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Messaging + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Messaging;User ID=$(Messaging_Database_Username);Password=$(Messaging_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Marketingautomation + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Marketingautomation;User ID=$(Marketing_Automation_Database_Username);Password=$(Marketing_Automation_Database_Password); + - name: Sitecore_ConnectionStrings_Xdb.Processing.Pools + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Processing.pools;User ID=$(Processing_Pools_Database_Username);Password=$(Processing_Pools_Database_Password); + - name: Sitecore_ConnectionStrings_Collection + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Xdb.Collection.ShardMapManager;User ID=$(Collection_ShardMapManager_Database_Username);Password=$(Collection_ShardMapManager_Database_Password); + - name: Sitecore_ConnectionStrings_SolrCore + valueFrom: + secretKeyRef: + name: sitecore-solr-xdb + key: sitecore-solr-connection-string-xdb.txt + - name: Sitecore_Sitecore__XConnect__CollectionSearch__Services__Solr.SolrReaderSettings__Options__RequireHttps + value: 'false' + - name: Sitecore_Sitecore__XConnect__CollectionSearch__Services__XConnectSolrHealthCheckServicesConfiguration__Options__RequireHttps + value: 'false' + livenessProbe: + httpGet: + path: /healthz/live + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Liveness + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + httpGet: + path: /healthz/ready + port: 80 + httpHeaders: + - name: X-Kubernetes-Probe + value: Startup + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/k8s-commerce-xc1/xdbsearchworker.yaml b/sxc/10.0/k8s-commerce-xc1/xdbsearchworker.yaml new file mode 100644 index 0000000..c5716a5 --- /dev/null +++ b/sxc/10.0/k8s-commerce-xc1/xdbsearchworker.yaml @@ -0,0 +1,84 @@ +apiVersion: v1 +kind: Service +metadata: + name: xdbsearchworker +spec: + selector: + app: xdbsearchworker + ports: + - protocol: TCP + port: 8080 +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: xdbsearchworker + labels: + app: xdbsearchworker +spec: + replicas: 1 + selector: + matchLabels: + app: xdbsearchworker + template: + metadata: + labels: + app: xdbsearchworker + spec: + nodeSelector: + kubernetes.io/os: windows + containers: + - name: sitecore-xc1-xdbsearchworker + image: {registry}/{sxc-project}/sitecore-xc1-xdbsearchworker:{commerce-version} + env: + - name: Database_Server + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-databaseservername.txt + - name: Collection_ShardMapManager_Database_Username + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-collection-shardmapmanager-database-username.txt + - name: Collection_ShardMapManager_Database_Password + valueFrom: + secretKeyRef: + name: sitecore-database + key: sitecore-collection-shardmapmanager-database-password.txt + - name: Sitecore_License + valueFrom: + secretKeyRef: + name: sitecore-license + key: sitecore-license.txt + - name: Sitecore_ConnectionStrings_Collection + value: Data Source=$(Database_Server);Initial Catalog=Sitecore.Xdb.Collection.ShardMapManager;User ID=$(Collection_ShardMapManager_Database_Username);Password=$(Collection_ShardMapManager_Database_Password); + - name: Sitecore_ConnectionStrings_SolrCore + valueFrom: + secretKeyRef: + name: sitecore-solr-xdb + key: sitecore-solr-connection-string-xdb.txt + - name: Sitecore_Sitecore__XConnect__SearchIndexer__Services__Solr.SolrReaderSettings__Options__RequireHttps + value: 'false' + - name: Sitecore_Sitecore__XConnect__SearchIndexer__Services__Solr.SolrWriterSettings__Options__RequireHttps + value: 'false' + - name: Sitecore_Sitecore__XConnect__CollectionSearch__Services__XConnectSolrHealthCheckServicesConfiguration__Options__RequireHttps + value: 'false' + livenessProbe: + exec: + command: + - curl + - http://localhost:8080/healthz/live + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 3 + startupProbe: + exec: + command: + - curl + - http://localhost:8080/healthz/ready + timeoutSeconds: 300 + periodSeconds: 30 + failureThreshold: 10 + imagePullSecrets: + - name: sitecore-docker-registry \ No newline at end of file diff --git a/sxc/10.0/scripts/CleanContainerCache.ps1 b/sxc/10.0/scripts/CleanContainerCache.ps1 new file mode 100644 index 0000000..957c320 --- /dev/null +++ b/sxc/10.0/scripts/CleanContainerCache.ps1 @@ -0,0 +1,65 @@ +<# +.SYNOPSIS +Cleans the container images cache on a Windows machine. Presumes the default location of Docker Desktop installation. + +.DESCRIPTION +Cleans the container images cache on a Windows machine. Presumes the default installation location of C:\ProgramData\docker\windowsfilter\ +for Docker Desktop cache. + +No parameters required. + +.EXAMPLE +CleanContainerCache.ps1 +#> + +#Swallow all the errors +function CleanCache { + Invoke-Command -Script { + $ErrorActionPreference="silentlycontinue" + & docker rmi $allImages --force 2>&1 > $null | Out-Null + } -ErrorAction SilentlyContinue | Out-Null -ErrorAction SilentlyContinue +} + +Write-Host "=======================CACHE INFO============================" +Write-host "Count of images:"((& docker image ls -a | measure).Count -1) +Write-Host "Count of cache directories:"(Get-ChildItem -path C:\ProgramData\docker\windowsfilter\ -force | measure).Count +Write-Host "Diskspace used:" +& docker system df +Write-Host "=============================================================`n" + +Write-Host "==============STOPPING RUNNING CONTAINERS====================" +$runningContainers = docker ps -a -q +if ($null -ne $runningContainers){ + & docker stop $runningContainers + & docker rm $runningContainers +} +Write-Host "============================================================`n" + +Write-Host "=====================CLEANING CACHE=========================" +$allImages = docker images -a -q +if ($null -ne $allImages){ + #Try/catch to swallow the writes to stderr, if there are errors, + #write warnings + try { + & docker images -a -q + CleanCache + } catch { + Write-Warning "Warnings: `n" + Format-list * -InputObject $_ -Force + } finally { + Write-Host "Finished" + } +} +Write-Host "=============================================================`n" + +Write-Host "======================PRUNING SYSTEM=========================" +Write-Host 'docker system prune -a -f' +docker system prune -a -f +Write-Host "=============================================================" + +Write-Host "=======================CACHE INFO============================" +Write-host "Count of images:"((docker image ls -a | measure).Count -1) +Write-Host "Count of cache directories:"(Get-ChildItem -path C:\ProgramData\docker\windowsfilter\ -force | measure).Count +Write-Host "Diskspace used:" +docker system df +Write-Host "=============================================================" diff --git a/sxc/10.0/scripts/ContainerBuild.ps1 b/sxc/10.0/scripts/ContainerBuild.ps1 new file mode 100644 index 0000000..ec9672e --- /dev/null +++ b/sxc/10.0/scripts/ContainerBuild.ps1 @@ -0,0 +1,50 @@ +[cmdletbinding()] +param( + [string]$envRootPath = (Join-Path $PWD "..") +) +<# +.SYNOPSIS +Script to facilitate the creation of container images via docker-compose build. The artifacts produced are ImageName:latest, +where ImageName comes from the docker-compose.build.yml files. + +.PARAMETER envRootPath +The path to the parent (root) directory containing the .env files. If C:\download\XC\xc0 and C:\download\XC\xc1 +contain .env files, then the envRootPath is C:\download\XC. Changes are performed in place +Default path is ../ + +.EXAMPLE +ContainerBuild.ps1 -envRootPath (Join-Path $PWD "..") +#> + +if (!(Get-Module -Name "powershell-yaml" -ListAvailable)){ + $r = Get-PSRepository + Install-Module -Name "powershell-yaml" -Repository $r.name -Force +} + +Get-ChildItem -Path "$envRootPath" -Include 'docker-compose.build.yml' -Recurse | + ForEach-Object { + $workingDir = Split-Path $_.FullName -Parent + Push-Location -Path $workingDir + #xc1-cxa depends on content that is built in xc-common. So it cannot be 'pulled' from a registry + #when building the sample container images. Of course if you are using your own pre-build images then + #you would not need to manipulate the docker-compose.build.yml to force a tag of 'latest' from the images + if($workingDir.Contains("cxa")) { + Write-Host "Make a copy of the CXA build yaml for build time" + Copy-Item -Path '.\docker-compose.build.yml' -Destination '.\docker-compose.build.yml.bck' -Force -Verbose + Copy-Item -Path '.\commerce.build.yml' -Destination '.\docker-compose.build.yml' -Force -Verbose + } + '[Building containers for] {0}' -f $PWD + Write-Host "docker-compose --no-ansi --file (Join-Path $workingDir 'docker-compose.build.yml') build --parallel" + & docker-compose --no-ansi -f (Join-Path $workingDir 'docker-compose.build.yml') build --parallel + + if ($LASTEXITCODE -gt 0) { + Throw "Error in docker-compose build." + } + + if($workingDir.Contains("cxa")) { + Write-Host "-------> Return CXA build yaml to release default" + Copy-Item -Path '.\docker-compose.build.yml.bck' -Destination '.\docker-compose.build.yml' -Force -Verbose + Remove-Item -Path '.\docker-compose.build.yml.bck' -Force -Verbose + } + Pop-Location + } diff --git a/sxc/10.0/scripts/ContainerTag.ps1 b/sxc/10.0/scripts/ContainerTag.ps1 new file mode 100644 index 0000000..018d1d2 --- /dev/null +++ b/sxc/10.0/scripts/ContainerTag.ps1 @@ -0,0 +1,74 @@ +[cmdletbinding()] +param( + [string]$envRootPath = (Join-Path $PWD ".."), + [Parameter(Mandatory)] + [string]$tag, + [switch]$keepSourceTag +) + +<# +.SYNOPSIS +Script to facilitate the tagging of container images via docker-compose build. + +.PARAMETER envRootPath +The path to the parent (root) directory containing the .env files. If C:\download\XC\xc0 and C:\download\XC\xc1 +contain .env files, then the envRootPath is C:\download\XC. Changes are performed in place +Default path is ../ + +.PARAMETER tag +[Parameter(Mandatory)] +This is the tag for your docker container image. Typically it includes: +Repository -> ideftdevacr.azurecr.io +Namespace -> experimental +Image Name -> sitecore-xc-engine, found in the build yml files +Version -> 10.0.0.60234.10194-pbi-422197-0035-10.0.17763.1282-ltsc2019, a version identifier. This can be anything you like + Be aware that there can only ever be one. If you have a version 10.0.0-ltsc2019 then this will only ever point to one + 'container'. If you tag another container image with 10.0.0-ltsc2019, the old one is lost. + +.PARAMETER keepSourceTag +A degug switch to prevent the removal of the 'latest' tag allowing for multiple runs with out rebuilding the container images. + +.EXAMPLE +ContainerTag.ps1 -envRootPath (Join-Path $PWD "..") ` + -tag "ideftdevacr.azurecr.io/experimental/sitecore-xc-engine:10.0.0.60234.10194-pbi-422197-0035-10.0.17763.1282-ltsc2019" +#> + +if (!(Get-Module -Name "powershell-yaml" -ListAvailable)){ + $r = Get-PSRepository + Install-Module -Name "powershell-yaml" -Repository $r.name -Force +} + +$ymlFiles = Get-ChildItem -Path "$envRootPath" -Include 'docker-compose.build.yml' -Recurse +ForEach ($ymlFile in $ymlFiles ) { + $workingDir = Split-Path $ymlFile.FullName -Parent + Push-Location -Path $workingDir + $buildYaml = Get-Content $ymlFile.FullName | Out-String | ConvertFrom-Yaml + foreach ($service in $buildYaml.services.values) { + $dockerRepository = $service.image + + Write-Host "Docker Repository: $dockerRepository" -InformationAction Continue + + $sourceTag = "$($dockerRepository):latest" + foreach ($tag in $tags) { + Write-Host "Tagging: $sourceTag with $tag" -InformationAction Continue + & docker image tag $sourceTag $tag + + if ($LASTEXITCODE -gt 0){ + Throw "Error in docker.exe tagging." + } + } + + if ($keepSourceTag) { + Write-Host "Keeping Tag: $sourceTag" -InformationAction Continue + } else { + Write-Host "Removing Tag: $sourceTag" -InformationAction Continue + & docker rmi $sourceTag + + if ($LASTEXITCODE -gt 0){ + Throw "Error removing docker tag." + } + } + } + + Pop-Location +} diff --git a/sxc/10.0/scripts/FakeLicenseFile.txt b/sxc/10.0/scripts/FakeLicenseFile.txt new file mode 100644 index 0000000..3accd2e --- /dev/null +++ b/sxc/10.0/scripts/FakeLicenseFile.txt @@ -0,0 +1 @@ +ThisIsAFakeLicense \ No newline at end of file diff --git a/sxc/10.0/scripts/PrepContainerBuild.ps1 b/sxc/10.0/scripts/PrepContainerBuild.ps1 new file mode 100644 index 0000000..2d0ec41 --- /dev/null +++ b/sxc/10.0/scripts/PrepContainerBuild.ps1 @@ -0,0 +1,134 @@ +[cmdletbinding()] +param( + + [string]$jsonFile = (Join-Path '.' 'WDPMapping.json'), + [string]$releaseZipPath = '.' +) +<# +.SYNOPSIS +Uses Commerce Release artifacts to prepare the environment for building container images based on XP and XC container images. + +.DESCRIPTION +Takes the Sitecore Commerce release zip artifacts and expands the contents in to the structure expected by the Sitecore XC container Docker files. + +.PARAMETER jsonFile +Path to the WDPMapping.json file that maps the WDP file content needed build a specific container image. + +.PARAMETER releaseZipPath +Path to the Sitecore XC release zip files downloaded from dev.sitecore.net. Both the Azure and WDP release files are required. + +.EXAMPLE +PrepContainerbuild.ps1 + +Expands the release zip files in to the respective container directories. Presumes the WDPMapping.json and release zip files are located +in the same directory as this script. + +.EXAMPLE +PrepContainerbuild.ps1 -jsonFile 'C:\src\Commerce.Containers' -releaseZipPath 'C:\src\Commerce.Containers\downloads' + +Expands the release zip files in to the respective container directories. The WDPMapping.json is located in C:\src\Commerce.Containers +and release zip files are located in the C:\src\Commerce.Containers\downloads directory. +#> + +#Check for the json file +if (Test-Path("$jsonFile")) +{ + #Create the tmpDir + $tmpDir = (Join-Path $PSScriptRoot 'tmp') + if (!(Test-Path $tmpDir)){ + New-Item -Path $tmpDir -ItemType Directory | Out-Null + } else { + Remove-Item -Path $tmpDir -Recurse -Force + New-Item -Path $tmpDir -ItemType Directory | Out-Null + } + + #Find the release zip archives and expand them into the tmpDir + $releaseFound = 0 + $releaseZips = Get-ChildItem -Path $releaseZipPath -Filter "Sitecore.Commerce.*.zip" -Recurse + foreach ($rZip in $releaseZips) { + if ($rZip.Name -match '(.*WDP\.\d\d\d\d.*|.*Azure\.\d\d\d\d.*)') { + Expand-Archive -Path $rZip.Fullname -DestinationPath $tmpDir -Force + $releaseFound += 1 + } + } + + if ($releaseFound -lt 2) { + Throw 'Missing one or more Sitecore XC release zip files.' + } + + $json = Get-Content "$jsonFile" | ConvertFrom-Json + foreach ($j in $json) { + Write-Host "Processing" $j.DestinationFolder + + if((!($j | Get-Member "ToCopyFolder")) -and (!($j | Get-Member "ToCopyFiles"))) { + Throw "There is no information on what content to copy to $j.DestinationFolder" + } + + #Create a folder to hold the contents of the WDP files that will be copied in to the container image via the Dockerfile + $destinationFolder = Join-Path (Resolve-Path -Path "$PSScriptRoot\..") $j.DestinationFolder + if (!(Test-Path $destinationFolder)){ + New-Item -Path $destinationFolder -ItemType Directory | Out-Null + } else { + Remove-Item -Path $destinationFolder -Recurse -Force + New-Item -Path $destinationFolder -ItemType Directory | Out-Null + } + + #Expand the wdp(s) and copy the contents to the destination directory + foreach($wdp in $j.WDPs) + { + #first look for *.scwdp' files with the required WDP name, then if not found a non-scwdp file. + $wFile = $wdp + '*.scwdp.zip' + $wdpFile = Get-ChildItem -Path $tmpDir -Filter $wFile -Recurse | Sort-Object | Select-Object -First 1 + if (!$wdpFile) { + $wFile = $wdp + '*.zip' + $wdpFile = Get-ChildItem -Path $tmpDir -Filter $wFile -Recurse | Sort-Object | Select-Object -First 1 + } + + #WDP file found + if (Test-Path $wdpFile.FullName) { + $expandFolder = (Join-Path (Join-Path (Split-Path -Path $wdpfile.FullName -Parent) "$($wdpfile.BaseName)") "wdp") + Write-Host "Expanding" $wdpfile.FullName "to" $expandFolder -ForegroundColor Yellow + Expand-Archive -Path $wdpfile.FullName -DestinationPath $expandFolder -Force + + #Determine what to copy where either a directory recursively or a specific set of files + if($j | Get-Member "ToCopyFolder") { + Write-Host -Message ("Copying folder {0}\{1} to {2}" -f $expandFolder, $j.ToCopyFolder, $destinationFolder) -ForegroundColor Yellow + Copy-Item -Path (Join-Path (Join-Path $expandFolder $j.ToCopyFolder) "*") -Destination $destinationFolder -Recurse -Force + } + + if($j | Get-Member "ToCopyFiles"){ + Write-Host -Message ("Copying files {0}\{1} to {2}" -f $expandFolder, $j.ToCopyFiles, $destinationFolder) -ForegroundColor Yellow + $files = Get-ChildItem -Path (Join-Path $expandFolder "/*") -Filter $j.ToCopyFiles -Recurse + + $nameMappings = ConvertTo-Json @() + if($j | Get-Member "NameMappings"){ + $nameMappings = $j.NameMappings + } + + foreach ($file in $files) { + $fileName = $($file.BaseName) + $nameMapping = $nameMappings | Where-Object { $_.Name -eq $($file.BaseName) } + if($nameMapping -ne $null -and $nameMapping.NewName -ne ""){ + $fileName = $($nameMapping.NewName) + } + + $fileNameExtension = $($fileName) + $($file.Extension) + $fileDFolder = (Join-Path $destinationFolder $wdp) + if(!(Test-Path $fileDFolder)){ + New-Item -Path $fileDFolder -ItemType Directory + } + + $fileDPath = Join-Path $fileDFolder $fileNameExtension + Write-Host -Message ("Copying file {0} to {1}" -f $file, $fileDPath) + Copy-Item -Path (Join-Path $expandFolder $file) -Destination $fileDPath -Force + } + } + } else { + throw "No Matching WDP file found: $wdp" + } + } + } +} else { + throw "No JSON file" +} + diff --git a/sxc/10.0/scripts/ScriptSupport.psm1 b/sxc/10.0/scripts/ScriptSupport.psm1 new file mode 100644 index 0000000..ebec106 --- /dev/null +++ b/sxc/10.0/scripts/ScriptSupport.psm1 @@ -0,0 +1,68 @@ +Function ConvertToCompressedBase64String { + Param ( + [Parameter(Mandatory)] + [ValidateScript( { + if (-Not ($_ | Test-Path) ) { throw "The file or folder $_ does not exist" } + if (-Not ($_ | Test-Path -PathType Leaf) ) { throw "The Path argument must be a file. Folder paths are not allowed." } + return $true + })] + [string] $Path + ) + + $fileBytes = [System.IO.File]::ReadAllBytes($Path) + + [System.IO.MemoryStream] $memoryStream = New-Object System.IO.MemoryStream + + $gzipStream = New-Object System.IO.Compression.GzipStream $memoryStream, ([IO.Compression.CompressionMode]::Compress) + $gzipStream.Write($fileBytes, 0, $fileBytes.Length) + + $gzipStream.Close() + $memoryStream.Close() + $gzipStream.Dispose() + $memoryStream.Dispose() + + return [Convert]::ToBase64String($memoryStream.ToArray()) +} + +Function GenerateRandomString { + param( + [int] $length, + [switch] $disallowSpecialCharacters + ) + + $chars = @() + $chars += ('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z') + $chars += ('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z') + $chars += ('1', '2', '3', '4', '5', '6', '7', '8', '9', '0') + + if (-not $disallowSpecialCharacters) { + $chars += ('~', '!', '@', '#', '$', '%', '^', '&', '*', '_', '-', '+', '=', [char]0x60, '|', '\', '(', ')', '{', '}', '[', ']', ':', ';', '<', '>', '.', '?', '/') + } + + $generatedString = "" + + for ($i = 1; $i -le $length; $i++) { + $generatedString += Get-Random $chars + } + + return $generatedString +} + +Function Confirm-VolumeFoldersExist { + param ( + [string] $Path + ) + Write-Host "Verifying Folders for Commerce Engine volumes exist in [$Path]" + + "cm\domains-shared", + "cd\domains-shared", + "engine\catalogs", + "mssql-data", + "solr-data" | + ForEach-Object { + if (-Not (Test-Path (Join-Path $Path $_))) { + Write-Verbose "Creating folder [$_]" + New-Item -Path $Path -Name $_ -ItemType Directory + } + } +} diff --git a/sxc/10.0/scripts/UpdateEnvCompose.ps1 b/sxc/10.0/scripts/UpdateEnvCompose.ps1 new file mode 100644 index 0000000..0e18a53 --- /dev/null +++ b/sxc/10.0/scripts/UpdateEnvCompose.ps1 @@ -0,0 +1,133 @@ +[cmdletbinding()] +param( + [string] $envRootPath = (Join-Path $PWD ".."), + [Parameter(Mandatory)] + [string] $braintreeEnvironment, + [Parameter(Mandatory)] + [string] $braintreeMerchantId, + [Parameter(Mandatory)] + [string] $braintreePublicKey, + [Parameter(Mandatory)] + [string] $braintreePrivateKey, + [Parameter(Mandatory)] + [string] $idCert, + [Parameter(Mandatory)] + [string] $licenseFilePath, + [Parameter(Mandatory)] + [string]$telerikKey, + [Parameter(Mandatory)] + [string]$idSecret, + [Parameter(Mandatory)] + [string]$xcIdSecret, + [Parameter(Mandatory)] + [string]$idPassword, + [Parameter(Mandatory)] + [string]$reportingApiKey, + [ValidateSet("default", "process", "hyperv")] + [string]$isolation = "default" +) +<# +.SYNOPSIS +Script to facilitate the updating of the .env files for use in a docker-compose up and docker-compose build. + +.PARAMETER envRootPath +The path to the parent (root) directory containg the .env files. If C:\download\XC\xc0 and C:\download\XC\xc1 +contain .env files, then the envRootPath is C:\download\XC. Changes are performed in place +Default path is .. + +.PARAMETER braintreeEnvironment +[Parameter(Mandatory)] +The Braintree environment. E.G. sandbox or production + +.PARAMETER braintreeMerchantId +[Parameter(Mandatory)] +Your merchant ID for the Braintreepayment provider. + +.PARAMETER braintreePublicKey +[Parameter(Mandatory)] +The public key associated to your Braintree account. + +.PARAMETER braintreePrivateKey +[Parameter(Mandatory)] +The private key associated to your Braintree account. + +.PARAMETER idCert +[Parameter(Mandatory)] +Identity Server certificate used to encryptdata. + +.PARAMETER licenseFilePath +[Parameter(Mandatory)] +Sitecore license file content converted to GZIP Compressed and Base64 encoded string. + +.PARAMETER telerikKey +[Parameter(Mandatory)] +Symmetric key used by the Telerik web controls. Length: 64-128 characters + +.PARAMETER idSecret +[Parameter(Mandatory)] +Shared secret between the Identity Server and client roles. Length: 64 characters + +.PARAMETER xcIdSecret +[Parameter(Mandatory)] +The client ID assigned to Commerce Engine Connect for Sitecore Identity. This ID is used to identify the Commerce Engine Connect with Commerce Engine. + +.PARAMETER idPassword +[Parameter(Mandatory)] +Password required to open the Identity Server certificate. + +.PARAMETER reportingApiKey +[Parameter(Mandatory)] +Symetric key used to access the Sitecore XDB Reporting Web API. Length: 64-128 characters + +.PARAMETER isolation +[ValidateSet("default", "process", "hyperv")] +Choose the isolation method. default will use the default method determiend by the OS, process will force process isolation, hyperv will force hyperv isolation. To improve performance it is recommened to use "process" as isolation method for Windows 10 as default is hyperv. + +.EXAMPLE +PS> UpdateEnvCompose.ps1 -envRootPath (Join-Path $PWD "..") ` + -licenseFile "Location of your licence file" ` + -braintreeEnvironment "sandbox" ` + -braintreeMerchantId "Your merchant id" ` + -braintreePublicKey "Your public key" ` + -braintreePrivateKey "Your private key" ` + -telerikKey "Your Telerik Encryption Key" ` + -idCert "Your Sitecore Identity certificate" ` + -idSecret "Your Sitecore Identity secret" ` + -idPassword "Your Sitecore Identity password" ` + -xcIdSecret "Your XC Connect Client Secret" ` + -reportingApiKey "Your Sitecore Reporting API key" +#> + +Import-Module (Join-Path $PSScriptRoot "ScriptSupport") -DisableNameChecking -Global + +$license = ConvertToCompressedBase64String -Path $licenseFilePath + +#Find all the .env files and updated them +Get-ChildItem -Path $envRootPath -Include '*.env' -Recurse | ` +ForEach-Object { + Write-Host "Updating [$_] file ..." + + $envContent = Get-Content -Path $_ + $envContent = $envContent -replace "SITECORE_LICENSE=.*", "SITECORE_LICENSE=$license" + $envContent = $envContent -replace "SITECORE_IDSECRET=.*", "SITECORE_IDSECRET=$idSecret" + $envContent = $envContent -replace "SITECORE_ID_CERTIFICATE=.*", "SITECORE_ID_CERTIFICATE=$idCert" + $envContent = $envContent -replace "SITECORE_ID_CERTIFICATE_PASSWORD=.*", "SITECORE_ID_CERTIFICATE_PASSWORD=$idPassword" + $envContent = $envContent -replace "TELERIK_ENCRYPTION_KEY=.*", "TELERIK_ENCRYPTION_KEY=$telerikKey" + $envContent = $envContent -replace "REPORTING_API_KEY=.*", "REPORTING_API_KEY=$reportingApiKey" + $envContent = $envContent -replace "XC_IDENTITY_COMMERCEENGINECONNECTCLIENT_CLIENTSECRET1=.*", "XC_IDENTITY_COMMERCEENGINECONNECTCLIENT_CLIENTSECRET1=$xcIdSecret" + $envContent = $envContent -replace "XC_ENGINE_BRAINTREEENVIRONMENT=.*", "XC_ENGINE_BRAINTREEENVIRONMENT=$braintreeEnvironment" + $envContent = $envContent -replace "XC_ENGINE_BRAINTREEMERCHANTID=.*", "XC_ENGINE_BRAINTREEMERCHANTID=$braintreeMerchantId" + $envContent = $envContent -replace "XC_ENGINE_BRAINTREEPUBLICKEY=.*", "XC_ENGINE_BRAINTREEPUBLICKEY=$braintreePublicKey" + $envContent = $envContent -replace "XC_ENGINE_BRAINTREEPRIVATEKEY=.*", "XC_ENGINE_BRAINTREEPRIVATEKEY=$braintreePrivateKey" + + $envContent = $envContent -replace "ISOLATION=.*", "ISOLATION=$isolation" + $envContent = $envContent -replace "TRAEFIK_ISOLATION=.*", "TRAEFIK_ISOLATION=default" # There is no traefik that supports proces isolation in Windows 10 so important this stays as default and isn't overwritten by isolation above + + + Set-Content -Path $_ -Value $envContent -Force + + Write-Host ".env file [$_] has been updated" +} + +#Creates volumes folders in the host +Confirm-VolumeFoldersExist -Path "C:\containers" diff --git a/sxc/10.0/scripts/UpdateEnvTag.ps1 b/sxc/10.0/scripts/UpdateEnvTag.ps1 new file mode 100644 index 0000000..606eeb1 --- /dev/null +++ b/sxc/10.0/scripts/UpdateEnvTag.ps1 @@ -0,0 +1,96 @@ +[cmdletbinding()] +param( + [string]$jsonFile = (Join-Path '.' 'configltsc2019.json'), + [string]$envRootPath = (Join-Path $PWD ".."), + [string]$altRegistry = '', + [switch]$useLocalImages +) +<# +.SYNOPSIS +Script to facilitate updating the .env files for use in a docker-compose up and docker-compose build. + +.PARAMETER jsonFile +The path to the configltsc2019.json file. +Default path is .\configltsc2019.json + +.PARAMETER envRootPath +The path to the parent (root) directory containg the .env files. If C:\download\XC\xc0 and C:\download\XC\xc1 +contain .env files, then the envRootPath is C:\download\XC. Changes are performed in place +Default path is .. + +.PARAMETER altRegistry +Overrides the registry value from the config json +Default is null + +.PARAMETER useLocalImages +A switch to indicate whether latest local images should be used for container deployment. +If specified, XC_SITECORE_DOCKER_REGISTRY parameter will be cleared and XC_PACKAGES_TAG parameter will be set to 'latest'. + +.EXAMPLE +UpdateEnvTag.ps1 -jsonFile 'C:\download\Commerce.Containers\scripts\configltsc2019.json' ` + -envRootPath (Join-Path $PWD "..") +#> + +if (Test-Path("$jsonFile")) { + + #Read the config json that holds the values to be used to populate the environment files + $json = Get-Content $jsonFile | Out-String | ConvertFrom-Json + $containerConfigInfo = @{} + foreach( $property in $json.psobject.properties.name ) + { + $containerConfigInfo[$property] = $json.$property + } + + if ([string]::IsNullOrEmpty($altRegistry)) { + $registry = $($containerConfigInfo.scrdockerregistry) + } else { + $registry = $altRegistry + } + + Get-ChildItem -Path $envRootPath -Include '*.env' -Recurse | ` + ForEach-Object { + Write-Host "Updating [$_] file ..." + + $envContent = Get-Content -Path $_ + + if ($useLocalImages) { + $envContent = $envContent -replace "XC_SITECORE_DOCKER_REGISTRY=.*", "XC_SITECORE_DOCKER_REGISTRY=" + $envContent = $envContent -replace "XC_PACKAGES_TAG=.*", "XC_PACKAGES_TAG=latest" + } else { + $XC_SITECORE_DOCKER_REGISTRY = "XC_SITECORE_DOCKER_REGISTRY=$($registry)/$($containerConfigInfo.sxcproject)/" + $envContent = $envContent -replace "XC_SITECORE_DOCKER_REGISTRY=.*", $XC_SITECORE_DOCKER_REGISTRY + $XC_PACKAGES_TAG = "XC_PACKAGES_TAG=$($containerConfigInfo.customercommercetag)" + $envContent = $envContent -replace "XC_PACKAGES_TAG=.*", $XC_PACKAGES_TAG + } + + $BASE_SITECORE_DOCKER_REGISTRY = "BASE_SITECORE_DOCKER_REGISTRY=$($registry)/$($containerConfigInfo.baseproject)/" + $envContent = $envContent -replace "BASE_SITECORE_DOCKER_REGISTRY=.*", $BASE_SITECORE_DOCKER_REGISTRY + + $XP_SITECORE_DOCKER_REGISTRY = "XP_SITECORE_DOCKER_REGISTRY=$($registry)/$($containerConfigInfo.sxpproject)/" + $envContent = $envContent -replace "XP_SITECORE_DOCKER_REGISTRY=.*", $XP_SITECORE_DOCKER_REGISTRY + + $XP_SITECORE_TAG = "XP_SITECORE_TAG=$($containerConfigInfo.sxptag)" + $envContent = $envContent -replace "XP_SITECORE_TAG=.*", $XP_SITECORE_TAG + + $XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY = "XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY=$($registry)/$($containerConfigInfo.sxcproject)/$($containerConfigInfo.nonproductionproject)/" + $envContent = $envContent -replace "XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY=.*", $XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY + + $MODULES_SITECORE_DOCKER_REGISTRY = "MODULES_SITECORE_DOCKER_REGISTRY=$($registry)/$($containerConfigInfo.sxpproject)/$($containerConfigInfo.modulesproject)/" + $envContent = $envContent -replace "MODULES_SITECORE_DOCKER_REGISTRY=.*", $MODULES_SITECORE_DOCKER_REGISTRY + + $SPE_SITECORE_TAG = "SPE_SITECORE_TAG=$($containerConfigInfo.spetag)" + $envContent = $envContent -replace "SPE_SITECORE_TAG=.*", $SPE_SITECORE_TAG + + $SXA_SITECORE_TAG = "SXA_SITECORE_TAG=$($containerConfigInfo.sxatag)" + $envContent = $envContent -replace "SXA_SITECORE_TAG=.*", $SXA_SITECORE_TAG + + $OS_IMAGE_TAG = "OS_IMAGE_TAG=$($containerConfigInfo.OS_IMAGE_TAG)" + $envContent = $envContent -replace "OS_IMAGE_TAG=.*", $OS_IMAGE_TAG + + Set-Content -Path $_ -Value $envContent -Force + + Write-Host ".env file [$_] has been updated" + } +} else { + throw "No JSON file" +} \ No newline at end of file diff --git a/sxc/10.0/scripts/UpdateK8SYaml.ps1 b/sxc/10.0/scripts/UpdateK8SYaml.ps1 new file mode 100644 index 0000000..1b5f1f2 --- /dev/null +++ b/sxc/10.0/scripts/UpdateK8SYaml.ps1 @@ -0,0 +1,177 @@ +[cmdletbinding()] +param( + [string]$jsonFile = (Join-Path '.' 'configltsc2019.json'), + [string]$k8sRootPath = (Join-Path '..' 'k8s-commerce-*'), + [Parameter(Mandatory)] + [string] $braintreeEnvironment, + [Parameter(Mandatory)] + [string] $braintreeMerchantId, + [Parameter(Mandatory)] + [string] $braintreePublicKey, + [Parameter(Mandatory)] + [string] $braintreePrivateKey, + [Parameter(Mandatory)] + [string] $idCert, + [Parameter(Mandatory)] + [string] $licenseFilePath, + [Parameter(Mandatory)] + [string]$telerikKey, + [Parameter(Mandatory)] + [string]$idSecret, + [Parameter(Mandatory)] + [string]$xcIdSecret, + [Parameter(Mandatory)] + [string]$idPassword, + [Parameter(Mandatory)] + [string]$reportingApiKey, + [string]$altRegistry = '' +) +<# +.SYNOPSIS +Replaces the variables in the K8S(Kubernetes) yaml files with values from the config json file. K8S is only supported under LTSC 2019. + +.DESCRIPTION +Replaces the variables in the K8S(Kubernetes) yaml files with values from the config json file. K8S is only supported under LTSC 2019. + +.PARAMETER jsonFile +Path to the configltsc2019.json file that contains the yaml file content needed to populate the K8S files for use in a cluster. +Default path for the configltsc2019 json is co-located with this script + +.PARAMETER k8sRootPath +Path to the K8S yaml file templates. Changes are performed in place. +Default path is ..\k8s-commerce-* + +.PARAMETER braintreeEnvironment +[Parameter(Mandatory)] +The Braintree environment. E.G. sandbox or production + +.PARAMETER braintreeMerchantId +[Parameter(Mandatory)] +Your merchant ID for the Braintreepayment provider. + +.PARAMETER braintreePublicKey +[Parameter(Mandatory)] +The public key associated to your Braintree account. + +.PARAMETER braintreePrivateKey +[Parameter(Mandatory)] +The private key associated to your Braintree account. + +.PARAMETER idCert +[Parameter(Mandatory)] +Identity Server certificate used to encryptdata. + +.PARAMETER licenseFilePath +[Parameter(Mandatory)] +Sitecore license file content converted to GZIP Compressed and Base64 encoded string. + +.PARAMETER telerikKey +[Parameter(Mandatory)] +Symmetric key used by the Telerik web controls. Length: 64-128 characters + +.PARAMETER idSecret +[Parameter(Mandatory)] +Shared secret between the Identity Server and client roles. Length: 64 characters + +.PARAMETER xcIdSecret +[Parameter(Mandatory)] +The client ID assigned to Commerce Engine Connect for Sitecore Identity. This ID is used to identify the Commerce Engine Connectwith Commerce Engine. + +.PARAMETER idPassword +[Parameter(Mandatory)] +Password required to open the Identity Server certificate. + +.PARAMETER reportingApiKey +[Parameter(Mandatory)] +Symmetric key used to access the Sitecore XDB Reporting Web API. Length: 64-128 characters + +.PARAMETER altRegistry +Overrides the registry value from the config json +Default is null + +.EXAMPLE +UpdateK8SYaml.ps1 + +Use the defaults and replace the parameters in the yaml template files + +.EXAMPLE +UpdateK8SYaml.ps1 -jsonFile 'C:\download\Commerce.Containers\scripts\configltsc2019.json' ` + -k8sRootPath 'C:\download\Commerce.Containers' ` + -licenseFilePath "Location of your licence file" ` + -braintreeEnvironment "sandbox" ` + -braintreeMerchantId "Your merchant id" ` + -braintreePublicKey "Your public key" ` + -braintreePrivateKey "Your private key" ` + -telerikKey "Your Telerik Encryption Key" ` + -idCert "Your Sitecore Identity certificate" ` + -idSecret "Your Sitecore Identity secret" ` + -idPassword "Your Sitecore Identity password" ` + -xcIdSecret "Your XC Connect Client Secret" ` + -reportingApiKey "Your Sitecore Reporting API key" +#> + +#check for the json file +if (Test-Path("$jsonFile")) { + + Import-Module (Join-Path $PSScriptRoot "ScriptSupport") -DisableNameChecking -Global + + $license = ConvertToCompressedBase64String -Path $licenseFilePath + + #Read the config json that holds the values to be used to populate the the K8S files + $json = Get-Content $jsonFile | Out-String | ConvertFrom-Json + $containerConfigInfo = @{} + foreach( $property in $json.psobject.properties.name ) + { + $containerConfigInfo[$property] = $json.$property + } + if ([string]::IsNullOrEmpty($altRegistry)) { + $registry = $($containerConfigInfo.scrdockerregistry) + } else { + $registry = $altRegistry + } + + Get-ChildItem -Path (Join-Path $k8sRootPath "k8s-commerce-*") -Directory | ForEach-Object { + $secretsFolder = Join-Path -Path $_.FullName -ChildPath "secrets" + + Write-Host "Writing secrets for $secretsFolder\xp\sitecore-identitycertificate.txt" + Set-Content "$secretsFolder\xp\sitecore-identitycertificate.txt" -Value "$idCert" -Force -NoNewline + Write-Host "Writing secrets for $secretsFolder\xp\sitecore-identitycertificatepassword.txt" + Set-Content "$secretsFolder\xp\sitecore-identitycertificatepassword.txt" -Value "$idPassword" -Force -NoNewline + Write-Host "Writing secrets for $secretsFolder\xp\sitecore-identitysecret.txt" + Set-Content "$secretsFolder\xp\sitecore-identitysecret.txt" -Value "$idSecret" -Force -NoNewline + Write-Host "Writing secrets for $secretsFolder\xp\sitecore-license.txt" + Set-Content "$secretsFolder\xp\sitecore-license.txt" -Value "$license" -Force -NoNewline + Write-Host "Writing secrets for $secretsFolder\xp\sitecore-reportingapikey.txt" + Set-Content "$secretsFolder\xp\sitecore-reportingapikey.txt" -Value "$reportingApiKey" -Force -NoNewline + Write-Host "Writing secrets for $secretsFolder\xp\sitecore-telerikencryptionkey.txt" + Set-Content "$secretsFolder\xp\sitecore-telerikencryptionkey.txt" -Value "$telerikKey" -Force -NoNewline + Write-Host "Writing secrets for $secretsFolder\xc\commerce-connect-clientsecret.txt" + Set-Content "$secretsFolder\xc\commerce-connect-clientsecret.txt" -Value "$xcIdSecret" -Force -NoNewline + Write-Host "Writing secrets for $secretsFolder\xc\commerce-engine-braintreeenvironment.txt" + Set-Content "$secretsFolder\xc\commerce-engine-braintreeenvironment.txt" -Value "$braintreeEnvironment" -Force -NoNewline + Write-Host "Writing secrets for $secretsFolder\xc\commerce-engine-braintreemerchantid.txt" + Set-Content "$secretsFolder\xc\commerce-engine-braintreemerchantid.txt" -Value "$braintreeMerchantId" -Force -NoNewline + Write-Host "Writing secrets for $secretsFolder\xc\commerce-engine-braintreepublickey.txt" + Set-Content "$secretsFolder\xc\commerce-engine-braintreepublickey.txt" -Value "$braintreePublicKey" -Force -NoNewline + Write-Host "Writing secrets for$secretsFolder\xc\commerce-engine-braintreeprivatekey.txt" + Set-Content "$secretsFolder\xc\commerce-engine-braintreeprivatekey.txt" -Value "$braintreePrivateKey" -Force -NoNewline + + #Setup the project for the nonproduction SQL/Solr containers + $nonprod = "$($containerConfigInfo.sxpproject)/$($containerConfigInfo.nonproductionproject)" + + Get-ChildItem -Path $_.FullName -Filter "*.yaml" -Exclude 'kustomization.yaml' -Recurse | ForEach-Object { + + Write-Host $_.FullName + + (Get-Content $_.FullName -Raw) -replace "{registry}", $registry | Set-Content $_.FullName -NoNewline + (Get-Content $_.FullName -Raw) -replace "{project}", $($containerConfigInfo.sxpproject) | Set-Content $_.FullName -NoNewline + (Get-Content $_.FullName -Raw) -replace "{version}", $($containerConfigInfo.sxptag) | Set-Content $_.FullName -NoNewline + (Get-Content $_.FullName -Raw) -replace "{sxc-project}", $($containerConfigInfo.sxcproject) | Set-Content $_.FullName -NoNewline + (Get-Content $_.FullName -Raw) -replace "{commerce-version}", $($containerConfigInfo.customercommercetag) | Set-Content $_.FullName -NoNewline + (Get-Content $_.FullName -Raw) -replace "{nonproduction-project}", $nonprod | Set-Content $_.FullName -NoNewline + (Get-Content $_.FullName -Raw) -replace "{short-version-ltsc}", $($containerConfigInfo.shorttag) | Set-Content $_.FullName -NoNewline + } + } +} else { + throw "No JSON file" +} \ No newline at end of file diff --git a/sxc/10.0/scripts/WDPMapping.json b/sxc/10.0/scripts/WDPMapping.json new file mode 100644 index 0000000..8aa5ca4 --- /dev/null +++ b/sxc/10.0/scripts/WDPMapping.json @@ -0,0 +1,174 @@ +[ + { + "WDPs": [ + "Sitecore Commerce Experience Accelerator Storefront Themes", + "Sitecore Commerce Experience Accelerator Storefront", + "Sitecore Commerce Experience Accelerator" + ], + "DestinationFolder": "xc1-cxa/cd/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce Experience Accelerator Storefront Themes", + "Sitecore Commerce Experience Accelerator Storefront", + "Sitecore Commerce Experience Accelerator" + ], + "DestinationFolder": "xc1-cxa/cm/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce Experience Accelerator Habitat Catalog", + "Sitecore Commerce Experience Accelerator Storefront Themes", + "Sitecore Commerce Experience Accelerator Storefront", + "Sitecore Commerce Experience Accelerator" + ], + "DestinationFolder": "xc1-cxa/mssql/dacpacs", + "ToCopyFiles": "*.dacpac", + "NameMappings": [ + {"Name":"master", "NewName":"Sitecore.Master"}, + {"Name":"core", "NewName":"Sitecore.Core"}, + {"Name":"web", "NewName":"Sitecore.Web"} + ] + }, + { + "WDPs": [ + "Sitecore.Commerce.Engine.OnPrem.Solr" + ], + "DestinationFolder": "xc-common/engine/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore.BizFx.OnPrem" + ], + "DestinationFolder": "xc-common/bizfx/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore.Identity.Config.Commerce" + ], + "DestinationFolder": "xc-common/id/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore.Commerce.Engine.OnPrem.Solr", + "Sitecore Commerce Connect Core OnPrem", + "Sitecore Commerce Engine Connect OnPrem", + "Sitecore Commerce Marketing Automation Core OnPrem", + "Sitecore Commerce ExperienceProfile Core OnPrem", + "Sitecore Commerce ExperienceAnalytics Core OnPrem", + "Adventure Works Images.OnPrem", + "Sitecore.Commerce.Habitat.Images.OnPrem" + ], + "DestinationFolder": "xc-common/mssql/common/dacpacs", + "ToCopyFiles": "*.dacpac", + "NameMappings": [ + {"Name":"master", "NewName":"Sitecore.Master"}, + {"Name":"core", "NewName":"Sitecore.Core"}, + {"Name":"web", "NewName":"Sitecore.Web"}, + {"Name":"Sitecore.Commerce.Engine.Global.DB", "NewName":"SitecoreCommerce_Global"}, + {"Name":"Sitecore.Commerce.Engine.Shared.DB", "NewName":"SitecoreCommerce_SharedEnvironments"} + ] + }, + { + "WDPs": [ + "SolrSchemas.Sitecore.Commerce" + ], + "DestinationFolder": "xc-common/solr/wdp", + "ToCopyFolder": "" + }, + { + "WDPs": [ + "SolrSchemas.Sitecore.Commerce" + ], + "DestinationFolder": "xc-common/solr-init/wdp", + "ToCopyFolder": "" + }, + { + "WDPs": [ + "Sitecore Commerce Connect Core OnPrem", + "Sitecore Commerce Engine Connect OnPrem", + "Sitecore Commerce Marketing Automation Core OnPrem" + ], + "DestinationFolder": "xc1/cd/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce Connect Core OnPrem", + "Sitecore Commerce Engine Connect OnPrem", + "Sitecore Commerce ExperienceAnalytics Core OnPrem", + "Sitecore Commerce ExperienceProfile Core OnPrem", + "Sitecore Commerce Marketing Automation Core OnPrem" + ], + "DestinationFolder": "xc1/cm/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce ExperienceAnalytics Core" + ], + "DestinationFolder": "xc1/prcrep/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce Connect Schema Definitions for xConnect" + ], + "DestinationFolder": "xc1/xdbcollection/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce Connect Schema Definitions for IndexWorker" + ], + "DestinationFolder": "xc1/xdbsearch/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce Connect Schema Definitions for IndexWorker" + ], + "DestinationFolder": "xc-common/xdbworkers/xdbsearchworker/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce Marketing Automation for Azure" + ], + "DestinationFolder": "xc1/xdbautomation/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce Marketing Automation for Azure" + ], + "DestinationFolder": "xc-common/xdbworkers/xdbautomationworker/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce Connect Core OnPrem", + "Sitecore Commerce Engine Connect OnPrem", + "Sitecore Commerce ExperienceAnalytics Core OnPrem", + "Sitecore Commerce ExperienceProfile Core OnPrem", + "Sitecore Commerce Marketing Automation Core OnPrem", + "Sitecore Commerce ExperienceAnalytics Core" + ], + "DestinationFolder": "xc0/cm/wdp", + "ToCopyFolder": "Content/Website" + }, + { + "WDPs": [ + "Sitecore Commerce Connect Schema Definitions for xConnect", + "Sitecore Commerce Connect Schema Definitions for IndexWorker", + "Sitecore Commerce Marketing Automation for Azure" + ], + "DestinationFolder": "xc0/xconnect/wdp", + "ToCopyFolder": "Content/Website" + } +] \ No newline at end of file diff --git a/sxc/10.0/scripts/config2004.json b/sxc/10.0/scripts/config2004.json new file mode 100644 index 0000000..79c7a80 --- /dev/null +++ b/sxc/10.0/scripts/config2004.json @@ -0,0 +1,15 @@ +{ + "shorttag": "10.0.0-2004", + "sxptag": "10.0.0-2004", + "customercommercetag": "10.0.0-2004", + "spetag": "6.1.1.205-10.0.17763.1339-1809", + "sxatag": "10.0.0.3138.205-10.0.17763.1339-1809", + "scrdockerregistry": "scr.sitecore.com", + "sxpproject": "sxp", + "sxcproject": "sxc", + "baseproject": "base", + "modulesproject": "modules", + "nonproductionproject": "nonproduction", + "nonproductiontag": "10.0.0-ltsc2019", + "os_image_tag": "2004" +} diff --git a/sxc/10.0/scripts/config2009.json b/sxc/10.0/scripts/config2009.json new file mode 100644 index 0000000..4f37f6f --- /dev/null +++ b/sxc/10.0/scripts/config2009.json @@ -0,0 +1,15 @@ +{ + "shorttag": "10.0.0-2009", + "sxptag": "10.0.0-2009", + "customercommercetag": "10.0.0-2009", + "spetag": "6.1.1.205-10.0.17763.1339-1809", + "sxatag": "10.0.0.3138.205-10.0.17763.1339-1809", + "scrdockerregistry": "scr.sitecore.com", + "sxpproject": "sxp", + "sxcproject": "sxc", + "baseproject": "base", + "modulesproject": "modules", + "nonproductionproject": "nonproduction", + "nonproductiontag": "10.0.0-ltsc2019", + "os_image_tag": "2009" +} diff --git a/sxc/10.0/scripts/configltsc2019.json b/sxc/10.0/scripts/configltsc2019.json new file mode 100644 index 0000000..38f9859 --- /dev/null +++ b/sxc/10.0/scripts/configltsc2019.json @@ -0,0 +1,15 @@ +{ + "shorttag": "10.0.0-ltsc2019", + "sxptag": "10.0.0-ltsc2019", + "customercommercetag": "10.0.0-ltsc2019", + "spetag": "6.1.1.205-10.0.17763.1339-1809", + "sxatag": "10.0.0.3138.205-10.0.17763.1339-1809", + "scrdockerregistry": "scr.sitecore.com", + "sxpproject": "sxp", + "sxcproject": "sxc", + "baseproject": "base", + "modulesproject": "modules", + "nonproductionproject": "nonproduction", + "nonproductiontag": "10.0.0-ltsc2019", + "os_image_tag": "ltsc2019" +} \ No newline at end of file diff --git a/sxc/10.0/scripts/readme.md b/sxc/10.0/scripts/readme.md new file mode 100644 index 0000000..bdafe26 --- /dev/null +++ b/sxc/10.0/scripts/readme.md @@ -0,0 +1,59 @@ +# Sitecore Experience Commerce Container Scripts + +## Introduction + +This folder contains a set of scripts and json files, provided as examples, to facilitate the creation of the Sitecore Experience Commerce container images using Docker. + +## Scripts + +**CleanContainerCache.ps1** -> cleans the Docker container images cache. The container images cache is used to speed any action that requires container images to be pulling container images from a registry. Some commands that use the container images cache are: docker pull, docker-compose up, docker-compose build. When running containers in a continuous integration pipeline, you should always start from a clean environment. + +**ContainerBuild.ps1** -> builds container images based on the contents of the docker-compose.build.yml files. The results are container images with a tag of "latest". + +**ContainerTag.ps1** -> tags container images with provided tag. + +**PrepContainerBuild.ps1** -> takes the Sitecore Experience Commerce Release Package artifacts from [dev.sitecore.net](https://dev.sitecore.net) and expands them into the source code directory structure. This content will be use when calling docker-compose build to create container images. + +**UpdateEnvTag.ps1** -> sets the registry, namespace, project and tag of container images. + +**UpdateEnvCompose.ps1** -> updates a /[topology]/.env file with provided values. + +**UpdateK8SYaml.ps1** -> sets Kubernetes secrets files with values from the configltsc2019 json file. Kubernetes only supports Windows LTSC 2019 images. + +**ScriptSupport.psm1** -> contains supporting functions used by the scripts. + +## JSON Files + +**WDPMapping.json** -> used by the PrepContainerBuild.ps1. This file contains mapping information that is used to place the content of the release package artifacts in the correct location for use by the docker-compose build process. +>**NOTE:** You must list packages with similar names starting with more exclusive package name, and ending with the less exclusive package name. For example: +> ```JSON +> { +> "WDPs": [ +> "Sitecore Commerce Experience Accelerator Storefront Themes", +> "Sitecore Commerce Experience Accelerator Storefront", +> "Sitecore Commerce Experience Accelerator" +> ], +> "DestinationFolder": "xc1-cxa/cd/wdp", +> "ToCopyFolder": "Content/Website" +> } +> ``` + +**configltsc2019.json** and **config1909.json** -> are used by the update scripts UpdateEnvTag.ps1, UpdateEnvCompose.ps1 and UpdateK8SYaml.ps1 to override or replace tokens defined in the .env and yaml files. This allows to customize the files for use in the build and run processes. + +| Variable | Value | Description | +| --------------- | --------------------------- | -------------------------------------------------------------| +| shorttag | 10.0.0-ltsc201 | Short tag of the SXP container image tag you want to consume. The short tag consists of the SXP version and the operating system version. | +| sxptag | 10.0.0.004346.337-10.0.17763.1339-ltsc2019 | Long tag of the SXP container image you want to consume. Example of long tag: "10.0.0.004346.337-10.0.17763.1339-ltsc2019" -> *[XP Version].[XP Revision].[Container Build Number]-[Operating System Version].[Operating System Patch Level]-[Operating System Name]*. | +| customercommercetag | 10.0.0.60231.10194-pbi-422197-0024-10.0.17763.1282-ltsc2019 | Tag for the XC container images you built with your application. | +| spetag | 6.1.1.205-10.0.17763.1339-1809 | Sitecore Powershell Extensions container image tag. | +| sxatag | 10.0.0.3138.205-10.0.17763.1339-1809 | Sitecore Experience Accelerator container image tag. | +| scrdockerregistry | scr.sitecore.com | Sitecore Container Registry name. | +| sxpproject | platform | Sitecore Experience Platform container project name. | +| sxcproject | sxc | Sitecore Experience Commerce container project name. | +| baseproject | base | Container project name for base containers, like operating system containers from Microsoft. | +| modulesproject | modules | Container project name for Sitecore Modules, like Sitecore Experience Accelerator. | +| nonproductionproject | nonproduction | Container project name for container images that are not for production. Provided MSSQL and Solr container images are *not-production* images. It is expected that customers provide suitable MSSQL and Solr environments for production deployments. | +| nonproductiontag | 10.0.0-ltsc2019 | Image tag for non-production container images. | +| os_image_tag | ltsc2019 | Operating System name on which to build and run containers. Valid values are *ltsc2019* and *1909* | + +**FakeLicenseFile.txt** -> fake license file used as a place holder for the -licenseFilePath command-line parameter. diff --git a/sxc/10.0/xc-common/.env b/sxc/10.0/xc-common/.env new file mode 100644 index 0000000..7364048 --- /dev/null +++ b/sxc/10.0/xc-common/.env @@ -0,0 +1,5 @@ +BASE_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/base/ + +XP_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxp/ +XP_SITECORE_TAG=10.0.0-ltsc2019 +OS_IMAGE_TAG=ltsc2019 diff --git a/sxc/10.0/xc-common/bizfx/Dockerfile b/sxc/10.0/xc-common/bizfx/Dockerfile new file mode 100644 index 0000000..8a63bcc --- /dev/null +++ b/sxc/10.0/xc-common/bizfx/Dockerfile @@ -0,0 +1,34 @@ +# escape=` +# This Dockerfile is used to generate images for the following roles: bizfx + +ARG BASE_IMAGE + +FROM ${BASE_IMAGE} + +WORKDIR c:/inetpub/wwwroot + +RUN NET USER commerce_admin /ADD /expires:never && ` + WMIC USERACCOUNT WHERE Name='commerce_admin' SET PasswordExpires=FALSE && ` + NET LOCALGROUP Administrators commerce_admin /ADD + +USER commerce_admin + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY .\InstallPrerequisites.ps1 .\ +RUN .\InstallPrerequisites.ps1; + +COPY wdp/ . +COPY Init.ps1 "C:\\inetpub\\" +COPY LogMonitorConfig.json "c:\\LogMonitor\\" + +EXPOSE 80 + +HEALTHCHECK --start-period=300s ` + CMD powershell -command ` + try { ` + $response = Invoke-WebRequest http://localhost -UseBasicParsing; ` + if ($response.StatusCode -eq 200) { exit 0 } else { exit 1 }; ` + } catch { exit 1 } + +ENTRYPOINT ["C:\\LogMonitor\\LogMonitor.exe", "powershell.exe", "C:\\inetpub\\Init.ps1", "C:\\inetpub\\wwwroot\\assets\\config.json"] \ No newline at end of file diff --git a/sxc/10.0/xc-common/bizfx/Init.ps1 b/sxc/10.0/xc-common/bizfx/Init.ps1 new file mode 100644 index 0000000..9ec3b6a --- /dev/null +++ b/sxc/10.0/xc-common/bizfx/Init.ps1 @@ -0,0 +1,21 @@ +param( + [Parameter(Mandatory = $true)] + [string] $ConfigPath +) +$config = Get-Content -Path $ConfigPath | ConvertFrom-Json +$settings = @{ + "EngineUri" = $env:sitecore_xc_bizfx_authoring_url + "IdentityServerUri" = $env:sitecore_xc_bizfx_identity_server_url + "BizFxUri" = $env:sitecore_xc_bizfx_bizfx_url + "Language" = $env:sitecore_xc_bizfx_default_language + "ContentLanguage" = $env:sitecore_xc_bizfx_default_language + "Currency" = $env:sitecore_xc_bizfx_default_currency + "ShopName" = $env:sitecore_xc_bizfx_default_shopname +} +foreach ($key in $settings.Keys) { + Write-Host "Updating [$configPath] config: Set [$($settings.Item($key))] as [$key]" + $config.$key = $settings.Item($key) +} +$config | ConvertTo-Json | Set-Content $ConfigPath + +& "C:\ServiceMonitor.exe" w3svc diff --git a/sxc/10.0/xc-common/bizfx/InstallPrerequisites.ps1 b/sxc/10.0/xc-common/bizfx/InstallPrerequisites.ps1 new file mode 100644 index 0000000..0b628c1 --- /dev/null +++ b/sxc/10.0/xc-common/bizfx/InstallPrerequisites.ps1 @@ -0,0 +1,33 @@ +# delete everything from wwwroot +Write-Host "Emptying c:\inetpub\wwwroot folder" +Remove-Item -Recurse C:\inetpub\wwwroot\* + +#Install rewrite module +try { + Write-Host "Downloading rewrite module" + Invoke-WebRequest -Uri "https://download.microsoft.com/download/1/2/8/128E2E22-C1B9-44A4-BE2A-5859ED1D4592/rewrite_amd64_en-US.msi" -OutFile rewrite_amd64_en-US.msi -ErrorAction Stop; + Write-Host "Installing rewrite module" + Start-Process -NoNewWindow -Wait msiexec.exe -ArgumentList /i, "rewrite_amd64_en-US.msi", /qn +} +catch { + Write-Error "Installing rewrite module FAILED." + Write-Error Error[0] + exit(1) +} + +#install logMonitor +try { + Write-Host "Creating directory for Log Monitor" + New-Item -Path "c:\\" -Name "LogMonitor" -ItemType "directory"; ` + Write-Host "Installing Log Monitor" + Invoke-WebRequest -Uri "https://github.com/microsoft/windows-container-tools/releases/download/v1.1/LogMonitor.exe" -OutFile c:\LogMonitor\LogMonitor.exe; +} +catch { + Write-Error "Installing Log Monitor FAILED" + Write-Error Error[0] + exit(1) +} + +#remove the rewrite msi +Write-Host "Cleaning up downloaded file" +Remove-Item rewrite_amd64_en-US.msi -Recurse -Force; diff --git a/sxc/10.0/xc-common/bizfx/LogMonitorConfig.json b/sxc/10.0/xc-common/bizfx/LogMonitorConfig.json new file mode 100644 index 0000000..53373b2 --- /dev/null +++ b/sxc/10.0/xc-common/bizfx/LogMonitorConfig.json @@ -0,0 +1,23 @@ +{ + "LogConfig": { + "sources": [ + { + "type": "EventLog", + "startAtOldestRecord": false, + "eventFormatMultiLine": false, + "channels": [ + { + "name": "system", + "level": "Error" + } + ] + }, + { + "type": "File", + "directory": "c:\\inetpub\\logs", + "filter": "*.log", + "includeSubdirectories": true + } + ] + } +} \ No newline at end of file diff --git a/sxc/10.0/xc-common/cd-cm/Dockerfile b/sxc/10.0/xc-common/cd-cm/Dockerfile new file mode 100644 index 0000000..620e3f3 --- /dev/null +++ b/sxc/10.0/xc-common/cd-cm/Dockerfile @@ -0,0 +1,38 @@ +# escape=` +# This Dockerfile is used to generate images for the following roles: cd, cm + +ARG BASE_IMAGE + +FROM ${BASE_IMAGE} + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +ENV DOTNET_RUNNING_IN_CONTAINER=true + +COPY xdts c:/xdts +COPY tools c:/tools +COPY Permissions c:/Permissions + +WORKDIR c:/inetpub/wwwroot + +COPY Content/Website/ wdp/ ./ + +ADD https://dist.nuget.org/win-x86-commandline/v5.2.0/nuget.exe c:\tools + +RUN New-Item -Path C:\inetpub\wwwroot\App_Config -Name Security-Shared -ItemType directory; ` + c:\tools\nuget.exe install Microsoft.Web.Xdt -Version 3.0.0 -OutputDirectory C:\tools -ExcludeVersion; ` + c:\tools\Invoke-XdtTransformations.ps1 -TargetPath c:\inetpub\wwwroot -XdtPath c:\xdts -XdtDllPath c:\tools\Microsoft.Web.Xdt\lib\netstandard2.0\Microsoft.Web.XmlTransform.dll;` + Push-Location c:/inetpub/wwwroot/App_Config/Include/Y.Commerce.Engine; ` + Rename-Item Sitecore.Commerce.Engine.DataProvider.config.disabled Sitecore.Commerce.Engine.DataProvider.config; ` + Rename-Item Sitecore.Commerce.Engine.Connectors.Index.Common.config.disabled Sitecore.Commerce.Engine.Connectors.Index.Common.config; ` + Rename-Item Sitecore.Commerce.Engine.Connectors.Index.Solr.config.disabled Sitecore.Commerce.Engine.Connectors.Index.Solr.config; ` + Pop-Location; ` + Remove-Item -Path "./XConnectFiles/" -Recurse -Force; + +SHELL ["C:\\LogMonitor\\LogMonitor.exe", "powershell.exe"] + +# hadolint ignore=DL3025 +ENTRYPOINT $env:IIS_APPPOOL_IDENTITY = 'IIS AppPool\DefaultAppPool'; ` + C:\tools\GrantWritePermission.ps1 -TargetFoldersFile 'C:\Permissions\AdditionalWriteAllowedFolders.txt' -User $env:IIS_APPPOOL_IDENTITY; ` + if (-not (Test-Path C:\inetpub\wwwroot\App_Config\Security-Shared\Domains.config)) { Copy-Item -Path C:\inetpub\wwwroot\App_Config\Security\Domains.config -Destination C:\inetpub\wwwroot\App_Config\Security-Shared\Domains.config }; ` + C:\ServiceMonitor.exe w3svc; diff --git a/sxc/10.0/xc-common/docker-compose.build.yml b/sxc/10.0/xc-common/docker-compose.build.yml new file mode 100644 index 0000000..c5115a8 --- /dev/null +++ b/sxc/10.0/xc-common/docker-compose.build.yml @@ -0,0 +1,20 @@ +version: "2.4" +services: + id: + build: + context: ./id + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-id:${XP_SITECORE_TAG} + image: sitecore-xc-id + bizfx: + build: + context: ./bizfx + args: + BASE_IMAGE: mcr.microsoft.com/windows/servercore/iis:windowsservercore-${OS_IMAGE_TAG} + image: sitecore-xc-bizfx + engine: + build: + context: ./engine + args: + BASE_IMAGE: mcr.microsoft.com/windows/servercore:${OS_IMAGE_TAG} + image: sitecore-xc-engine diff --git a/sxc/10.0/xc-common/engine/Dockerfile b/sxc/10.0/xc-common/engine/Dockerfile new file mode 100644 index 0000000..c2bf1ca --- /dev/null +++ b/sxc/10.0/xc-common/engine/Dockerfile @@ -0,0 +1,31 @@ +# escape=` +# This Dockerfile is used to generate images for the following roles: engine-authoring, engine-shops, engine-minions, engine-ops + +ARG BASE_IMAGE + +FROM ${BASE_IMAGE} + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +USER ContainerAdministrator + +ADD http://do-srvc-01-dk1.dk.sitecore.net/dtservice/api/assets/deamon/LogMonitor.exe .\LogMonitor\LogMonitor.exe +ADD https://download.visualstudio.microsoft.com/download/pr/9b9f4a6e-aef8-41e0-90db-bae1b0cf4e34/4ab93354cdff8991d91a9f40d022d450/dotnet-hosting-3.1.6-win.exe .\install\dotnet.exe + +RUN Start-Process -FilePath '.\install\dotnet.exe' -ArgumentList '/Passive /NoRestart' -Wait; + +ENV ASPNETCORE_URLS=http://+:5000 ` + DOTNET_RUNNING_IN_CONTAINER=true ` + DOTNET_RUNNING_IN_CONTAINERS=true + +COPY /Healthchecks/Healthcheck.ps1 ./Healthchecks/ +COPY /LogMonitor ./LogMonitor + +WORKDIR C:/engine +COPY wdp/ . + +USER ContainerUser + +EXPOSE 5000 + +ENTRYPOINT ["C:\\LogMonitor\\LogMonitor.exe", "dotnet.exe", "Sitecore.Commerce.Engine.dll"] \ No newline at end of file diff --git a/sxc/10.0/xc-common/engine/Healthchecks/Healthcheck.ps1 b/sxc/10.0/xc-common/engine/Healthchecks/Healthcheck.ps1 new file mode 100644 index 0000000..1e47cfe --- /dev/null +++ b/sxc/10.0/xc-common/engine/Healthchecks/Healthcheck.ps1 @@ -0,0 +1,42 @@ +param( + [int]$RequestTimeout = 300, + [string]$Server = "http://localhost", + [string]$ReadyCheck = "/health", + [string]$LiveCheck = "/health", + [int]$Port = 5000 +) + +function InvokeWebRequest { + param ( + [string]$Endpoint, + [int]$RequestTimeout + ) + + try { + $response = Invoke-WebRequest -Uri $Endpoint -UseBasicParsing -TimeoutSec $RequestTimeout + } + catch { + $response = $_.Exception.Response + } + finally { + Write-Information -MessageData "$Endpoint - $($response.StatusCode)" -InformationAction:Continue + + if ($response.StatusCode -eq 200) { + $returnCode = 0 + } else { + $returnCode = 1 + } + } + + return $returnCode +} + +$check = "$($Server):$port$LiveCheck" + +$result = InvokeWebRequest -Endpoint $check -RequestTimeout $RequestTimeout + +if ($result -eq 1) { + exit 1 +} + +exit 0 \ No newline at end of file diff --git a/sxc/10.0/xc-common/engine/LogMonitor/LogMonitorConfig.json b/sxc/10.0/xc-common/engine/LogMonitor/LogMonitorConfig.json new file mode 100644 index 0000000..9f88798 --- /dev/null +++ b/sxc/10.0/xc-common/engine/LogMonitor/LogMonitorConfig.json @@ -0,0 +1,12 @@ +{ + "LogConfig": { + "sources": [ + { + "type": "File", + "directory": "c:\\Engine\\wwwroot\\logs", + "filter": "*.txt", + "includeSubdirectories": true + } + ] + } +} \ No newline at end of file diff --git a/sxc/10.0/xc-common/id/Dockerfile b/sxc/10.0/xc-common/id/Dockerfile new file mode 100644 index 0000000..c4e2442 --- /dev/null +++ b/sxc/10.0/xc-common/id/Dockerfile @@ -0,0 +1,9 @@ +# This Dockerfile is used to generate images for the following roles: id + +ARG BASE_IMAGE + +FROM ${BASE_IMAGE} + +WORKDIR c:/Identity + +COPY wdp/ . \ No newline at end of file diff --git a/sxc/10.0/xc-common/mssql/common/tools/DeployRoles.ps1 b/sxc/10.0/xc-common/mssql/common/tools/DeployRoles.ps1 new file mode 100644 index 0000000..8fc478a --- /dev/null +++ b/sxc/10.0/xc-common/mssql/common/tools/DeployRoles.ps1 @@ -0,0 +1,126 @@ +param( + [Parameter(Mandatory = $true)] + [string] $coreDatabaseName, + + [string]$SqlServer = "(local)", + + [string]$SqlAdminUser = "sa", + + [string]$SqlAdminPassword, + + [switch]$SkipStartingServer +) + +function Invoke-Sqlcmd { + param( + [string]$SqlDatabase, + [string]$SqlServer, + [string]$SqlAdminUser, + [string]$SqlAdminPassword, + [string]$Query + ) + + $arguments = " -Q ""$Query"" -S '$SqlServer' -l 600 -t 600" + + if ($SqlAdminUser -and $SqlAdminPassword) { + $arguments += " -U '$SqlAdminUser' -P '$SqlAdminPassword'" + } + + if ($SqlDatabase) { + $arguments += " -d '$SqlDatabase'" + } + + Invoke-Expression "sqlcmd $arguments" + + if ($LASTEXITCODE -ne 0) { + throw "sqlcmd exited with code $LASTEXITCODE" + } +} + +function Add-Role { + param( + [string]$coreDatabaseName, + [string]$roleName, + [string]$applicationName = "sitecore", + [string]$sqlServer, + [string]$sqlAdminUser, + [string]$sqlAdminPassword + ) + + $sqlcmd = "EXEC [dbo].[aspnet_Roles_CreateRole] '$($applicationName)', '$($roleName)'" + Invoke-Sqlcmd -SqlDatabase $coreDatabaseName -SqlServer $sqlServer -SqlAdminUser $sqlAdminUser -SqlAdminPassword $sqlAdminPassword -Query $sqlcmd + Write-Host "Created role: $($roleName)." +} + +function Add-RoleToUser { + param( + [string]$coreDatabaseName, + [string]$roleName, + [string]$userName, + [string]$applicationName = "sitecore", + [string]$sqlServer, + [string]$sqlAdminUser, + [string]$sqlAdminPassword + ) + + $sqlcmd = "USE [$($coreDatabaseName)] + GO + declare @dt DATETIME + set @dt = GETUTCDATE() + EXEC [dbo].[aspnet_UsersInRoles_AddUsersToRoles] '$($applicationName)', '$($userName)', '$($roleName)', @dt + GO" + Invoke-Sqlcmd -SqlDatabase $coreDatabaseName -SqlServer $sqlServer -SqlAdminUser $sqlAdminUser -SqlAdminPassword $sqlAdminPassword -Query $sqlcmd + Write-Host "Role added to user: $($roleName), $($userName)." +} + +function Add-RoleToRole { + param( + [string]$coreDatabaseName, + [string]$memberRoleName, + [string]$targetRoleName, + [string]$applicationName = "", + [string]$sqlServer, + [string]$sqlAdminUser, + [string]$sqlAdminPassword + ) + + $sqlcmd = "INSERT INTO [dbo].[RolesInRoles] (MemberRoleName, TargetRoleName, ApplicationName, Created) VALUES ('$($memberRoleName)', '$($targetRoleName)', '$($applicationName)', GETUTCDATE())" + Invoke-Sqlcmd -SqlDatabase $coreDatabaseName -SqlServer $sqlServer -SqlAdminUser $sqlAdminUser -SqlAdminPassword $sqlAdminPassword -Query $sqlcmd + Write-Host "$($memberRoleName) role added to $($targetRoleName) role." +} + +if (-not $SkipStartingServer) { + Start-Service MSSQLSERVER +} + +Add-Role $coreDatabaseName -roleName 'sitecore\Commerce Administrator' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-Role $coreDatabaseName -roleName 'sitecore\Commerce Business User' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-Role $coreDatabaseName -roleName 'sitecore\Customer Service Representative' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-Role $coreDatabaseName -roleName 'sitecore\Customer Service Representative Administrator' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-Role $coreDatabaseName -roleName 'sitecore\Merchandiser' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-Role $coreDatabaseName -roleName 'sitecore\Pricer' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-Role $coreDatabaseName -roleName 'sitecore\Pricer Manager' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-Role $coreDatabaseName -roleName 'sitecore\Promotioner' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-Role $coreDatabaseName -roleName 'sitecore\Promotioner Manager' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-Role $coreDatabaseName -roleName 'sitecore\Relationship Administrator' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-Role $coreDatabaseName -roleName 'sitecore\QA' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword + +Add-RoleToUser $coreDatabaseName -roleName 'sitecore\Commerce Administrator' -userName 'sitecore\admin' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToUser $coreDatabaseName -roleName 'sitecore\Commerce Business User' -userName 'sitecore\admin' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword + +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Customer Service Representative' -targetRoleName 'sitecore\Commerce Business User' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Relationship Administrator' -targetRoleName 'sitecore\Commerce Business User' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Pricer' -targetRoleName 'sitecore\Commerce Business User' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Promotioner' -targetRoleName 'sitecore\Commerce Business User' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Merchandiser' -targetRoleName 'sitecore\Relationship Administrator' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Pricer Manager' -targetRoleName 'sitecore\Pricer' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Promotioner Manager' -targetRoleName 'sitecore\Promotioner' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Customer Service Representative Administrator' -targetRoleName 'sitecore\Customer Service Representative' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Commerce Administrator' -targetRoleName 'sitecore\Customer Service Representative Administrator' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Commerce Administrator' -targetRoleName 'sitecore\Pricer Manager' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Commerce Administrator' -targetRoleName 'sitecore\Promotioner Manager' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword +Add-RoleToRole $coreDatabaseName -memberRoleName 'sitecore\Commerce Administrator' -targetRoleName 'sitecore\Merchandiser' -sqlServer $SqlServer -sqlAdminUser $SqlAdminUser -sqlAdminPassword $SqlAdminPassword + +if (-not $SkipStartingServer) { + Stop-Service MSSQLSERVER +} \ No newline at end of file diff --git a/sxc/10.0/xc-common/mssql/common/tools/StartCommerceInit.ps1 b/sxc/10.0/xc-common/mssql/common/tools/StartCommerceInit.ps1 new file mode 100644 index 0000000..2cc0785 --- /dev/null +++ b/sxc/10.0/xc-common/mssql/common/tools/StartCommerceInit.ps1 @@ -0,0 +1,29 @@ +[CmdletBinding()] +param ( + [Parameter(Mandatory)] + [ValidateScript({ Test-Path $_ -PathType Container })] + [string]$ResourcesDirectory, + + [Parameter(Mandatory)] + [string]$SqlServer, + + [Parameter(Mandatory)] + [string]$SqlAdminUser, + + [Parameter(Mandatory)] + [string]$SqlAdminPassword, + + [Parameter(Mandatory)] + [string]$SitecoreAdminPassword, + + [string]$SqlElasticPoolName, + [object[]]$DatabaseUsers, + + [string]$CoreDatabaseName +) + +# Forward all arguments to the XP initialization script for initial database publishing and user creation +.\StartInit.ps1 -ResourcesDirectory $ResourcesDirectory -SqlServer $SqlServer -SqlAdminUser $SqlAdminUser -SqlAdminPassword $SqlAdminPassword -SitecoreAdminPassword $SitecoreAdminPassword -SqlElasticPoolName $SqlElasticPoolName -DatabaseUsers $DatabaseUsers + +# Create XC specific roles/users +.\DeployRoles.ps1 -coreDatabaseName $CoreDatabaseName -SqlServer $SqlServer -SqlAdminUser $SqlAdminUser -SqlAdminPassword $SqlAdminPassword -SkipStartingServer \ No newline at end of file diff --git a/sxc/10.0/xc-common/mssql/init/Dockerfile b/sxc/10.0/xc-common/mssql/init/Dockerfile new file mode 100644 index 0000000..849d6e6 --- /dev/null +++ b/sxc/10.0/xc-common/mssql/init/Dockerfile @@ -0,0 +1,35 @@ +# escape=` +# This Dockerfile is used to generate images for the following roles: mssql + +ARG BASE_IMAGE + +FROM ${BASE_IMAGE} + +ARG TOPOLOGY +ENV TOPOLOGY=${TOPOLOGY} + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY ./dacpacs ./resources +COPY ./tools/StartCommerceInit.ps1 ./tools/DeployRoles.ps1 ./ + +# hadolint ignore=DL3025 +ENTRYPOINT .\StartCommerceInit.ps1 -ResourcesDirectory $env:RESOURCES_PATH -SqlServer $env:SQL_SERVER -SqlAdminUser $env:SQL_ADMIN_LOGIN -SqlAdminPassword $env:SQL_ADMIN_PASSWORD -SitecoreAdminPassword $env:sitecore_admin_password -SqlElasticPoolName $env:SQL_ELASTIC_POOL_NAME -CoreDatabaseName $env:SITECORE_CORE_DB ` + -DatabaseUsers @( ` + @{'databaseName' = 'Sitecore.Master'; 'username' = $env:Master_Database_Username; 'password' = $env:Master_Database_Password}, ` + @{'databaseName' = 'Sitecore.Core'; 'username' = $env:Core_Database_Username; 'password' = $env:Core_Database_Password}, ` + @{'databaseName' = 'Sitecore.Web'; 'username' = $env:Web_Database_Username; 'password' = $env:Web_Database_Password}, ` + @{'databaseName' = 'Sitecore.Experienceforms'; 'username' = $env:Forms_Database_Username; 'password' = $env:Forms_Database_Password}, ` + @{'databaseName' = 'Sitecore.Exm.master'; 'username' = $env:Exm_Master_Database_Username; 'password' = $env:Exm_Master_Database_Password}, ` + @{'databaseName' = 'Sitecore.Marketingautomation'; 'username' = $env:Marketing_Automation_Database_Username; 'password' = $env:Marketing_Automation_Database_Password}, ` + @{'databaseName' = 'Sitecore.Messaging'; 'username' = $env:Messaging_Database_Username; 'password' = $env:Messaging_Database_Password }, ` + @{'databaseName' = 'Sitecore.Reporting'; 'username' = $env:Reporting_Database_Username; 'password' = $env:Reporting_Database_Password }, ` + @{'databaseName' = 'Sitecore.Referencedata'; 'username' = $env:Reference_Data_Database_Username; 'password' = $env:Reference_Data_Database_Password }, ` + @{'databaseName' = 'Sitecore.Processing.Pools'; 'username' = $env:Processing_Pools_Database_Username; 'password' = $env:Processing_Pools_Database_Password }, ` + @{'databaseName' = 'Sitecore.Processing.Tasks'; 'username' = $env:Processing_Tasks_Database_Username; 'password' = $env:Processing_Tasks_Database_Password }, ` + @{'databaseName' = 'Sitecore.Processing.Engine.Tasks'; 'username' = $env:Processing_Engine_Tasks_Database_Username; 'password' = $env:Processing_Engine_Tasks_Database_Password }, ` + @{'databaseName' = 'Sitecore.Processing.Engine.Storage'; 'username' = $env:Processing_Engine_Storage_Database_Username; 'password' = $env:Processing_Engine_Storage_Database_Password }, ` + @{'databaseName' = 'Sitecore.Xdb.Collection.ShardMapManager'; 'username' = $env:Collection_ShardMapManager_Database_Username; 'password' = $env:Collection_ShardMapManager_Database_Password }, ` + @{'databaseName' = 'Sitecore.Xdb.Collection.Shard0'; 'username' = $env:Collection_ShardMapManager_Database_Username; 'password' = $env:Collection_ShardMapManager_Database_Password }, ` + @{'databaseName' = 'Sitecore.Xdb.Collection.Shard1'; 'username' = $env:Collection_ShardMapManager_Database_Username; 'password' = $env:Collection_ShardMapManager_Database_Password } ` + ) \ No newline at end of file diff --git a/sxc/10.0/xc-common/mssql/standalone/Dockerfile b/sxc/10.0/xc-common/mssql/standalone/Dockerfile new file mode 100644 index 0000000..290999e --- /dev/null +++ b/sxc/10.0/xc-common/mssql/standalone/Dockerfile @@ -0,0 +1,19 @@ +# escape=` +# This Dockerfile is used to generate images for the following roles: mssql + +ARG BASE_IMAGE + +FROM ${BASE_IMAGE} + +ARG SITECORE_CORE_DB +ENV SITECORE_CORE_DB=${SITECORE_CORE_DB} + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY ./dacpacs ./dacpacs +COPY ./tools/DeployRoles.ps1 ./xc/tools/ + +RUN C:\DeployDatabases.ps1 -ResourcesDirectory C:\dacpacs -DatabaseOwner "sa" -EnableContainedDatabaseAuth; ` + .\xc\tools\DeployRoles.ps1 -coreDatabaseName $env:SITECORE_CORE_DB; ` + Remove-Item .\dacpacs -Recurse -Force; ` + Remove-Item .\xc -Recurse -Force; diff --git a/sxc/10.0/xc-common/prc-rep-xdba-xdbc/Dockerfile b/sxc/10.0/xc-common/prc-rep-xdba-xdbc/Dockerfile new file mode 100644 index 0000000..19eac43 --- /dev/null +++ b/sxc/10.0/xc-common/prc-rep-xdba-xdbc/Dockerfile @@ -0,0 +1,10 @@ +# escape=` +# This Dockerfile is used to generate images for the following roles: prc, rep, xdba, xdbc + +ARG BASE_IMAGE + +FROM ${BASE_IMAGE} + +WORKDIR /inetpub/wwwroot + +COPY wdp/ ./ \ No newline at end of file diff --git a/sxc/10.0/xc-common/solr-init/Dockerfile b/sxc/10.0/xc-common/solr-init/Dockerfile new file mode 100644 index 0000000..daf8c53 --- /dev/null +++ b/sxc/10.0/xc-common/solr-init/Dockerfile @@ -0,0 +1,36 @@ +# escape=` + +ARG BASE_IMAGE + +FROM ${BASE_IMAGE} + +ARG XC_TOPOLOGY +ARG SOLR_XDB_SCHEMA_FILE + +ENV SOLR_SITECORE_CONFIGSET_SUFFIX_NAME=_config ` + SOLR_REPLICATION_FACTOR=1 ` + SOLR_NUMBER_OF_SHARDS=1 ` + SOLR_MAX_SHARDS_NUMBER_PER_NODES=1 ` + SOLR_CORE_PREFIX_NAME=sitecore ` + SOLR_XDB_SCHEMA_FILE=${SOLR_XDB_SCHEMA_FILE} ` + TOPOLOGY=${XC_TOPOLOGY} ` + SOLR_COMMERCE_PREFIX_NAME=commerce ` + SOLR_COMMERCE_POSTFIX_NAME=Scope ` + SOLR_COMMERCE_REBUILD_POSTFIX_NAME=-Rebuild + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY .\tools\scripts\ .\ +COPY .\${XC_TOPOLOGY}\ .\wdp\ .\data\ + +ENTRYPOINT .\Start-Commerce.ps1 -SitecoreSolrConnectionString $env:SITECORE_SOLR_CONNECTION_STRING ` +-SolrCorePrefix $env:SOLR_CORE_PREFIX_NAME ` +-SolrSitecoreConfigsetSuffixName $env:SOLR_SITECORE_CONFIGSET_SUFFIX_NAME ` +-SolrReplicationFactor $env:SOLR_REPLICATION_FACTOR ` +-SolrNumberOfShards $env:SOLR_NUMBER_OF_SHARDS ` +-SolrMaxShardsPerNodes $env:SOLR_MAX_SHARDS_NUMBER_PER_NODES ` +-SolrXdbSchemaFile .\data\schema.json ` +-CommerceSolrConnectionString $env:Commerce_SOLR_CONNECTION_STRING ` +-SolrCommercePrefix $env:SOLR_COMMERCE_PREFIX_NAME ` +-SolrCommercePostfix $env:SOLR_COMMERCE_POSTFIX_NAME ` +-SolrCommerceRebuildPostfix $env:SOLR_COMMERCE_REBUILD_POSTFIX_NAME diff --git a/sxc/10.0/xc-common/solr-init/tools/scripts/New-SolrCore-Commerce.ps1 b/sxc/10.0/xc-common/solr-init/tools/scripts/New-SolrCore-Commerce.ps1 new file mode 100644 index 0000000..115e568 --- /dev/null +++ b/sxc/10.0/xc-common/solr-init/tools/scripts/New-SolrCore-Commerce.ps1 @@ -0,0 +1,48 @@ +param( + [Parameter(Mandatory)] + [string]$SolrEndpoint, + + [Parameter(Mandatory)] + [string[]]$SolrCoreNames, + + [Parameter(Mandatory)] + [string]$SolrCorePrefix, + + [Parameter(Mandatory)] + [string]$SolrConfigsetName, + + [Parameter(Mandatory)] + [string]$SolrReplicationFactor, + + [Parameter(Mandatory)] + [string]$SolrNumberOfShards, + + [Parameter(Mandatory)] + [string]$SolrMaxShardNumberPerNode, + + $SolrCollectionAliases +) +function Invoke-SolrWebRequest { + param ( + [Parameter(Mandatory)] + [string]$Uri + ) + + return Invoke-RestMethod -Credential (Get-SolrCredential) -Uri $Uri ` + -ContentType "application/json" -Method Post +} +foreach($solrCoreName in $SolrCoreNames) { + + $solrCollectionName = ('{0}{1}' -f $SolrCorePrefix, $solrCoreName) + Write-Host "Creating $solrCollectionName SOLR collection" + + $solrUrl = [System.String]::Concat($SolrEndpoint, "/admin/collections?action=CREATE&name=", $solrCollectionName , + "&collection.configName=", $SolrConfigsetName, "&replicationFactor=", $SolrReplicationFactor, + "&numShards=", $SolrNumberOfShards, "&maxShardsPerNode=", $SolrMaxShardNumberPerNode, "&property.update.autoCreateFields=false") + $null = Invoke-SolrWebRequest -Uri $solrUrl + + if( $SolrCollectionAliases.$solrCoreName ) { + $aliasName = '{0}{1}' -f $SolrCorePrefix, $SolrCollectionAliases.$solrCoreName + .\New-SolrAlias.ps1 -SolrEndpoint $SolrEndpoint -SolrCollectionName $solrCollectionName -AliasName $aliasName + } +} \ No newline at end of file diff --git a/sxc/10.0/xc-common/solr-init/tools/scripts/Start-Commerce.ps1 b/sxc/10.0/xc-common/solr-init/tools/scripts/Start-Commerce.ps1 new file mode 100644 index 0000000..e875aac --- /dev/null +++ b/sxc/10.0/xc-common/solr-init/tools/scripts/Start-Commerce.ps1 @@ -0,0 +1,92 @@ +param( + [Parameter(Mandatory)] + [string]$SitecoreSolrConnectionString, + + [Parameter(Mandatory)] + [string]$SolrSitecoreConfigsetSuffixName, + + [Parameter(Mandatory)] + [string]$SolrCorePrefix, + + [Parameter(Mandatory)] + [string]$SolrReplicationFactor, + + [Parameter(Mandatory)] + [int]$SolrNumberOfShards, + + [Parameter(Mandatory)] + [int]$SolrMaxShardsPerNodes, + + [string]$SolrXdbSchemaFile, + + [Parameter(Mandatory)] + [string]$CommerceSolrConnectionString, + + [string]$SolrCommercePrefix, + + [string]$SolrCommercePostfix, + + [string]$SolrCommerceRebuildPostfix +) + +function GetCommerceCoreNames { + param ( + [ValidateSet("commerce")] + [string]$CoreType + ) + + $resultCoreNames = @() + Get-ChildItem C:\data -Filter cores*.json | ForEach-Object { + $coreNames = (Get-Content $_.FullName | Out-String | ConvertFrom-Json).$CoreType + if ($coreNames) { + $resultCoreNames += $coreNames + } + } + + return $resultCoreNames +} + +# XP start +.\Start.ps1 -SitecoreSolrConnectionString $SitecoreSolrConnectionString -SolrCorePrefix $SolrCorePrefix -SolrSitecoreConfigsetSuffixName $SolrSitecoreConfigsetSuffixName -SolrReplicationFactor $SolrReplicationFactor -SolrNumberOfShards $SolrNumberOfShards -SolrMaxShardsPerNodes $SolrMaxShardsPerNodes -SolrXdbSchemaFile .\data\schema.json + +# Commerce Start +. .\Get-SolrCredential.ps1 + +$solrContext = .\Parse-ConnectionString.ps1 -SitecoreSolrConnectionString $CommerceSolrConnectionString +$SolrEndpoint = $solrContext.SolrEndpoint +$env:SOLR_USERNAME = $solrContext.SolrUsername +$env:SOLR_PASSWORD = $solrContext.SolrPassword + +$solrBaseConfigDir = "C:\temp\commerce" +.\Download-SolrConfig.ps1 -SolrEndpoint $SolrEndpoint -OutPath $solrBaseConfigDir + +$solrCommerceCoreNames = GetCommerceCoreNames("commerce") + +foreach ($solrCoreName in $solrCommerceCoreNames) { + Write-Information -MessageData "Trying to create collections for '$solrCoreName'." -InformationAction:Continue + $solrCollectionName = ('_{0}{1}' -f $solrCoreName, $SolrCommercePostfix) + $solrCollectionNameWithPrefix = ('{0}{1}' -f $SolrCommercePrefix, $solrCollectionName) + + $solrRebuildCollectionName = ('{0}{1}' -f $solrCollectionName , $SolrCommerceRebuildPostfix) + + if ($solrCollections -contains $solrCollectionName -or $solrCollections -contains $solrRebuildCollectionName) { + Write-Information -MessageData "Commerce collections already exist. Use a collection name prefix different from '$SolrCommercePrefix'." -InformationAction:Continue + return + } + + $solrConfigsetName = ('{0}{1}' -f $solrCollectionNameWithPrefix, $SolrSitecoreConfigsetSuffixName) + + $solrConfigDir = Join-Path ".\temp" $solrConfigsetName + $solrCoreDir = Join-Path ".\data" $solrCoreName + + Copy-Item -Path $solrBaseConfigDir -Destination $solrConfigDir -Recurse -Force + Copy-Item -Path (Join-Path $solrCoreDir "*") -Destination $solrConfigDir -Recurse -Force + + .\New-SolrConfig.ps1 -SolrEndpoint $SolrEndpoint -SolrConfigName $solrConfigsetName -SolrConfigDir $solrConfigDir + + .\New-SolrCore-Commerce.ps1 -SolrCoreNames $solrCollectionName -SolrEndpoint $SolrEndpoint -SolrCorePrefix $SolrCommercePrefix -SolrConfigsetName $solrConfigsetName -SolrReplicationFactor $SolrReplicationFactor -SolrNumberOfShards $SolrNumberOfShards -SolrMaxShardNumberPerNode $SolrMaxShardsPerNodes + .\New-SolrCore-Commerce.ps1 -SolrCoreNames $solrRebuildCollectionName -SolrEndpoint $SolrEndpoint -SolrCorePrefix $SolrCommercePrefix -SolrConfigsetName $solrConfigsetName -SolrReplicationFactor $SolrReplicationFactor -SolrNumberOfShards $SolrNumberOfShards -SolrMaxShardNumberPerNode $SolrMaxShardsPerNodes +} + +#clean up +Remove-Item "c:\temp" -Recurse -Force \ No newline at end of file diff --git a/sxc/10.0/xc-common/solr-init/xc1/cores-commerce.json b/sxc/10.0/xc-common/solr-init/xc1/cores-commerce.json new file mode 100644 index 0000000..3e75700 --- /dev/null +++ b/sxc/10.0/xc-common/solr-init/xc1/cores-commerce.json @@ -0,0 +1,9 @@ +{ + "commerce": [ + "CatalogItems", + "Customers", + "Orders", + "PriceCards", + "Promotions" + ] +} \ No newline at end of file diff --git a/sxc/10.0/xc-common/solr/Dockerfile b/sxc/10.0/xc-common/solr/Dockerfile new file mode 100644 index 0000000..ce40707 --- /dev/null +++ b/sxc/10.0/xc-common/solr/Dockerfile @@ -0,0 +1,19 @@ +# escape=` +# This Dockerfile is used to generate images for the following roles: solr + +ARG BASE_IMAGE + +FROM ${BASE_IMAGE} + +ARG SOLR_COMMERCE_CORE_NAMES + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY ./wdp ./data-commerce +COPY ./tools/scripts ./ + +RUN .\Add-Commerce-SolrCores.ps1 -SolrPath C:\solr -SolrCoreNames $env:SOLR_COMMERCE_CORE_NAMES; ` + Remove-Item ./data-commerce -Recurse -Force + +# hadolint ignore=DL3025 +CMD .\Start-Commerce.ps1 -InstallPath "c:\\solr\\server\\solr" -DataPath $env:SOLR_HOME -Verbose \ No newline at end of file diff --git a/sxc/10.0/xc-common/solr/tools/scripts/Add-Commerce-SolrCores.ps1 b/sxc/10.0/xc-common/solr/tools/scripts/Add-Commerce-SolrCores.ps1 new file mode 100644 index 0000000..3b04f23 --- /dev/null +++ b/sxc/10.0/xc-common/solr/tools/scripts/Add-Commerce-SolrCores.ps1 @@ -0,0 +1,44 @@ +[CmdletBinding()] +param( + [Parameter(Mandatory)] + [ValidateScript({ Test-Path $_ -PathType Container })] + [string]$SolrPath, + + [Parameter(Mandatory)] + [ValidateNotNullOrEmpty()] + [string]$SolrCoreNames, + + [string]$SolrCommercePostfix = "Scope", + + [string]$SolrCommerceRebuildPostfix = "-Rebuild" +) + +function Create-SolrCore { + param ( + [Parameter(Mandatory)] + [ValidateNotNullOrEmpty()] + [string] $SourceCoreName, + + [Parameter(Mandatory)] + [ValidateNotNullOrEmpty()] + [string] $TargetCoreName + ) + + $corePath = Join-Path $SolrPath "server\solr\$TargetCoreName" + Copy-Item -Path (Join-Path $SolrPath "server\solr\configsets\_default\conf") -Destination (Join-Path $corePath "conf") -Recurse -Force + + Copy-Item -Path (Join-Path (Join-Path "data-commerce" $SourceCoreName) '\*') -Destination (Join-Path $corePath "conf") + + $corePropertiesPath = Join-Path $corePath "core.properties" + Set-Content -Path $corePropertiesPath -Value ("name=" + $TargetCoreName + [Environment]::NewLine + ` + "config=solrconfig.xml" + [Environment]::NewLine + ` + "update.autoCreateFields=false" + [Environment]::NewLine + ` + "dataDir=data") +} + +$SolrCoreNames -Split ',' | ForEach-Object { + $name = ('{0}{1}' -f $_, $SolrCommercePostfix) + + Create-SolrCore -SourceCoreName $_ -TargetCoreName $name + Create-SolrCore -SourceCoreName $_ -TargetCoreName ('{0}{1}' -f $name, $SolrCommerceRebuildPostfix) +} \ No newline at end of file diff --git a/sxc/10.0/xc-common/solr/tools/scripts/Start-Commerce.ps1 b/sxc/10.0/xc-common/solr/tools/scripts/Start-Commerce.ps1 new file mode 100644 index 0000000..4096e0d --- /dev/null +++ b/sxc/10.0/xc-common/solr/tools/scripts/Start-Commerce.ps1 @@ -0,0 +1,26 @@ + +param( + [Parameter(Mandatory = $true)] + [ValidateScript( { Test-Path $_ -PathType 'Container' })] + [string]$InstallPath, + + [Parameter(Mandatory = $true)] + [ValidateScript( { Test-Path $_ -PathType 'Container' })] + [string]$DataPath +) + +$dataFolderEmpty = ($null -eq (Get-ChildItem -Path $DataPath -Filter "solr.xml")) +if ($dataFolderEmpty) +{ + Write-Host "INFO: Solr configuration not found in '$DataPath', copying clean configuration..." + + Get-ChildItem -Path $InstallPath | ForEach-Object { + Copy-Item -Recurse -Path $_.FullName -Destination $DataPath + } +} +else +{ + Write-Host "INFO: Existing Solr configuration found in '$DataPath'..." +} + +c:\solr\bin\solr.cmd start -port 8983 -f diff --git a/sxc/10.0/xc-common/xdbworkers/Dockerfile b/sxc/10.0/xc-common/xdbworkers/Dockerfile new file mode 100644 index 0000000..66c64df --- /dev/null +++ b/sxc/10.0/xc-common/xdbworkers/Dockerfile @@ -0,0 +1,11 @@ +# This Dockerfile is used to generate images for the following roles: xdbsearchworker, xdbautomationworker + +ARG BASE_IMAGE + +FROM ${BASE_IMAGE} + +WORKDIR /service + +ARG CONTENT_PATH + +COPY ${CONTENT_PATH} . \ No newline at end of file diff --git a/sxc/10.0/xc0/.env b/sxc/10.0/xc0/.env new file mode 100644 index 0000000..14ed12e --- /dev/null +++ b/sxc/10.0/xc0/.env @@ -0,0 +1,50 @@ +BASE_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/base/ + +XP_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxp/ +XP_SITECORE_TAG=10.0.0-ltsc2019 + +XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxc/nonproduction/ +XC_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxc/ +XC_PACKAGES_TAG=10.0.0-ltsc2019 + +TRAEFIK_IMAGE=traefik:v2.2.0-windowsservercore-1809 +TRAEFIK_ISOLATION=default + +ISOLATION=default + +CM_HOST=xc0cm.localhost +ID_HOST=xc0id.localhost + +AUTHORING_HOST=authoring.localhost +SHOPS_HOST=shops.localhost +MINIONS_HOST=minions.localhost +OPS_HOST=ops.localhost + +BIZFX_HOST=bizfx.localhost + +SQL_SA_PASSWORD=Password12345 +SITECORE_ADMIN_PASSWORD=Password12345 + +SITECORE_MASTER_DB=Sitecore.Master +SITECORE_CORE_DB=Sitecore.Core +XC_GLOBAL_DB=SitecoreCommerce_Global +XC_GLOBAL_DB_TRUSTED_CONNECTION=false +XC_SHARED_DB=SitecoreCommerce_SharedEnvironments +XC_SHARED_DB_TRUSTED_CONNECTION=false + +XC_ENGINE_BRAINTREEENVIRONMENT= +XC_ENGINE_BRAINTREEMERCHANTID= +XC_ENGINE_BRAINTREEPUBLICKEY= +XC_ENGINE_BRAINTREEPRIVATEKEY= +XC_BIZFX_DEFAULT_LANGUAGE=en +XC_BIZFX_DEFAULT_CURRENCY=USD +XC_BIZFX_DEFAULT_SHOPNAME=CommerceEngineDefaultStorefront +XC_ENGINE_CONNECT_CLIENTID=CommerceEngineConnect +XC_IDENTITY_COMMERCEENGINECONNECTCLIENT_CLIENTSECRET1= + +REPORTING_API_KEY= +TELERIK_ENCRYPTION_KEY= +SITECORE_IDSECRET= +SITECORE_ID_CERTIFICATE= +SITECORE_ID_CERTIFICATE_PASSWORD= +SITECORE_LICENSE= \ No newline at end of file diff --git a/sxc/10.0/xc0/cm/Content/Website/App_Config/Include/Domains.Shared.config b/sxc/10.0/xc0/cm/Content/Website/App_Config/Include/Domains.Shared.config new file mode 100644 index 0000000..32579a3 --- /dev/null +++ b/sxc/10.0/xc0/cm/Content/Website/App_Config/Include/Domains.Shared.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/sxc/10.0/xc0/cm/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config b/sxc/10.0/xc0/cm/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config new file mode 100644 index 0000000..9545f59 --- /dev/null +++ b/sxc/10.0/xc0/cm/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config @@ -0,0 +1,30 @@ + + + + $(env:Sitecore_xc_Shops_Url) + $(env:Sitecore_xc_Ops_Url) + $(env:Sitecore_xc_Minions_Url) + $(env:Sitecore_Identity_Server_Authority) + $(env:Sitecore_Identity_Server_InternalAuthority) + false + $(env:Sitecore_xc_Client_Secret_Hash) + + + + + + + $(env:Sitecore_xc_ConnectionStrings_Redis) + + + + + + + + true + + + + + \ No newline at end of file diff --git a/sxc/10.0/xc0/cm/Permissions/AdditionalWriteAllowedFolders.txt b/sxc/10.0/xc0/cm/Permissions/AdditionalWriteAllowedFolders.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/xc0/cm/tools/GrantWritePermission.ps1 b/sxc/10.0/xc0/cm/tools/GrantWritePermission.ps1 new file mode 100644 index 0000000..ac9190f --- /dev/null +++ b/sxc/10.0/xc0/cm/tools/GrantWritePermission.ps1 @@ -0,0 +1,24 @@ +param( + [Parameter(Mandatory=$true, ParameterSetName="Array")] + [string[]] $TargetFolders, + + [Parameter(Mandatory=$true, ParameterSetName="File")] + [string] $TargetFoldersFile, + + [Parameter(Mandatory=$true)] + [string] $User +) + +if ($TargetFoldersFile) { + $TargetFolders = Get-Content -Path $TargetFoldersFile +} + +$TargetFolders | ForEach-Object { + If (-not [string]::IsNullOrEmpty($_)) { + If (!(Test-Path $_)) { + New-Item -Path $_ -ItemType Directory -Force + } + + cmd /C icacls $_ /grant ($User + ":(OI)(CI)M") + } +} \ No newline at end of file diff --git a/sxc/10.0/xc0/cm/tools/Invoke-XdtTransformations.ps1 b/sxc/10.0/xc0/cm/tools/Invoke-XdtTransformations.ps1 new file mode 100644 index 0000000..b9e51d5 --- /dev/null +++ b/sxc/10.0/xc0/cm/tools/Invoke-XdtTransformations.ps1 @@ -0,0 +1,43 @@ +[CmdletBinding()] +param( + [Parameter(Mandatory = $true)] + [ValidateScript({ Test-Path $_ -PathType Container })] + [string]$TargetPath, + [Parameter(Mandatory = $true)] + [string]$XdtPath, + [Parameter(Mandatory = $true)] + [ValidateScript({ Test-Path $_ -PathType Leaf })] + [string]$XdtDllPath +) + +if (-not (Test-Path $XdtPath -PathType Container)) { + Write-Verbose "Transformations source '$XdtPath' does not exist." + return +} + +$transformations = @(Get-ChildItem $XdtPath -File -Recurse) + +if ($transformations.Length -eq 0) { + Write-Verbose "No transformations in '$XdtPath'." + return +} + +Add-Type -Path $XdtDllPath + +$transformations | ForEach-Object { + $targetFullPath = (Resolve-Path $TargetPath).Path + $xdtFullPath = (Resolve-Path $XdtPath).Path + $targetFilePath = $_.FullName.Replace($xdtFullPath, $targetFullPath).Replace(".xdt", "") + + $targetDocument = New-Object Microsoft.Web.XmlTransform.XmlTransformableDocument; + $targetDocument.PreserveWhitespace = $true + $targetDocument.Load($targetFilePath) + + $transformation = New-Object Microsoft.Web.XmlTransform.XmlTransformation($_.FullName) + if ($transformation.Apply($targetDocument) -eq $false) { + throw "Transformation '$($_.FullName)' on '$($targetFilePath.FullName)' failed." + } + + $targetDocument.Save($targetFilePath) + Write-Verbose "Transformation '$($_.FullName)' on '$($targetFilePath.FullName)' completed." +} \ No newline at end of file diff --git a/sxc/10.0/xc0/cm/xdts/Web.config.xdt b/sxc/10.0/xc0/cm/xdts/Web.config.xdt new file mode 100644 index 0000000..72d7ecb --- /dev/null +++ b/sxc/10.0/xc0/cm/xdts/Web.config.xdt @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/sxc/10.0/xc0/docker-compose.build.yml b/sxc/10.0/xc0/docker-compose.build.yml new file mode 100644 index 0000000..44686a7 --- /dev/null +++ b/sxc/10.0/xc0/docker-compose.build.yml @@ -0,0 +1,45 @@ +version: "2.4" +services: + mssql: + build: + context: ../xc-common/mssql/common + dockerfile: ../standalone/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp0-mssql:${XP_SITECORE_TAG} + SITECORE_CORE_DB: ${SITECORE_CORE_DB} + image: sitecore-xc0-mssql + solr: + build: + context: ../xc-common/solr + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp0-solr:${XP_SITECORE_TAG} + SOLR_COMMERCE_CORE_NAMES: "CatalogItems,Customers,Orders,PriceCards,Promotions" + image: sitecore-xc0-solr + cm: + build: + context: ./cm + dockerfile: ../../xc-common/cd-cm/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp0-cm:${XP_SITECORE_TAG} + image: sitecore-xc0-cm + xconnect: + build: + context: ./xconnect + dockerfile: ../../xc-common/prc-rep-xdba-xdbc/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp0-xconnect:${XP_SITECORE_TAG} + image: sitecore-xc0-xconnect + xdbsearchworker: + build: + context: ../xc-common/xdbworkers + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp0-xdbsearchworker:${XP_SITECORE_TAG} + CONTENT_PATH: xdbsearchworker/wdp/App_Data/jobs/continuous/IndexWorker + image: sitecore-xc0-xdbsearchworker + xdbautomationworker: + build: + context: ../xc-common/xdbworkers + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp0-xdbautomationworker:${XP_SITECORE_TAG} + CONTENT_PATH: xdbautomationworker/wdp/App_Data/jobs/continuous/AutomationEngine + image: sitecore-xc0-xdbautomationworker diff --git a/sxc/10.0/xc0/docker-compose.yml b/sxc/10.0/xc0/docker-compose.yml new file mode 100644 index 0000000..2fc48a5 --- /dev/null +++ b/sxc/10.0/xc0/docker-compose.yml @@ -0,0 +1,561 @@ +version: "2.4" +services: + traefik: + isolation: ${TRAEFIK_ISOLATION} + image: ${TRAEFIK_IMAGE} + command: + - "--api.insecure=true" + - "--providers.docker.endpoint=npipe:////./pipe/docker_engine" + - "--providers.docker.exposedByDefault=false" + - "--providers.file.directory=C:/etc/traefik/config/dynamic" + - "--entryPoints.websecure.address=:443" + ports: + - "443:443" + - "8079:8080" + volumes: + - source: \\.\pipe\docker_engine + target: \\.\pipe\docker_engine + type: npipe + - ./traefik:C:/etc/traefik + depends_on: + id: + condition: service_started + cm: + condition: service_started + bizfx: + condition: service_started + engine-authoring: + condition: service_started + engine-shops: + condition: service_started + engine-minions: + condition: service_started + engine-ops: + condition: service_started + mssql: + isolation: ${ISOLATION} + image: ${XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY}sitecore-xc0-mssql:${XC_PACKAGES_TAG} + environment: + SA_PASSWORD: ${SQL_SA_PASSWORD} + SITECORE_ADMIN_PASSWORD: ${SITECORE_ADMIN_PASSWORD} + ACCEPT_EULA: "Y" + SQL_SERVER: mssql + ports: + - "14330:1433" + volumes: + - type: bind + source: c:\containers\mssql-data + target: c:\data + solr: + isolation: ${ISOLATION} + ports: + - "8984:8983" + image: ${XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY}sitecore-xc0-solr:${XC_PACKAGES_TAG} + volumes: + - type: bind + source: c:\containers\solr-data + target: c:\data + redis: + isolation: ${ISOLATION} + image: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-redis:${XP_SITECORE_TAG} + restart: unless-stopped + id: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-id:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + environment: + Sitecore_Sitecore__IdentityServer__SitecoreMemberShipOptions__ConnectionString: Data Source=mssql;Initial Catalog=Sitecore.Core;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_Sitecore__IdentityServer__AccountOptions__PasswordRecoveryUrl: https://${CM_HOST}/sitecore/login?rc=1 + Sitecore_Sitecore__IdentityServer__Clients__PasswordClient__ClientSecrets__ClientSecret1: ${SITECORE_IDSECRET} + Sitecore_Sitecore__IdentityServer__Clients__DefaultClient__AllowedCorsOrigins__AllowedCorsOriginsGroup1: https://${CM_HOST} + Sitecore_Sitecore__IdentityServer__CertificateRawData: ${SITECORE_ID_CERTIFICATE} + Sitecore_Sitecore__IdentityServer__PublicOrigin: https://${ID_HOST} + Sitecore_Sitecore__IdentityServer__CertificateRawDataPassword: ${SITECORE_ID_CERTIFICATE_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + Sitecore_Sitecore__IdentityServer__Clients__CommerceClient__AllowedCorsOrigins__AllowedCorsOriginsGroup1: https://${BIZFX_HOST}|https://${AUTHORING_HOST} + Sitecore_Sitecore__IdentityServer__Clients__CommerceEngineConnectClient__ClientId: ${XC_ENGINE_CONNECT_CLIENTID} + Sitecore_Sitecore__IdentityServer__Clients__CommerceEngineConnectClient__AllowedCorsOrigins__AllowedCorsOriginsGroup1: https://${CM_HOST} + Sitecore_Sitecore__IdentityServer__Clients__CommerceEngineConnectClient__ClientSecrets__ClientSecret1: ${XC_IDENTITY_COMMERCEENGINECONNECTCLIENT_CLIENTSECRET1} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + labels: + - "traefik.enable=true" + - "traefik.http.routers.id-secure.entrypoints=websecure" + - "traefik.http.routers.id-secure.rule=Host(`${ID_HOST}`)" + - "traefik.http.routers.id-secure.tls=true" + cm: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc0-cm:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + xconnect: + condition: service_started + environment: + Sitecore_ConnectionStrings_Core: Data Source=mssql;Initial Catalog=Sitecore.Core;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Security: Data Source=mssql;Initial Catalog=Sitecore.Core;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Master: Data Source=mssql;Initial Catalog=Sitecore.Master;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Web: Data Source=mssql;Initial Catalog=Sitecore.Web;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Processing.Pools: Data Source=mssql;Initial Catalog=Sitecore.Processing.pools;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Referencedata: Data Source=mssql;Initial Catalog=Sitecore.Referencedata;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Processing.Tasks: Data Source=mssql;Initial Catalog=Sitecore.Processing.tasks;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_ExperienceForms: Data Source=mssql;Initial Catalog=Sitecore.ExperienceForms;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Exm.Master: Data Source=mssql;Initial Catalog=Sitecore.Exm.master;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Reporting: Data Source=mssql;Initial Catalog=Sitecore.Reporting;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Sitecore.Reporting.Client: http://xconnect + Sitecore_ConnectionStrings_Solr.Search: http://solr:8983/solr + Sitecore_ConnectionStrings_SitecoreIdentity.Secret: ${SITECORE_IDSECRET} + Sitecore_ConnectionStrings_XConnect.Collection: http://xconnect + Sitecore_ConnectionStrings_Xdb.MarketingAutomation.Operations.Client: http://xconnect + Sitecore_ConnectionStrings_Xdb.MarketingAutomation.Reporting.Client: http://xconnect + Sitecore_ConnectionStrings_Xdb.ReferenceData.Client: http://xconnect + Sitecore_AppSettings_Telerik.AsyncUpload.ConfigurationEncryptionKey: ${TELERIK_ENCRYPTION_KEY} + Sitecore_AppSettings_Telerik.Upload.ConfigurationHashKey: ${TELERIK_ENCRYPTION_KEY} + Sitecore_AppSettings_Telerik.Web.UI.DialogParametersEncryptionKey: ${TELERIK_ENCRYPTION_KEY} + Sitecore_License: ${SITECORE_LICENSE} + Sitecore_Identity_Server_Authority: https://${ID_HOST} + Sitecore_Identity_Server_InternalAuthority: http://id + Sitecore_Identity_Server_CallbackAuthority: https://${CM_HOST} + Sitecore_Identity_Server_Require_Https: "false" + Sitecore_xc_Shops_Url: http://engine-authoring:5000/api/ + Sitecore_xc_Ops_Url: http://engine-ops:5000/commerceops/ + Sitecore_xc_Minions_Url: http://engine-minions:5000/commerceops/ + Sitecore_xc_Client_Secret_Hash: ${XC_IDENTITY_COMMERCEENGINECONNECTCLIENT_CLIENTSECRET1} + Sitecore_xc_ConnectionStrings_Redis: redis:6379,defaultDatabase=1,allowAdmin=true,syncTimeout=3600000 + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.cm-secure.entrypoints=websecure" + - "traefik.http.routers.cm-secure.rule=Host(`${CM_HOST}`)" + - "traefik.http.routers.cm-secure.tls=true" + - "traefik.http.routers.cm-secure.middlewares=force-STS-Header" + volumes: + - C:\containers\cm\domains-shared:C:\inetpub\wwwroot\App_Config\Security-Shared:RW + xconnect: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc0-xconnect:${XC_PACKAGES_TAG} + ports: + - "8081:80" + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + environment: + Sitecore_License: ${SITECORE_LICENSE} + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Processing.Engine.Storage: Data Source=mssql;Initial Catalog=Sitecore.Processing.Engine.Storage;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Reporting: Data Source=mssql;Initial Catalog=Sitecore.Reporting;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Marketingautomation: Data Source=mssql;Initial Catalog=Sitecore.Marketingautomation;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Processing.Pools: Data Source=mssql;Initial Catalog=Sitecore.Processing.pools;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Referencedata: Data Source=mssql;Initial Catalog=Sitecore.Referencedata;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Collection: Data Source=mssql;Initial Catalog=Sitecore.Xdb.Collection.ShardMapManager;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_SolrCore: http://solr:8983/solr/sitecore_xdb + Sitecore_Sitecore:XConnect:CollectionSearch:Services:Solr.SolrReaderSettings:Options:RequireHttps: 'false' + Sitecore_Sitecore:XConnect:CollectionSearch:Services:XConnectSolrHealthCheckServicesConfiguration:Options:RequireHttps: 'false' + Sitecore_Sitecore:XConnect:SearchIndexer:Services:Solr.SolrReaderSettings:Options:RequireHttps: 'false' + Sitecore_Sitecore:XConnect:SearchIndexer:Services:Solr.SolrWriterSettings:Options:RequireHttps: 'false' + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + xdbsearchworker: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc0-xdbsearchworker:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + restart: unless-stopped + environment: + Sitecore_ConnectionStrings_Collection: Data Source=mssql;Initial Catalog=Sitecore.Xdb.Collection.ShardMapManager;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_SolrCore: http://solr:8983/solr/sitecore_xdb + Sitecore_License: ${SITECORE_LICENSE} + Sitecore_Sitecore:XConnect:SearchIndexer:Services:Solr.SolrReaderSettings:Options:RequireHttps: 'false' + Sitecore_Sitecore:XConnect:SearchIndexer:Services:Solr.SolrWriterSettings:Options:RequireHttps: 'false' + Sitecore_Sitecore:XConnect:CollectionSearch:Services:XConnectSolrHealthCheckServicesConfiguration:Options:RequireHttps: 'false' + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1 -Port 8080"] + timeout: 300s + xdbautomationworker: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc0-xdbautomationworker:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + xconnect: + condition: service_started + restart: unless-stopped + environment: + Sitecore_ConnectionStrings_XConnect.Collection: http://xconnect + Sitecore_ConnectionStrings_Xdb.Marketingautomation: Data Source=mssql;Initial Catalog=Sitecore.Marketingautomation;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Referencedata: Data Source=mssql;Initial Catalog=Sitecore.Referencedata;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1 -Port 8080"] + timeout: 300s + cortexprocessingworker: + isolation: ${ISOLATION} + image: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp0-cortexprocessingworker:${XP_SITECORE_TAG} + depends_on: + mssql: + condition: service_healthy + xconnect: + condition: service_started + restart: unless-stopped + environment: + Sitecore_ConnectionStrings_Processing.Engine.Storage: Data Source=mssql;Initial Catalog=Sitecore.Processing.Engine.Storage;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Processing.Engine.Tasks: Data Source=mssql;Initial Catalog=Sitecore.Processing.Engine.Tasks;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_XConnect.Collection: http://xconnect + Sitecore_ConnectionStrings_XConnect.Configuration: http://xconnect + Sitecore_ConnectionStrings_XConnect.Search: http://xconnect + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Reporting: Data Source=mssql;Initial Catalog=Sitecore.Reporting;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1 -Port 8080"] + timeout: 300s + bizfx: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-bizfx:${XC_PACKAGES_TAG} + depends_on: + engine-authoring: + condition: service_started + engine-minions: + condition: service_started + id: + condition: service_started + environment: + sitecore_xc_bizfx_bizfx_url: https://${BIZFX_HOST} + sitecore_xc_bizfx_authoring_url: https://${AUTHORING_HOST} + sitecore_xc_bizfx_identity_server_url: https://${ID_HOST} + sitecore_xc_bizfx_default_language: ${XC_BIZFX_DEFAULT_LANGUAGE} + sitecore_xc_bizfx_default_currency: ${XC_BIZFX_DEFAULT_CURRENCY} + sitecore_xc_bizfx_default_shopname: ${XC_BIZFX_DEFAULT_SHOPNAME} + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.bizfx-secure.entrypoints=websecure" + - "traefik.http.routers.bizfx-secure.rule=Host(`${BIZFX_HOST}`)" + - "traefik.http.routers.bizfx-secure.tls=true" + - "traefik.http.routers.bizfx-secure.middlewares=force-STS-Header" + engine-authoring: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-engine:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + redis: + condition: service_started + cm: + condition: service_started + environment: + COMMERCEENGINE_AppSettings__DeploymentId: HabitatAuthoring01 + COMMERCEENGINE_AppSettings__EnvironmentName: HabitatAuthoring + COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl: "https://${ID_HOST}" + COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl: "http://id" + COMMERCEENGINE_AppSettings__AllowedOrigins: "https://${BIZFX_HOST}|https://{CM_HOST}" + COMMERCEENGINE_AppSettings__AntiForgeryEnabled: "false" + COMMERCEENGINE_AppSettings__UseHttpsInKestrel: "false" + COMMERCEENGINE_Caching__Redis__Options__Configuration: redis:6379,ssl=False,abortConnect=False + COMMERCEENGINE_Caching__Redis__Options__InstanceName: Redis + COMMERCEENGINE_CommerceConnector__ClientId: ${XC_ENGINE_CONNECT_CLIENTID} + COMMERCEENGINE_GlobalDatabaseName: ${XC_GLOBAL_DB} + COMMERCEENGINE_GlobalDatabaseServer: mssql + COMMERCEENGINE_GlobalDatabaseUserName: sa + COMMERCEENGINE_GlobalDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_GlobalTrustedConnection: "${XC_GLOBAL_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SharedDatabaseName: ${XC_SHARED_DB} + COMMERCEENGINE_SharedDatabaseServer: mssql + COMMERCEENGINE_SharedDatabaseUserName: sa + COMMERCEENGINE_SharedDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_SharedTrustedConnection: "${XC_SHARED_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SitecoreHost: cm + COMMERCEENGINE_SitecoreDatabase: master + COMMERCEENGINE_SitecoreUsername: admin + COMMERCEENGINE_SitecoreDomain: sitecore + COMMERCEENGINE_SitecorePassword: ${SITECORE_ADMIN_PASSWORD} + COMMERCEENGINE_SitecoreProtocol: http + COMMERCEENGINE_SitecoreAllowAnonymousUser: "true" + COMMERCEENGINE_SitecoreExternalProtocol: https + COMMERCEENGINE_SitecoreExternalHost: ${CM_HOST} + COMMERCEENGINE_SolrUrl: http://solr:8983/solr + COMMERCEENGINE_IsSolrCloud: "false" + COMMERCEENGINE_StorefrontIndexPrefix_web_index: sitecore_web_index + COMMERCEENGINE_StorefrontIndexPrefix_master_index: sitecore_master_index + COMMERCEENGINE_SearchIndexPrefixOrdersScope: OrdersScope + COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild: OrdersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCustomersScope: CustomersScope + COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild: CustomersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope: CatalogItemsScope + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild: CatalogItemsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPromotionsScope: PromotionsScope + COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild: PromotionsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope: PriceCardsScope + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild: PriceCardsScope-Rebuild + COMMERCEENGINE_EngineAuthoringUrl: https://${AUTHORING_HOST} + COMMERCEENGINE_EngineShopsUrl: https://${SHOPS_HOST} + COMMERCEENGINE_EngineMinionsUrl: https://${MINIONS_HOST} + COMMERCEENGINE_BraintreeEnvironment: ${XC_ENGINE_BRAINTREEENVIRONMENT} + COMMERCEENGINE_BraintreeMerchantId: ${XC_ENGINE_BRAINTREEMERCHANTID} + COMMERCEENGINE_BraintreePublicKey: ${XC_ENGINE_BRAINTREEPUBLICKEY} + COMMERCEENGINE_BraintreePrivateKey: ${XC_ENGINE_BRAINTREEPRIVATEKEY} + volumes: + - C:\containers\engine\catalogs:C:\engine\catalogs:RO + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.authoring-secure.entrypoints=websecure" + - "traefik.http.routers.authoring-secure.rule=Host(`${AUTHORING_HOST}`)" + - "traefik.http.routers.authoring-secure.tls=true" + - "traefik.http.routers.authoring-secure.middlewares=force-STS-Header" + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + engine-shops: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-engine:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + redis: + condition: service_started + cm: + condition: service_started + environment: + COMMERCEENGINE_AppSettings__DeploymentId: HabitatShops01 + COMMERCEENGINE_AppSettings__EnvironmentName: HabitatShops + COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl: "https://${ID_HOST}" + COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl: "http://id" + COMMERCEENGINE_AppSettings__AllowedOrigins: "https://${BIZFX_HOST}|https://{CM_HOST}" + COMMERCEENGINE_AppSettings__AntiForgeryEnabled: "false" + COMMERCEENGINE_AppSettings__UseHttpsInKestrel: "false" + COMMERCEENGINE_Caching__Redis__Options__Configuration: redis:6379,ssl=False,abortConnect=False + COMMERCEENGINE_Caching__Redis__Options__InstanceName: Redis + COMMERCEENGINE_CommerceConnector__ClientId: ${XC_ENGINE_CONNECT_CLIENTID} + COMMERCEENGINE_GlobalDatabaseName: ${XC_GLOBAL_DB} + COMMERCEENGINE_GlobalDatabaseServer: mssql + COMMERCEENGINE_GlobalDatabaseUserName: sa + COMMERCEENGINE_GlobalDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_GlobalTrustedConnection: "${XC_GLOBAL_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SharedDatabaseName: ${XC_SHARED_DB} + COMMERCEENGINE_SharedDatabaseServer: mssql + COMMERCEENGINE_SharedDatabaseUserName: sa + COMMERCEENGINE_SharedDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_SharedTrustedConnection: "${XC_SHARED_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SitecoreHost: cm + COMMERCEENGINE_SitecoreDatabase: master + COMMERCEENGINE_SitecoreUsername: admin + COMMERCEENGINE_SitecoreDomain: sitecore + COMMERCEENGINE_SitecorePassword: ${SITECORE_ADMIN_PASSWORD} + COMMERCEENGINE_SitecoreProtocol: http + COMMERCEENGINE_SitecoreAllowAnonymousUser: "true" + COMMERCEENGINE_SitecoreExternalProtocol: https + COMMERCEENGINE_SitecoreExternalHost: ${CM_HOST} + COMMERCEENGINE_SolrUrl: http://solr:8983/solr + COMMERCEENGINE_IsSolrCloud: "false" + COMMERCEENGINE_StorefrontIndexPrefix_web_index: sitecore_web_index + COMMERCEENGINE_StorefrontIndexPrefix_master_index: sitecore_master_index + COMMERCEENGINE_SearchIndexPrefixOrdersScope: OrdersScope + COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild: OrdersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCustomersScope: CustomersScope + COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild: CustomersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope: CatalogItemsScope + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild: CatalogItemsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPromotionsScope: PromotionsScope + COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild: PromotionsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope: PriceCardsScope + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild: PriceCardsScope-Rebuild + COMMERCEENGINE_EngineAuthoringUrl: https://${AUTHORING_HOST} + COMMERCEENGINE_EngineShopsUrl: https://${SHOPS_HOST} + COMMERCEENGINE_EngineMinionsUrl: https://${MINIONS_HOST} + COMMERCEENGINE_BraintreeEnvironment: ${XC_ENGINE_BRAINTREEENVIRONMENT} + COMMERCEENGINE_BraintreeMerchantId: ${XC_ENGINE_BRAINTREEMERCHANTID} + COMMERCEENGINE_BraintreePublicKey: ${XC_ENGINE_BRAINTREEPUBLICKEY} + COMMERCEENGINE_BraintreePrivateKey: ${XC_ENGINE_BRAINTREEPRIVATEKEY} + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.shops-secure.entrypoints=websecure" + - "traefik.http.routers.shops-secure.rule=Host(`${SHOPS_HOST}`)" + - "traefik.http.routers.shops-secure.tls=true" + - "traefik.http.routers.shops-secure.middlewares=force-STS-Header" + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + engine-minions: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-engine:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + redis: + condition: service_started + cm: + condition: service_started + environment: + COMMERCEENGINE_AppSettings__DeploymentId: HabitatMinions01 + COMMERCEENGINE_AppSettings__EnvironmentName: HabitatMinions + COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl: "https://${ID_HOST}" + COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl: "http://id" + COMMERCEENGINE_AppSettings__AllowedOrigins: "https://${BIZFX_HOST}|https://{CM_HOST}" + COMMERCEENGINE_AppSettings__AntiForgeryEnabled: "false" + COMMERCEENGINE_AppSettings__UseHttpsInKestrel: "false" + COMMERCEENGINE_Caching__Redis__Options__Configuration: redis:6379,ssl=False,abortConnect=False + COMMERCEENGINE_Caching__Redis__Options__InstanceName: Redis + COMMERCEENGINE_CommerceConnector__ClientId: ${XC_ENGINE_CONNECT_CLIENTID} + COMMERCEENGINE_GlobalDatabaseName: ${XC_GLOBAL_DB} + COMMERCEENGINE_GlobalDatabaseServer: mssql + COMMERCEENGINE_GlobalDatabaseUserName: sa + COMMERCEENGINE_GlobalDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_GlobalTrustedConnection: "${XC_GLOBAL_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SharedDatabaseName: ${XC_SHARED_DB} + COMMERCEENGINE_SharedDatabaseServer: mssql + COMMERCEENGINE_SharedDatabaseUserName: sa + COMMERCEENGINE_SharedDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_SharedTrustedConnection: "${XC_SHARED_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SitecoreHost: cm + COMMERCEENGINE_SitecoreDatabase: master + COMMERCEENGINE_SitecoreUsername: admin + COMMERCEENGINE_SitecoreDomain: sitecore + COMMERCEENGINE_SitecorePassword: ${SITECORE_ADMIN_PASSWORD} + COMMERCEENGINE_SitecoreProtocol: http + COMMERCEENGINE_SitecoreAllowAnonymousUser: "true" + COMMERCEENGINE_SitecoreExternalProtocol: https + COMMERCEENGINE_SitecoreExternalHost: ${CM_HOST} + COMMERCEENGINE_SolrUrl: http://solr:8983/solr + COMMERCEENGINE_IsSolrCloud: "false" + COMMERCEENGINE_StorefrontIndexPrefix_web_index: sitecore_web_index + COMMERCEENGINE_StorefrontIndexPrefix_master_index: sitecore_master_index + COMMERCEENGINE_SearchIndexPrefixOrdersScope: OrdersScope + COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild: OrdersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCustomersScope: CustomersScope + COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild: CustomersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope: CatalogItemsScope + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild: CatalogItemsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPromotionsScope: PromotionsScope + COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild: PromotionsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope: PriceCardsScope + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild: PriceCardsScope-Rebuild + COMMERCEENGINE_EngineAuthoringUrl: https://${AUTHORING_HOST} + COMMERCEENGINE_EngineShopsUrl: https://${SHOPS_HOST} + COMMERCEENGINE_EngineMinionsUrl: https://${MINIONS_HOST} + COMMERCEENGINE_BraintreeEnvironment: ${XC_ENGINE_BRAINTREEENVIRONMENT} + COMMERCEENGINE_BraintreeMerchantId: ${XC_ENGINE_BRAINTREEMERCHANTID} + COMMERCEENGINE_BraintreePublicKey: ${XC_ENGINE_BRAINTREEPUBLICKEY} + COMMERCEENGINE_BraintreePrivateKey: ${XC_ENGINE_BRAINTREEPRIVATEKEY} + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.minions-secure.entrypoints=websecure" + - "traefik.http.routers.minions-secure.rule=Host(`${MINIONS_HOST}`)" + - "traefik.http.routers.minions-secure.tls=true" + - "traefik.http.routers.minions-secure.middlewares=force-STS-Header" + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + engine-ops: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-engine:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + redis: + condition: service_started + cm: + condition: service_started + environment: + COMMERCEENGINE_AppSettings__DeploymentId: HabitatOps01 + COMMERCEENGINE_AppSettings__EnvironmentName: HabitatOps + COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl: "https://${ID_HOST}" + COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl: "http://id" + COMMERCEENGINE_AppSettings__AllowedOrigins: "https://${BIZFX_HOST}|https://{CM_HOST}" + COMMERCEENGINE_AppSettings__AntiForgeryEnabled: "false" + COMMERCEENGINE_AppSettings__UseHttpsInKestrel: "false" + COMMERCEENGINE_Caching__Redis__Options__Configuration: redis:6379,ssl=False,abortConnect=False + COMMERCEENGINE_Caching__Redis__Options__InstanceName: Redis + COMMERCEENGINE_CommerceConnector__ClientId: ${XC_ENGINE_CONNECT_CLIENTID} + COMMERCEENGINE_GlobalDatabaseName: ${XC_GLOBAL_DB} + COMMERCEENGINE_GlobalDatabaseServer: mssql + COMMERCEENGINE_GlobalDatabaseUserName: sa + COMMERCEENGINE_GlobalDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_GlobalTrustedConnection: "${XC_GLOBAL_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SharedDatabaseName: ${XC_SHARED_DB} + COMMERCEENGINE_SharedDatabaseServer: mssql + COMMERCEENGINE_SharedDatabaseUserName: sa + COMMERCEENGINE_SharedDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_SharedTrustedConnection: "${XC_SHARED_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SitecoreHost: cm + COMMERCEENGINE_SitecoreDatabase: master + COMMERCEENGINE_SitecoreUsername: admin + COMMERCEENGINE_SitecoreDomain: sitecore + COMMERCEENGINE_SitecorePassword: ${SITECORE_ADMIN_PASSWORD} + COMMERCEENGINE_SitecoreProtocol: http + COMMERCEENGINE_SitecoreAllowAnonymousUser: "true" + COMMERCEENGINE_SitecoreExternalProtocol: https + COMMERCEENGINE_SitecoreExternalHost: ${CM_HOST} + COMMERCEENGINE_SolrUrl: http://solr:8983/solr + COMMERCEENGINE_IsSolrCloud: "false" + COMMERCEENGINE_StorefrontIndexPrefix_web_index: sitecore_web_index + COMMERCEENGINE_StorefrontIndexPrefix_master_index: sitecore_master_index + COMMERCEENGINE_SearchIndexPrefixOrdersScope: OrdersScope + COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild: OrdersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCustomersScope: CustomersScope + COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild: CustomersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope: CatalogItemsScope + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild: CatalogItemsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPromotionsScope: PromotionsScope + COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild: PromotionsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope: PriceCardsScope + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild: PriceCardsScope-Rebuild + COMMERCEENGINE_EngineAuthoringUrl: https://${AUTHORING_HOST} + COMMERCEENGINE_EngineShopsUrl: https://${SHOPS_HOST} + COMMERCEENGINE_EngineMinionsUrl: https://${MINIONS_HOST} + COMMERCEENGINE_BraintreeEnvironment: ${XC_ENGINE_BRAINTREEENVIRONMENT} + COMMERCEENGINE_BraintreeMerchantId: ${XC_ENGINE_BRAINTREEMERCHANTID} + COMMERCEENGINE_BraintreePublicKey: ${XC_ENGINE_BRAINTREEPUBLICKEY} + COMMERCEENGINE_BraintreePrivateKey: ${XC_ENGINE_BRAINTREEPRIVATEKEY} + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.ops-secure.entrypoints=websecure" + - "traefik.http.routers.ops-secure.rule=Host(`${OPS_HOST}`)" + - "traefik.http.routers.ops-secure.tls=true" + - "traefik.http.routers.ops-secure.middlewares=force-STS-Header" + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s \ No newline at end of file diff --git a/sxc/10.0/xc0/traefik/certs/authoring.localhost.crt b/sxc/10.0/xc0/traefik/certs/authoring.localhost.crt new file mode 100644 index 0000000..9cdebe3 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/authoring.localhost.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDCzCCAfOgAwIBAgIUawlhmAcg8CLeyvsaytNmKthOIAcwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTEzMTkxNzU1WhcNMzAwNTExMTkxNzU1WjAeMRwwGgYDVQQDDBNhdXRob3Jpbmcu +bG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoshcMsrm +T/iaE6/XYzbF6HOeOzkEE2+Huid8lyDYvb61ttnv0DYeNmmIdfRaxFwA0maEpfpi +epOzVNfhTKaMtZ4XO2npCJ3N8edsWqCZASA/J+dU0mQWfH9kKJObFim6yqH5Q6NR +0qPWB/n4NNlzFO3KAz2z8I/NeUvu/kWMLCpnmO4gGU/4hOgLDS8YYvLDXww9Xzu4 +uFX21FFn6qC5H4qb8rcKmyqCBfCxiBhqhjp1Rkmx4/F3k3KwzvN56ANkS15XHTbV +BX2YgU1mNZNSDo/kiX99kyema5DMDWu0biWn+GAMh99WCBrnrF6+TmCGOuUdcOb6 +ZldTDwpoLhtpJQIDAQABozowODAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAeBgNV +HREEFzAVghNhdXRob3JpbmcubG9jYWxob3N0MA0GCSqGSIb3DQEBCwUAA4IBAQA6 +i/kLw2dpJuecOGXDB18kGiieagQJTkaNZjCIroY2iqmHZiHXo173nm6CeIUbWZ/3 +cvyryRxvSln33Hbvn6ZjrPceqJnCHq1ikTMM1lFEfZ3yIaYxppUm2ekm4a5/BjGw +m237BlIRvHsTvJ97QOftB3WCAANKrHxDZzrUH45IfHxHn+sxxs91svtD6gUoI24w +LKc/SmrDvB1SullYBVJiWSknz27jRGdkaxhDVwbgMr6ArVU2hKoENmxxTDhBKWz+ +hkkuE816UA+iHEkK0oiuCag5ECFHdewmJLWolOgBphTpi+V/u5DP8AcjnrToewDN +rZopgrVy5WIFlm0GDY9r +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc0/traefik/certs/authoring.localhost.key b/sxc/10.0/xc0/traefik/certs/authoring.localhost.key new file mode 100644 index 0000000..4c3d145 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/authoring.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEAoshcMsrmT/iaE6/XYzbF6HOeOzkEE2+Huid8lyDYvb61ttnv +0DYeNmmIdfRaxFwA0maEpfpiepOzVNfhTKaMtZ4XO2npCJ3N8edsWqCZASA/J+dU +0mQWfH9kKJObFim6yqH5Q6NR0qPWB/n4NNlzFO3KAz2z8I/NeUvu/kWMLCpnmO4g +GU/4hOgLDS8YYvLDXww9Xzu4uFX21FFn6qC5H4qb8rcKmyqCBfCxiBhqhjp1Rkmx +4/F3k3KwzvN56ANkS15XHTbVBX2YgU1mNZNSDo/kiX99kyema5DMDWu0biWn+GAM +h99WCBrnrF6+TmCGOuUdcOb6ZldTDwpoLhtpJQIDAQABAoIBAAuITFfg3g4+W5QX +ehfyUnUUc9pYQLyrwx7iG0aNsi1HLJKGwCGtI9jRAzTwGdoddoVxc+ZaZc2vVx4k +qTaH+iIH0DeKWlMc8vE3ZwrIo+5bfX3zOqQpKRqq38qsImmgjTY74W/0SyC0ML6h +6/66hRevfQdbwLrDRVhZk9X50WNzhK/TRP6irH1QRTgdPUHic4v4t3QhOZZU6Vth +hbwz1mKeaFIXF2z2ut6QP0WT2sOHXTB4P7f7dh2j78JN3TW4kb0HtKVMnVXce+jP +qfHEw/eIV2kbXiQLlHRIuHvPrx49T3EcV4PGqViIAj7gFBI2eu7R+B0rogvELeNG +HzltesECgYEA05uxdhjHJfzZvnccyjbljVIXPnSSZkPHmdd78aORaiN/7ouHoNgU +wfUuoSf+ptxfEv/hd8LAHcNFUV/8zHDcX+O82Val0LU1uleNOSzKPI+68lK5l652 +pDqI9V7Wh7tAp6a3kQDqlXDbjHTmHoqSH0p288g+6yJk3ntuYLylhlECgYEAxO6E +koThh9JkuWetG+FpmLjb4pW2oCrdqsT8qGl9G8rfAyseWPE50aNOHtS1Oy3KzaKu +kjm3/UnAPDASxN3GK/W/uWDTJV6SNG+TzeZJLmacGnBnNuvuBHWqj1xdUzBAfZ8j +IJmjQOIopvsiOkwS7defyhletz7AdySeX1slfJUCgYEAzxP/uDhLOwuT8mYSEHlk +bsW05XOiiN0viYdsTW3qMdoHqeN1mJucxKoxNZg0BgqGJ8usU0yMQRQE07uBYnfX +0SbGelHm9rU+nNps41THnDhzlAwMfzlF9TUrLiPfAPjoLqhh307sQc4tq+gCAkVM +9b4jZjHCEMyZtXdI7vXtbeECgYEAtITb+59ZSXLAKAB0e6kubfOOhG6ugLWqin6W +CB7isxZNRY9B+0/sq1GiK7raAkxgqg1lLt8/3Cu9zq5WliWhIezceabbBldheDWL +bGObU7B1ifrdckfk4CuoVE/bsIT7qOu2fIy5TKHDmAV/A6d2dpWAgPaujxUzwkNL +9acMft0CgYABLupAu9kgH6pJnNtss0SDGT3K7BJCix1xaPjJb+vqnO0R7BKl/wmk +iuI1oDRGK4iJl6dCw0nqCP0CVp2dgaKAAHcngEci/IZaetuQXqf7iTxMmZJFbleg +eCwUf+EBb6WeAtbWnkwF23G9WQV7X8sptRAK2Ni0nQ9qUejnF6qx7Q== +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc0/traefik/certs/bizfx.localhost.crt b/sxc/10.0/xc0/traefik/certs/bizfx.localhost.crt new file mode 100644 index 0000000..16c5ace --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/bizfx.localhost.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDAzCCAeugAwIBAgIUawlhmAcg8CLeyvsaytNmKthOIAswDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTEzMTkxNzU2WhcNMzAwNTExMTkxNzU2WjAaMRgwFgYDVQQDDA9iaXpmeC5sb2Nh +bGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDMeps0kTXqdmSl +gbf4FVuGIE/1Z3miXKp2Hw0AukkuSi8pHscUIAH42QuUsQpvRN9jCAS2UPYls0VK +DOdGqATRIEOWTY1Ekh66/L/2Q9Irn7AFxdk0pMZwLP48RtToIYhIB4dkCB0NwXg1 +bVdlBE4I8t0S8Hqr+kD5WFdHowX0Mw1+tz1pp6XJLsbSpOpkqy6QtnU7FkSyzv7P +GAiWrmuwXMKFQqHKu84glQ+GgmpDtQDvi2KCRXOWRh4a0sfYhF/r+qDAELepZEbD +wBwwIzd9KHfg8xw1ElDbJIFqHGFsUyKm46BB0rrb3TbsotLFgGZNQ/iwPjRHyX9n +Gs67AeELAgMBAAGjNjA0MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgXgMBoGA1UdEQQT +MBGCD2JpemZ4LmxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAQEAFuLEY3Puw9Yk +6I6M80/sd1w/hoX1C4iVGxpioP96Edpv6Eu7NQiGHCx7IFmmVQwVX77Apa80h/+s +PHEs3F48agV807+6YWWTXVI55qioVB6pql2VjZIY4RfK8bQLE4ZdWobuJmDtDUpH +IoIV75FZgnkC0CzlbI1t6we5SOg/HRhfMc6PvIoXbxS+gzBHTgX8IfxFZCXHjqfd +EoLrNFxsSYugpiiPSvuJWpGYi/XA+P4bZG59Sxbo5zTuWQRCWEbW2wIUw0y5RH0x +agx3aa/ZZAyqpCVwH1YNbjZVAtU2P/hHMs4KDokPbrwa6UPW367pzoSAdGMElgFI +sSQ59bQSpg== +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc0/traefik/certs/bizfx.localhost.key b/sxc/10.0/xc0/traefik/certs/bizfx.localhost.key new file mode 100644 index 0000000..a7090c4 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/bizfx.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAzHqbNJE16nZkpYG3+BVbhiBP9Wd5olyqdh8NALpJLkovKR7H +FCAB+NkLlLEKb0TfYwgEtlD2JbNFSgznRqgE0SBDlk2NRJIeuvy/9kPSK5+wBcXZ +NKTGcCz+PEbU6CGISAeHZAgdDcF4NW1XZQROCPLdEvB6q/pA+VhXR6MF9DMNfrc9 +aaelyS7G0qTqZKsukLZ1OxZEss7+zxgIlq5rsFzChUKhyrvOIJUPhoJqQ7UA74ti +gkVzlkYeGtLH2IRf6/qgwBC3qWRGw8AcMCM3fSh34PMcNRJQ2ySBahxhbFMipuOg +QdK629027KLSxYBmTUP4sD40R8l/ZxrOuwHhCwIDAQABAoIBAHC8pHe+G/DSJ7mM +pIaWF+kCRbNywoA/AQixI/UjwBdSdWABhRdWcl/mItlvJuakHVm3YQm3545voaMr +LBQrrMQ0Oq9SwLFuspy7n4bCa8z7dQwpwhChTHsqg11uXBJD8qRr6jy/sG0WHxWt +3EJotjF+3V6E0c2h41LWXwCzJCQ3R7z0dZRPz1MQ4sp785rB4c76tuZCJYVyKQaL +tfebKbnVp4Pc1ljUVFB6cwp8fdtfMCc1eCJwyOMukFPaiN+dskx9xX0ps66BDVH/ +xf6cE770bjX8Vgh25EU/gshZX2AEWyZ75enL/NYVTVsDIaPare6vJXPex1Inv/RW +G/LHFHECgYEA/8SIHobGXUaTqBOXu7tqUYreO8zp8LsGdNtXueVky9QIBJJnvCTJ +m3YwQmGzOEOEmICMDjHJIX/dBDM2twTPu18a1IDGXb5z1ku0pg/YcQZHoZ+5RczA +6RVCVx1AHsXx3mJd/6I96J+NflDhVaGrxXFcc/wTxiPr4/SLBOsfvdkCgYEAzKom +QrzWlmrBrWYb6UX5zfYTsjbsq+F0MkrVgkwFjM8tvngiZ2ICzAGYyXP3L/YUHTPy +de7c5KHx9uGEfv8lfDNDcMYqPlA4Y1q2ZIRxucg4G6YXHTc77Pujb1ushFTkEx0O +/MPe/vvJtNnmw+BGAMW06rLKJQRWUdAq2rQNs4MCgYBRGdODwn6x4wg9GoFZkPME +ikEvuylPIS7J7SdjFd8hVsl4Eah9GzkmZ5Kj6fD3XUl1RgWjFpxNWAsQIuEtpYPt +SRnr2i2MWjDG+dh9c7bRGAmssUYBYQymnAweLXNAjsnEF3Lw9VQmKDmonSLmkU4z +XF/Rk1P91zQcY1WVqKy2+QKBgCC4u3FEG9Lksp50itXa+DtzsmZ13ZUFcLxxtn0k +hmai4R9ouadpxiSzxKfAwK6MW17n5UXxsKNlOPhNyg8739RhpdCr/ikETl+kKzEa +88vONRpGjb+ACzaybMjrEUP/Bo//v1uuPULrIq6lf/2lJ8wL0AcOGr+cV+iwrYlV +7DLdAoGBAPEGHP2jFTKvdfngRfKgbFMY0SzlglLNBZXyHTjps5Z5uNZEKGZC9idA +WBSNHeD87Cwp1GkwHVMdmqDwVPn1dFZvXBizsDUyEq2DJ1USesWKR0LXY+j14P2d +A7ZDtndrxCYkHIT1E/qv039MlHNnslae0EmycNNDY+4zqkbkZgp5 +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc0/traefik/certs/minions.localhost.crt b/sxc/10.0/xc0/traefik/certs/minions.localhost.crt new file mode 100644 index 0000000..1af28e8 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/minions.localhost.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDBzCCAe+gAwIBAgIUawlhmAcg8CLeyvsaytNmKthOIAkwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTEzMTkxNzU2WhcNMzAwNTExMTkxNzU2WjAcMRowGAYDVQQDDBFtaW5pb25zLmxv +Y2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALk2NYAFYyqF +DX1jTNy2qzFX0DqHnrP1ARY+5OY96D1yifJdC9AIGEka5M/WnPbL63Ccz9FfQtZn +sNS03kr9bWcmcwRvC/MNCDHIDIg8DMhmOQ3DKYNT8LjfOEW93wN1P+Wp8hOhr/Gt +T4sdgJxlkbwsl6t8bdMdXx756V2I+bjK5e7l0cbkJs2ZX38tf4FLlEk07qPg188I +xh+fYJzzc6OHvqJFGeKTYZzL762F3ntJ5uo/2CKZygAHlmxmegRGxODI7whseD2D +ysnYln4mClgLMxGCo+mWV4l7gVwipQqenJrQKU6JdL63u5/RwC7iLTvNExwoVGiE +GloHFau6BGUCAwEAAaM4MDYwCQYDVR0TBAIwADALBgNVHQ8EBAMCBeAwHAYDVR0R +BBUwE4IRbWluaW9ucy5sb2NhbGhvc3QwDQYJKoZIhvcNAQELBQADggEBAGTZ64jK +K3jIxV/sKSqGdexB/koQ3qHKpfHn6X1CnLwsoYWVFz/OLgqLSFRgsJb9k3eL20r/ +XTEK+Ac2POs+3xLkVe5TPWjJvz/2O98ldsPHtxmY4dyjB9S6iSH3G9vxzZUIWU6t +PMBrTwU+JDHjqp3u3aEVMGmYIqBv0Gws+DiNRvgBJMXVr0k+msydSnxgTouOG6E1 +ygSzyfoVATQ87+vfIku9oiOnlLZ0BgRcByGqlbf255lf4y0WpREXK7J+CRBlnC1a +slb+ZPJjlc2m2qxFp75ZYsK59Pr81neVegEsHIsSQX2ImHG7yvltY8ceRIcUHhk1 +Ob5uS/hG/Ykxn5U= +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc0/traefik/certs/minions.localhost.key b/sxc/10.0/xc0/traefik/certs/minions.localhost.key new file mode 100644 index 0000000..7d30311 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/minions.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpQIBAAKCAQEAuTY1gAVjKoUNfWNM3LarMVfQOoees/UBFj7k5j3oPXKJ8l0L +0AgYSRrkz9ac9svrcJzP0V9C1mew1LTeSv1tZyZzBG8L8w0IMcgMiDwMyGY5DcMp +g1PwuN84Rb3fA3U/5anyE6Gv8a1Pix2AnGWRvCyXq3xt0x1fHvnpXYj5uMrl7uXR +xuQmzZlffy1/gUuUSTTuo+DXzwjGH59gnPNzo4e+okUZ4pNhnMvvrYXee0nm6j/Y +IpnKAAeWbGZ6BEbE4MjvCGx4PYPKydiWfiYKWAszEYKj6ZZXiXuBXCKlCp6cmtAp +Tol0vre7n9HALuItO80THChUaIQaWgcVq7oEZQIDAQABAoIBAQClr70Enc0syIJc +3WxxNmjHZ4s8EP8EdfVW9UTIRDFyZvjI/DwJCnTPUWPIGnGoxpwEzgOLhfDA5Vnn +rzX9V+F7GYZjPQQvlkTyY8fyR+YXkHsRuLl2Zq0+dVJd8ZGEAmv7BKEutsIzLZuv +E+FuB97ru+ii3FlTNz9U8rS1nEfp6vNVvRSfRhFttoyFvreWzl/Rtslt9z1oGDSJ +8DTuEBujaGX85I4Hofqxh7/FV5v2vWrShRqcAr/feAuA+EaiCqnknBnhEOwkajxU +Mc3+SOt3coeHjPcDsbkvJnAjMzHJCHaA3Pucxv1ZArxh79ykF9IvltLBgHHA1IjE +QlEx1BMxAoGBANsy0PVy0mRh6tkWJ0cvX5DEFsFdtTXgc0bJ40FwFKRYPYAuDfA+ +l1DTSawQa1OdFzfoh/F8Oxg5K4Q7dn9n2n3Ng3sum4BLIG4s0yn9p+HGNJpasCkQ +pHrtYfC41uLpBnoZAxQzyFbvzRhZAF5jKIE+5XOQ43hLr6OIuuLEYKU/AoGBANhO +oynttN80pXNNFPkWExvZjgz54DMK+gv2VP1Z4DeRjkkevjKMJLdl46Yv9gPlwTeg +YV6DupEAM3nHJX8mm9aG9S9lcfcjNnz8HVNH0fhufudoOQeEJNLpi8dVnB2HtV// +zbERlz2zh4eAro+XjVm5sOROdKZzifbkiCLRG/lbAoGACR4V/v+lrLM994WqYJWh +3f2qDKT/MpyBbwJax5AH68YX2MsRnVqdJKmFOPj93d585sBvVyYZtyo5myh2B1qk +hfMUcv0/TpjRYoPOzMJWR1fdPEZlaW/dx5c0KbUmiw2yTUXZEPAOdz9GQqsBDuwE +9UtOc/4k2A4d4il/zIrqkjUCgYEAtsAppmEI8ZP/PR0g3RnDZ0I1e80ZmMZrX/Ps +9mgawZgeiLSKqRYyZyiUX3Ih/kT9K8w6t6m/1IZA92BD09uAyo0XVcX1tYFwpcQz +2orRYX2phkVN+YWxvuhGilFQJrrjiIoM9M8R4rVtihQ0Z2j5qZbzVtDaSU9QfuGy +Cwh1BAUCgYEAyxxCzetjJ53tA7UFa39V7+RJHsz8Xgf3GZnAjJjQTmc1NdevZoz6 +T8plmRJ8cMpwpyOPx2h6MRxlXm5WTd6qd9eTYKaRHdlHzfvzKLcSVE3H0qMQqcNJ +X1/NQwVdrl0FH2hy6GdsLB75NvobuJjHQitVYDhOr7OqwqZIGGUgQpM= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc0/traefik/certs/ops.localhost.crt b/sxc/10.0/xc0/traefik/certs/ops.localhost.crt new file mode 100644 index 0000000..794cf9b --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/ops.localhost.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIC/zCCAeegAwIBAgIUawlhmAcg8CLeyvsaytNmKthOIAowDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTEzMTkxNzU2WhcNMzAwNTExMTkxNzU2WjAYMRYwFAYDVQQDDA1vcHMubG9jYWxo +b3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5yZIWhjhvBNEuem3 +OxBgMyAPfPqX6eDVWsf7+Mlyiw5uyf4yUm/48Nkp2cP5bXZd+zPxIgRyRiHnvDTz +GIDfELgzQImsek5CCbxIgACtsKefVxpHEMC4EXk3eCsihzZxLRwIa/yoQM13dKs/ +oNbJjtF+zzbO7MQiza/3Ug0ixUhWJR1Z4S+J7J/xrJYlWTe8DYt06/8w5WRedvVI +/o/ufZRZxYXGty9bck3yeF8HzgS9KaBwCtxCIhiDJ7+swZXW7Yp7inpyypoWsSBx +yfWR4BZsuLtI1Esh0qqiI3QojzFWsIEgQvJsAjFc4621cFuA2G6dsTGgJQnJd93C +jNiUpQIDAQABozQwMjAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAYBgNVHREEETAP +gg1vcHMubG9jYWxob3N0MA0GCSqGSIb3DQEBCwUAA4IBAQCJYWGaqLsk8NEBa8xg +MexvBomSbBaSRAS5fKr40bGgEvulG+1W1WJIQ/uuHV7zgDkpnqcu5P+aF4b32ujI +DJqYoC9MTZu+Sb2s7Z/SIcQNeTobvd6MfH1KVvOs375KM5zt4hajLdD/lt3VyiFQ +1a/HdiWLIwNmuXzvHvsjMZoffKoxNI8SA/3TBjCo8EpC8AUFv5BnG1ca2leEJM3t +NU+MfSEfdpQOURPgKazXm48u0TXCz7YFGnDIkLswTBonOYfusjNO3AbUb7YQv4Gn +LPijiybI2GoBjSkgO6l1VDrh3GvMb583yJXG1jZNbBSiy7xGA5ffJjBqfjKmK/Ue +2i7d +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc0/traefik/certs/ops.localhost.key b/sxc/10.0/xc0/traefik/certs/ops.localhost.key new file mode 100644 index 0000000..bd6c748 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/ops.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpQIBAAKCAQEA5yZIWhjhvBNEuem3OxBgMyAPfPqX6eDVWsf7+Mlyiw5uyf4y +Um/48Nkp2cP5bXZd+zPxIgRyRiHnvDTzGIDfELgzQImsek5CCbxIgACtsKefVxpH +EMC4EXk3eCsihzZxLRwIa/yoQM13dKs/oNbJjtF+zzbO7MQiza/3Ug0ixUhWJR1Z +4S+J7J/xrJYlWTe8DYt06/8w5WRedvVI/o/ufZRZxYXGty9bck3yeF8HzgS9KaBw +CtxCIhiDJ7+swZXW7Yp7inpyypoWsSBxyfWR4BZsuLtI1Esh0qqiI3QojzFWsIEg +QvJsAjFc4621cFuA2G6dsTGgJQnJd93CjNiUpQIDAQABAoIBAQC1Ca3HKw+5nxnH +xn4k+2ltAWJAD4Dlw5s208TMkPJuaOpqt/WvzVUbReraTPxROFDZS1BDxVm/BhUa +uhnfiierT6mMlYeJ7zsXpujdoCppXo+Ux9b7DwXbYaYJLzeG0SQJIZiTAzrALmyt +6uYV0cPhYMFCB/o/RErB8FzzXahq/ASfAXZ3heCtD5YA64pViH9Wh6d4jd7FyKwR +ps12sEq5Mh8BOTFTSCyTtaYKpzmqCb66YmiQuiTVItVoOr7HETvpIR7ebevcmo+5 +2MApjl4mxF1jkgec+UDnL8Td+VssPWVc0qyfHYd+HTx6eiwUaHD06LUrILHRWrER +qHPPmOpNAoGBAPjYnjna95PIIIJH0Gcz/kpCzeNb4DCSjJz0zv2yifPFM0KdRyE2 +n9WjZzbpfA2FHRpTA+E9ifXIhmFCJi28BlCD+OAZbLh3esYAUkVEVZgoyU4j3wiU +GfDeEE21UoYU1ieRApVvOanNWeu5IMH+94DzuXPQgtrFQ+5iKp/TP1ObAoGBAO3L +bSXlArMfKjgx97xLcaYGdICwf3EPsJSQpMozJGutnf2zGpbvv3zPu6rajf1+0SOR +frkmUE95waPW03hW6R6SewTkp0ZGQzpigp/MzEUzPcwax+V256wNmfxDfNqnR7hY +oAuwPEEX742n5sltB20OfTRFtXbi+YnZApK6QNy/AoGBAOO4L0tYcvlcyUsPdsoK +jWjdq1Wk7QrmASFc8dK9wHpAesE59i6Rs0CosLpSfgBNUS2WzFUhoI83+qkkBJYT +m1+w9V32RkSkqchp4N+cQgvlPxpvvxk1lmuSey7xgFxM0xEQJWIkj4sw7VnGZxDA +RzRNVOeD50tV++05DjKF+UyDAoGBAMIFhnQx7Eb8ebVKR+lx4TPm9m3+FK3KcHh3 +oI1+twvIqC1VUq+uxJ3w3R3ln48jRz9vOmeVdFe0b6Pf58G7oBAa0pdGfZmgQMBF +mnEKZ+1ahuSfQVTf9N10Z5zl79x0OteWMFf5HuC5x/Lb+TmGZVW9Sbk523s6bQLl +du0DXWL/AoGAZeXq7+ye68H9ti/oMhD/Nj7gYl03Ogj+ImtHJK12oOS9JoOWflsk +a5yJd7pOn5wdgcUkXzFjWBUSoyg7yu/PKGk/xNSptnEEyurfpJE5gCfuOKioy6sz +ztEdg5nYAFgQk7kZr/Wi9wv+jd6yfTsVj86SqML7m2uA/081AjXAh4M= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc0/traefik/certs/root-ca.crt b/sxc/10.0/xc0/traefik/certs/root-ca.crt new file mode 100644 index 0000000..87961ef --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/root-ca.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDKzCCAhOgAwIBAgIUcJCX7Sgg1YULNCu0XBsaGSDKfz0wDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTEzMTkxNzU0WhcNNDcwOTI5MTkxNzU0WjAlMSMwIQYDVQQDDBpDb21tZXJjZSBD +b250YWluZXIgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +AKPbYZ88P5LfBRIJkYKrObc6fJw/rpTV3wcnYRlNTVeIppbpNocoyTWr37+5N7fC +Hx23nusA8TlGFkW1gkvHpCBUhab/XsS8dZ60o0MaZLUfQOzY5SxZ4fDNPTA54RC2 +8N14cop5jzzT+p3btiJyOs4alaq7UxNx9u27Ltha1U9umqCcUO3xK1jkP+L9JAEH +ghekAUmDVvEYDvVki0tiKRHISuzj16AAQ7zyoE7wSosR350oyxw84+OKi/SE5Up0 +RqB7PkdppRJyc+YD+Cyceh9vKU/pJi+9jM6/Ux2g94C3udj9V8vGM+A660X6sdUI +6tUV5MO/3Wa4AIsUiP9UhnMCAwEAAaNTMFEwHQYDVR0OBBYEFOh994nrx+ICay6y +Nxe8kyh31EIrMB8GA1UdIwQYMBaAFOh994nrx+ICay6yNxe8kyh31EIrMA8GA1Ud +EwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAFayI72b8OhPm3jGlfpxQoFp +0TmGTRXMD1VYWcIn1q6wNYkC3ZXB/NNLBf0Xkc5Cb/+bsurmCSdxcBbLFi20MojE +ObDj+TJa1UormQljkOfBFX98UIiuXFIWDlP0KtoGhQB66p2sZzLS9wQCjBvbSpmB +Zrtqls4D/Fm66borUUMa6mrO0kuPM4dGNZIFFGcaZzlJZ4RuFMUv6rdOFgLla6LQ +4LyGGBvnZCVv2NMJ8gh1+saJdeLO9GbnMJK5X/QoSx1yw+zxsIdsyc9FxZtcXBB5 +SqHLGsRt9rLP4kzpjV5IqcztRCjBxOUedaacBMdV+JCBrOeREvTZfz6jGVjNf7I= +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc0/traefik/certs/root-ca.key b/sxc/10.0/xc0/traefik/certs/root-ca.key new file mode 100644 index 0000000..e98ea2d --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/root-ca.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpQIBAAKCAQEAo9thnzw/kt8FEgmRgqs5tzp8nD+ulNXfBydhGU1NV4imluk2 +hyjJNavfv7k3t8IfHbee6wDxOUYWRbWCS8ekIFSFpv9exLx1nrSjQxpktR9A7Njl +LFnh8M09MDnhELbw3XhyinmPPNP6ndu2InI6zhqVqrtTE3H27bsu2FrVT26aoJxQ +7fErWOQ/4v0kAQeCF6QBSYNW8RgO9WSLS2IpEchK7OPXoABDvPKgTvBKixHfnSjL +HDzj44qL9ITlSnRGoHs+R2mlEnJz5gP4LJx6H28pT+kmL72Mzr9THaD3gLe52P1X +y8Yz4DrrRfqx1Qjq1RXkw7/dZrgAixSI/1SGcwIDAQABAoIBADkD2RAjUqu0VntU +QQGKuuZ6v2lO71xynsxKc4ruTv8qWW0hcQvOsVSvnYeE11JlhZY9klqLVWRscsuG +wPPFX+KwBmF5cmxad0Ll7/klce1kFp9TSUsJa4jyoVvqh9ndDirCAnkUmza7O/U5 +wkJyJOwabAGgdOPLP/SwsTgvQxIEB5UuRkh/WT1EAivSgKmy42/7hncbRFxY3pFO +gUxbB9Jwm9lciwm0B7IFeDBPOjErHzN12LI7Ib7u+EDwjj89tROreIauEB0iznHi +SJnCg/C0TsAUlMLdYg+n0Q58McxQCEBCqwW+qHr+me9RZRkzJzjmFlK6KZD5QwBM +LJk6cuECgYEA2b4sWoKmX5DrpONXVE82FWEQXqjIFEZNzLhq2ccOgEhv+t424CfW +l8hLAYn+3o4+61pgtEK0sml96gMUKY0B/OoRcBzjus7WqKAk95YG4J0j+5f4Vir/ +j3+ZbbhltwTVbFtuvzg7ZO88wZfaupIkBuPPMuiaQD5xRiP4MuJt2pcCgYEAwKV7 +MddnVfHxVld5IEA3B9NfP88CK6Kxh1JWe0kBH39K806/9O31HithUer7z8K/diPr +ptt2/sGp8RxQosaEg/umVZLaFFk4PuTekfz58SBPOeIdCLGwmPsn3SbvXDqpiYY8 +VtTnd1B4StfNvcEpluLNXy2KgsNjpZgzUT9aeoUCgYEAvLYcPKlkxgiUoghCZJhu +GCNSi6eeGCxCOz5NpMbnI3kkS/kQ+D6utkdp8kCF+p6vm0xt6WyyrLnO3eSjMcu6 +wFagnFj9aabf1a9NuqJ0/XBTgjbYjN2hNd3xvG0HApKW4d1wYxu6JiVNs78HW5FS +1gHUTpvXK/yyMYb1Eiy55qsCgYEAhevD648ZuAZ8RhCDFKdvWhJXuaz3jkwIa9ES +a5wBmtrLyL5q9SLi7nkrq13WdcSlgsRP0mvomgsZT5Lmf3HPt0yeggiXb+PiFN7X +1tbtDfHvAYcttdiIsqCOQtAJP61MJF1b3uUcj7YyGZ1R2mLIvaqnKE4pZuPbhsd6 +jTWkeV0CgYEAtj6XiBVzG91ebHy3h1LR4/TlVtx6Vi9spSrBdVE/XcSe+5/wTMZ0 +L0o75C8wIVLEWsKyX/t4iB30pERiEizMTc015QY98r1/s31iazILJhXP9MKaJIXX +q00PwmG8wx/ayX7az+o3hZ8dSuQKrAQv3IT+hvD9Wtq9BLiFnyDbdrY= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc0/traefik/certs/shops.localhost.crt b/sxc/10.0/xc0/traefik/certs/shops.localhost.crt new file mode 100644 index 0000000..26954d2 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/shops.localhost.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDAzCCAeugAwIBAgIUawlhmAcg8CLeyvsaytNmKthOIAgwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTEzMTkxNzU2WhcNMzAwNTExMTkxNzU2WjAaMRgwFgYDVQQDDA9zaG9wcy5sb2Nh +bGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCyZTCLejP58kcD +T5H7mk0rKZIhuHSHCqsaBcKrOzFlY7lCTbiRcWmgLjjtMreU3rQ3p3XMkhJVel0S +UpsO9hDakAz3B9DB2SsmYH1o2qXsrS3iPooHUKaYZuZgcy/hoZ5aDPthGSCOq7dH +KX/V+J2NZHAz74IUP2p1dRFMp6aUM24LU6ZRDxUo3K/qpT6ncAfCMFQxCcvOeBld +pWIRHBN6W9RWa29uJIjLf+ikjc8zZUl83GY+nG5e0EtO71C2q9sOtAVdgRjSRPpq +wHjLykAvotd+IWsZKqYFX6vS/T7OaQa+/IrXmbD0iPRtvzN2mK7dTU1wXcVHgkMI +CBkzxNcnAgMBAAGjNjA0MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgXgMBoGA1UdEQQT +MBGCD3Nob3BzLmxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAQEAZXzALYzr5a0P +Af5bgY4OwmoNzBtmwwAw8CJu3HjcqssZmz+DRSbsq7fcpKtin2X85HnU1x1sPjt5 +Ej+PIlFeiRexk1NXnn2wJhPfZODTR/Zd3c9rvmlmoH1/r0Uj0v3F60FkM2G8Ico9 +j3TPWZ1YIEpt+IlDLsIjZGJ3MQ+RFvzBaWtIJEiHRSB5NqqQn9C5+QKFt2Ieoqrs +Hu6MW0Oct882ooUTzoQcibCOE5muA8y+vK5KXm8SE7n0Eej6wG750YfgUB/m9Ing +9HAQGrW/WIWUktlcmpLK0ywvv8lQT3lhEQy9RPj4bt+ZkMdp/FGI2bbaG6rZ/gtC +oSPqhKdGxA== +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc0/traefik/certs/shops.localhost.key b/sxc/10.0/xc0/traefik/certs/shops.localhost.key new file mode 100644 index 0000000..3c9852c --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/shops.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAsmUwi3oz+fJHA0+R+5pNKymSIbh0hwqrGgXCqzsxZWO5Qk24 +kXFpoC447TK3lN60N6d1zJISVXpdElKbDvYQ2pAM9wfQwdkrJmB9aNql7K0t4j6K +B1CmmGbmYHMv4aGeWgz7YRkgjqu3Ryl/1fidjWRwM++CFD9qdXURTKemlDNuC1Om +UQ8VKNyv6qU+p3AHwjBUMQnLzngZXaViERwTelvUVmtvbiSIy3/opI3PM2VJfNxm +PpxuXtBLTu9QtqvbDrQFXYEY0kT6asB4y8pAL6LXfiFrGSqmBV+r0v0+zmkGvvyK +15mw9Ij0bb8zdpiu3U1NcF3FR4JDCAgZM8TXJwIDAQABAoIBAH6GyoGCcO7r6XXt +r6p17Bma6GxGOU+2P1i7kTCFUSmKK1FdcnSlrbbQUcvaVt6dfdCjUyd+ysYZfX2L +XTKlT5rU5H0o6+UxNCuJ8Ci4O0q8IXj/xkId76rUAL2TtPgg+wD/iCN8AN1v6RPt +2R9Xr9ciz3nme6oEuGsKVvS5S6p8ByiIRHqQ9fgG2pqO9DZW+V76rAdvfUeZ83Fd +vDqfmXO9XZVicnhlaNbxT9l4Spbep3GKOmqppU7RZaPr5Ja7SqMaZ5Q618XkIlPF +l15wLSti+zygjvNUqYn+RCGVX1gfzQ9Uo5Zv+Rxr+iNg4XajdCggzwuy1Rq2wbb+ +EoVIqCECgYEA6toRCKLUZeDYAmzb2AyWWxaw/k9yIHVVkYA4HXObtYOr+JM4ZErY +9j3DZcJiWcTX81PexxxPM3Mq6Xy1PFj7lXLR2Lfi9mKCXrV0uTJV+1lwK3qBw9N0 +MPdJrhRtzlSfC8QDlkCRYgXHn9ZEKZ7mGywY/P0IECKhhuDY9t1zUN8CgYEAwnWn +1p+mAETwx/azdGN4pRHe6D+H+uGxOXmO5iumsupB69nvKKR4DimILK/JSuV/FNcK +cX5uUcYrRzOfzOh6emEzZTdxdSTviYuBX9AMDtfv/p4v/xtOmlZVn88kAToSYveG +xMo17ItZhZcOcqGNv9To41JsL1Bo9I/1yuofWrkCgYBd35R3cz6bCmjNb13g2gcv +mb5dqLvhpYTyh+HmQ9O1llAjKBWeYRygMMft4OkXIMuBA8FErVgrJJm+go6e9KJ7 +dk3S5o3eFjouSTHC5Q/hTDq95lYARIFpIS9eWeQaWVDJjywv3tc96zmD9k2ApXcs +3U+PsESMzorqMu4GnzX82QKBgQCcSLDmZhKk/sNBAn3Bmbw5dj5fC8g+kqq7lX2K +cSSdgHYQlmuGj4BJaYme2Hx/rChRWG51PnZtVEYuCEhzB5h/yKTkwQV3b4LwWWVV +2sAGIfgo+3t5nLm0gpR4RqMaNVDXpzXx7M4f2PLO0dNzv3FL7lJpeDGoaQihHR4e +wcEHSQKBgCx/xOEQBP7OKyFWO+ZcpVsOgvYRLEuHBXp1o7BEfNmqIRn1v7hd5k4F +y7jig1rux/JnkVhv8ztyUEFysbCwr0HQQS7rmTMbBMPJuDbuwVFxcgbQFNLvWbJP +Wmo+KxOVrFIHSjp4YSHKIB6bwaVKgnKtEG1S2lgR8+N9T5iePlJe +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc0/traefik/certs/xc0cm.localhost.crt b/sxc/10.0/xc0/traefik/certs/xc0cm.localhost.crt new file mode 100644 index 0000000..f00b094 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/xc0cm.localhost.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDAzCCAeugAwIBAgIUawlhmAcg8CLeyvsaytNmKthOIAQwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTEzMTkxNzU1WhcNMzAwNTExMTkxNzU1WjAaMRgwFgYDVQQDDA94YzBjbS5sb2Nh +bGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtQ/hPKABLc8VU +IziM9S3OLHc4Keho3laSTWMxXlI9ljknkoEiahwh+vHiDEEwnDzhBydPpRYtmfd8 +IkAZBukT/g3uCO0bXyCylERqxudcze0xQod+xlZotvizKrQs4RRFsTcnOvdpLKYz +iWSy4wIchR0k0BuZ5LPr9cYTRcnswBMg2GIvST+luv48O4WRgCNwZ2Z9IsueuYIp +vN3ZHuETo/rzF2x7XHjlnDwIaD+e6mEsRhysjWE2GosLUYL6YLCr9JWYSR2Bk2L9 +ylEfPYnkHRuveNWjDtPoke3HGp5s5CGBYBHzySwI8uUGoteCfxz+PqmKZHCqhy9B +kR8QV+gVAgMBAAGjNjA0MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgXgMBoGA1UdEQQT +MBGCD3hjMGNtLmxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAQEAI7hGUnBg+9uA +BAVHuvB+LqmS2q4OTdRu98quBrUEiIqP3tGmgoeLiZW4xZQhlfUrAbYliS/TzgzO +xWa+KB37GcPd/ElqvzYe7uBk9xjYSrPw3BmDBh2G4+QoazN1D5xKV9DnxnkymBST +8lOrqTcf+0GDSgGh6Ffgs75mQPZL5D60HYw7t2XUm32vcHvA4jcftQNZdBl2OQNd +DVoWyKa8LKu2k9p2JFl15XpKRVRh41yDH3JdCbvYdEqRY9nT8/J6JGeWHTcPyeQl +KjoyUx4f09wvuEQHWFcZexGpbKp9zigWDxy1qRNPQKTIjDhrWx8P0Zxbc3KOX2si +Uy1euylnOg== +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc0/traefik/certs/xc0cm.localhost.key b/sxc/10.0/xc0/traefik/certs/xc0cm.localhost.key new file mode 100644 index 0000000..e734712 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/xc0cm.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEArUP4TygAS3PFVCM4jPUtzix3OCnoaN5Wkk1jMV5SPZY5J5KB +ImocIfrx4gxBMJw84QcnT6UWLZn3fCJAGQbpE/4N7gjtG18gspREasbnXM3tMUKH +fsZWaLb4syq0LOEURbE3Jzr3aSymM4lksuMCHIUdJNAbmeSz6/XGE0XJ7MATINhi +L0k/pbr+PDuFkYAjcGdmfSLLnrmCKbzd2R7hE6P68xdse1x45Zw8CGg/nuphLEYc +rI1hNhqLC1GC+mCwq/SVmEkdgZNi/cpRHz2J5B0br3jVow7T6JHtxxqebOQhgWAR +88ksCPLlBqLXgn8c/j6pimRwqocvQZEfEFfoFQIDAQABAoIBAQCivD5Sim2McJYc +KmCI9BcrmFP5alMhfAKvswPBcKeptJjF9DJZknQN7laVS5FHCNedO0zO321vMzdh +XgH5/6WW431N3xBkLvrU/7Eq4NqZLcjkBWqhxcOO4pvAHBHSPSz/MC1vKVELdaY8 +rYTpB5IKG3R+CQCDkGz06Ig7vcakF06mXTMTAVIXfUcjMwHOhkW5Y4mjxsW1Y962 +KZuqAp3ifimnUypXfe5ETipaM/C08G2K0OR6nDbeyp3oUYImkAhPBrzD57SlWADu +hD29fr9By1bj9F/Zta5poAIv3tzjswvBks4o4B6qDB9LFdFv17jy+sRCLMlV78GG +wabVdU4ZAoGBAOLrwhxtZfb/PDiVhSTwunJgDFKdufu4ECNReSStGF1L2CjTBHTw +DyGuwhxSJgtPl9ey0+ileLs76rjZfEETsqfmyNNYU62jz7qt2NhTzTAMmNL4fUH0 +Ljn3jarEepLNaBlEHd+fqHP8xb8g4fOml17lnqjlYn2kPJ8A28MLH29bAoGBAMN4 +BZKOQcmGSFhvahb92WVOTV+vVIslA6tPpEc6BfdaYeAG0UpL07vmxhmWpBxM/RoT +bv7WNcn9V2cuVWjLmJIJPYKS2lwj4aizeGl9p/pZoZOrmTw0EuYvrHNSNNuX1RG6 +OXBfh835DNxWVwaneQLqYxGZ0NFIvyqBjuYxVpFPAoGAfkQ3T8Aj86uUY9v3KVX2 +OTxuvu3bFlEWUcC9CwZyPz+7uQOqQDNwCAsJId8oIjUYxcJRHewtYOn3MwJ5nHCM +gdbuOoO0lDNJnJOtzLncu/bWdtYkRLXNnx27q6EGn3dCjISVpuBdSKUHl9GBSSWS +pxBYF50ED+t6e/NrVX1z8W8CgYAtHIUEtsoeDVyi9EuitME4bSLUQ22ak1dOcRnz +ykNYO8a84jXpFKjwA6mSfD6xvV7oZrXGIH/Xdx111a6med5jTbihauz0ON+6hHj0 +t6hN0ePFZeP+jfISp8v/7Wf/igIFjln1QkbgVWsPaum4wmveLWPhywLzWfusfqwR +Gi/lZwKBgCr1glq06W0ZDNf6e0fRYREWuZPz/ETUaWV51nMZ+Iy5LPmDnbeO1kYY +d6RgABZFJhMLM22u98q5u5wbmzBx5LJcjqxrXJw57Uw2Zgs5oO/T45lirJRaGk1y +jaRUbF+x1+MyjYNZSMVz2v30xHUeu/Y724UOB0tvV/WAGbCNG1z9 +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc0/traefik/certs/xc0id.localhost.crt b/sxc/10.0/xc0/traefik/certs/xc0id.localhost.crt new file mode 100644 index 0000000..afbbb70 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/xc0id.localhost.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDAzCCAeugAwIBAgIUawlhmAcg8CLeyvsaytNmKthOIAYwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NTEzMTkxNzU1WhcNMzAwNTExMTkxNzU1WjAaMRgwFgYDVQQDDA94YzBpZC5sb2Nh +bGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDMJDwhZHBVkhx0 +kBPbZNC/l84VtpipBGKyJEN7nV0f8LP/r5J3rzkHT7aqH6iTbrikq97NhDj3//88 +Y+0sh/g1IC0J3epJw2ZNsnpsQl1yOAPe9ktwAlhdqcVwGccvJCz3pNLjjfyVVwxA +xqs3Wn8juSTQuwivgtc5Goo3+jxh85xzeLRA1zWnptiGulzqC3LuUTBbL7qtIM0T +ark8Mc7Dvx9www+Sgh6zHi4RnqfSE9pfqoo/aHxyxu+Vzj8+G5DkNBjXKbb8l7Qv +nuanrSsXGN4IFyy/ap5vmxp2yrePK5KWvDMwBhuFUeam8QqOfGR8Jb/AYyWscHQQ +Mq/JdTF5AgMBAAGjNjA0MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgXgMBoGA1UdEQQT +MBGCD3hjMGlkLmxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAQEAh8j+sfIGzORx +IBSbidk4i5fQhopJl0G6ZSrZNVYI5ogG++ArcbaVhvvxJpQssZLeny/c2OpAVMyS +OTcTQh7w91I2QwAH+2K1om0/E4goFpY9axm2Kz6bA9Z4Ia5cP39wq46clCkpE1I9 +i3K7h9HTDs6VdJ21bFOw9+fSTwPhqbpqV6DLm7yFjtGDIA4om/iGLSwkjx547oKK +aQWo2DBrlp9D1Q2t025ciys3Gc5Gff7LzfzXmTqWFgPLF3BIOAl7iS6DRKEUQA+q +qRz5+y44kg2xwANcSBBLGX6F+XIzi1QKgYlI3A6AtWIquiKsp8L/O5x+JZFFfDkb +yHNw7Af75w== +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc0/traefik/certs/xc0id.localhost.key b/sxc/10.0/xc0/traefik/certs/xc0id.localhost.key new file mode 100644 index 0000000..b0b31b8 --- /dev/null +++ b/sxc/10.0/xc0/traefik/certs/xc0id.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAzCQ8IWRwVZIcdJAT22TQv5fOFbaYqQRisiRDe51dH/Cz/6+S +d685B0+2qh+ok264pKvezYQ49///PGPtLIf4NSAtCd3qScNmTbJ6bEJdcjgD3vZL +cAJYXanFcBnHLyQs96TS4438lVcMQMarN1p/I7kk0LsIr4LXORqKN/o8YfOcc3i0 +QNc1p6bYhrpc6gty7lEwWy+6rSDNE2q5PDHOw78fcMMPkoIesx4uEZ6n0hPaX6qK +P2h8csbvlc4/PhuQ5DQY1ym2/Je0L57mp60rFxjeCBcsv2qeb5sadsq3jyuSlrwz +MAYbhVHmpvEKjnxkfCW/wGMlrHB0EDKvyXUxeQIDAQABAoIBAQClFXBi+Jw3Nu83 +/ANy2jZNme+Yc49Erz05HkZMQte6KqcFT/A8RUDy/q2TKgLjJxi+YhbNT+3Z7/Vx +2sVDy7kXDSwe3IzIlfG3R2vk/E4hPdcziS08KUlYhSAbJV2Ea9bJdUrtpjbqdfh8 +saxoGRDTzLdO7NF7TW3KygGYfw4xjqPZPvraRrAF3SDD8/6zWXA7Za9n9MSpDPcN +V9SCqAPQVqHqkHaI2eZUNMbtuh8HAL2/BNgnkkmYEa1tMccPIl3xSUr5vD0mfl+1 +Z9xUZStTD3dp6OZA0Xxj8ynm6hWYhXfwoKC5OS7ZCADBwD4ZUsEvW2xighO33LKP +b9LtKKBZAoGBAOkajwTNDX9nOofqSdb6NYMX4aoVCN0mCRUMqMD9T2HT5VT2JZNa +xL88FCRsZ/cHsOwfdGDYNDg39jkVGhODx1CJemwEUFsiDWClgzl3USGgxXdjqccR +7p/O4drI3SYkGWr2SmgvLnZgcQV67BICltYoENUUopItVriC1ANK4HabAoGBAOAx +amyGuaeBtul/LGlr6G322Qt/VTlpchW+Z3V8MtvNSE7/zlWT/PHOLvSfBBpx1lMZ +uGb1mfMqLGBffncsgKWeti04Np6MQvsTvy0bBXfpkKDhWLGED3NLLg636FlJUiBB +T/vH9dqYjVMpBQ79j5Ujg6PC6p5deC8ESqyf/W97AoGAScwKsy5ns4nu0dCuh8y2 +3EXXP41hPQIppexYEKEhXItE81zqEHiQCSrwBYf8cgyRSm+63F4WSiYNYYz4sGzr +0Od1RnUnK3LgYVSE8tB/cvH/EgkPWuKmdRl+D1HAEa8kDOTkMY+eWgO2RFHiIuGG +902/5nWd8kFATzG8BT7TSTkCgYALd3uSAXINdzz7xF1pJvPEbBO92s1pGlOTeSGh +iLCxPVatc7gB+Ie/dmRAbsGu+JOVvIMKARXWshmC9F9riQMrdWqr9WwVv+bNIL1u +eStWbsPO9reqnK6NnxLD/fQMXQuuSqjkn92bSKIx1q9DjQSDBEX/YkDNyMoU3YtU +OPqlcQKBgBQd6z1LWR3Edj5MgQU+q07n8IosTl9R/sWRJGoPM83OHBXlrXZ4v5Mv +AKW84RNLn0sI/UpssI+qOgmLAXalKeldg5uRCVjxzOxh7enn6X2NQKQhXrBsqvax +aDhw4Dmi9FFawLx5dAHfEqShaCkjzKtNN1u0rebpMDgBpaRk7my3 +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc0/traefik/config/dynamic/certs_config.yaml b/sxc/10.0/xc0/traefik/config/dynamic/certs_config.yaml new file mode 100644 index 0000000..ba49a85 --- /dev/null +++ b/sxc/10.0/xc0/traefik/config/dynamic/certs_config.yaml @@ -0,0 +1,16 @@ +tls: + certificates: + - certFile: C:\etc\traefik\certs\xc0cm.localhost.crt + keyFile: C:\etc\traefik\certs\xc0cm.localhost.key + - certFile: C:\etc\traefik\certs\xc0id.localhost.crt + keyFile: C:\etc\traefik\certs\xc0id.localhost.key + - certFile: C:\etc\traefik\certs\bizfx.localhost.crt + keyFile: C:\etc\traefik\certs\bizfx.localhost.key + - certFile: C:\etc\traefik\certs\authoring.localhost.crt + keyFile: C:\etc\traefik\certs\authoring.localhost.key + - certFile: C:\etc\traefik\certs\shops.localhost.crt + keyFile: C:\etc\traefik\certs\shops.localhost.key + - certFile: C:\etc\traefik\certs\minions.localhost.crt + keyFile: C:\etc\traefik\certs\minions.localhost.key + - certFile: C:\etc\traefik\certs\ops.localhost.crt + keyFile: C:\etc\traefik\certs\ops.localhost.key \ No newline at end of file diff --git a/sxc/10.0/xc0/xconnect/keep.txt b/sxc/10.0/xc0/xconnect/keep.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/xc1-cxa/.env b/sxc/10.0/xc1-cxa/.env new file mode 100644 index 0000000..78e0439 --- /dev/null +++ b/sxc/10.0/xc1-cxa/.env @@ -0,0 +1,55 @@ +BASE_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/base/ + +XP_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxp/ +XP_SITECORE_TAG=10.0.0-ltsc2019 + +MODULES_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxp/modules/ +SPE_SITECORE_TAG=6.1.1-1809 +SXA_SITECORE_TAG=10.0.0-1809 + +XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxc/nonproduction/ +XC_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxc/ +XC_PACKAGES_TAG=10.0.0-ltsc2019 + +TRAEFIK_IMAGE=traefik:v2.2.0-windowsservercore-1809 +TRAEFIK_ISOLATION=default + +ISOLATION=default + +CD_HOST=xc1cd.localhost +CM_HOST=xc1cm.localhost +ID_HOST=xc1id.localhost + +AUTHORING_HOST=authoring.localhost +SHOPS_HOST=shops.localhost +MINIONS_HOST=minions.localhost +OPS_HOST=ops.localhost + +BIZFX_HOST=bizfx.localhost + +SQL_SA_PASSWORD=Password12345 +SITECORE_ADMIN_PASSWORD=Password12345 + +SITECORE_MASTER_DB=Sitecore.Master +SITECORE_CORE_DB=Sitecore.Core +XC_GLOBAL_DB=SitecoreCommerce_Global +XC_GLOBAL_DB_TRUSTED_CONNECTION=false +XC_SHARED_DB=SitecoreCommerce_SharedEnvironments +XC_SHARED_DB_TRUSTED_CONNECTION=false + +XC_ENGINE_BRAINTREEENVIRONMENT= +XC_ENGINE_BRAINTREEMERCHANTID= +XC_ENGINE_BRAINTREEPUBLICKEY= +XC_ENGINE_BRAINTREEPRIVATEKEY= +XC_BIZFX_DEFAULT_LANGUAGE=en +XC_BIZFX_DEFAULT_CURRENCY=USD +XC_BIZFX_DEFAULT_SHOPNAME=CommerceEngineDefaultStorefront +XC_ENGINE_CONNECT_CLIENTID=CommerceEngineConnect +XC_IDENTITY_COMMERCEENGINECONNECTCLIENT_CLIENTSECRET1= + +REPORTING_API_KEY= +TELERIK_ENCRYPTION_KEY= +SITECORE_IDSECRET= +SITECORE_ID_CERTIFICATE= +SITECORE_ID_CERTIFICATE_PASSWORD= +SITECORE_LICENSE= \ No newline at end of file diff --git a/sxc/10.0/xc1-cxa/cd/Dockerfile b/sxc/10.0/xc1-cxa/cd/Dockerfile new file mode 100644 index 0000000..62a9061 --- /dev/null +++ b/sxc/10.0/xc1-cxa/cd/Dockerfile @@ -0,0 +1,20 @@ +# escape=` + +ARG BASE_IMAGE +ARG SXA_RESOURCES_IMAGE + +FROM ${SXA_RESOURCES_IMAGE} AS sxa_resources + +FROM ${BASE_IMAGE} + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY --from=sxa_resources C:\module\cd\content C:\inetpub\wwwroot +COPY --from=sxa_resources C:\module\tools C:\module\tools + +COPY wdp/ C:/inetpub/wwwroot +COPY xdts/ C:/inetpub/wwwroot/App_Data/SxaXdt + +RUN C:\module\tools\Initialize-Content.ps1 -TargetPath C:\inetpub\wwwroot; ` + Remove-Item -Path C:\module -Recurse -Force; + \ No newline at end of file diff --git a/sxc/10.0/xc1-cxa/cd/xdts/Web.config.xdt b/sxc/10.0/xc1-cxa/cd/xdts/Web.config.xdt new file mode 100644 index 0000000..aa39a98 --- /dev/null +++ b/sxc/10.0/xc1-cxa/cd/xdts/Web.config.xdt @@ -0,0 +1,44 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sxc/10.0/xc1-cxa/cm/Dockerfile b/sxc/10.0/xc1-cxa/cm/Dockerfile new file mode 100644 index 0000000..a4217b5 --- /dev/null +++ b/sxc/10.0/xc1-cxa/cm/Dockerfile @@ -0,0 +1,26 @@ +# escape=` + +ARG BASE_IMAGE +ARG SPE_RESOURCES_IMAGE +ARG SXA_RESOURCES_IMAGE + +FROM ${SPE_RESOURCES_IMAGE} AS spe_resources + +FROM ${SXA_RESOURCES_IMAGE} AS sxa_resources + +FROM ${BASE_IMAGE} AS spe + +COPY --from=spe_resources C:\module\cm\content C:\inetpub\wwwroot + +FROM spe AS sxa + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY --from=sxa_resources C:\module\cm\content C:\inetpub\wwwroot +COPY --from=sxa_resources C:\module\tools C:\module\tools + +COPY wdp/ C:/inetpub/wwwroot +COPY xdts/ C:/inetpub/wwwroot/App_Data/SxaXdt + +RUN C:\module\tools\Initialize-Content.ps1 -TargetPath C:\inetpub\wwwroot; ` + Remove-Item -Path C:\module -Recurse -Force; diff --git a/sxc/10.0/xc1-cxa/cm/xdts/Web.config.xdt b/sxc/10.0/xc1-cxa/cm/xdts/Web.config.xdt new file mode 100644 index 0000000..aa39a98 --- /dev/null +++ b/sxc/10.0/xc1-cxa/cm/xdts/Web.config.xdt @@ -0,0 +1,44 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sxc/10.0/xc1-cxa/commerce.build.yml b/sxc/10.0/xc1-cxa/commerce.build.yml new file mode 100644 index 0000000..bad705b --- /dev/null +++ b/sxc/10.0/xc1-cxa/commerce.build.yml @@ -0,0 +1,51 @@ +version: "3.7" +services: + mssql: + image: sitecore-xc1-mssql + build: + context: ./mssql + dockerfile: ./standalone/Dockerfile + args: + BASE_IMAGE: xc1-mssql:latest + SPE_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}spe-assets:${SPE_SITECORE_TAG} + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} + mssql-init: + image: sitecore-xc1-mssql-init + build: + context: ./mssql + dockerfile: ./init/Dockerfile + args: + BASE_IMAGE: xc1-mssql-init:latest + SPE_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}spe-assets:${SPE_SITECORE_TAG} + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} + solr: + image: sitecore-xc1-solr + build: + context: ./solr + dockerfile: ./standalone/Dockerfile + args: + BASE_IMAGE: xc1-solr:latest + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} + solr-init: + image: sitecore-xc1-solr-init + build: + context: ./solr + dockerfile: ./init/Dockerfile + args: + BASE_IMAGE: xc1-solr-init:latest + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} + cd: + image: sitecore-xc1-cd + build: + context: ./cd + args: + BASE_IMAGE: xc1-cd:latest + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} + cm: + image: sitecore-xc1-cm + build: + context: ./cm + args: + BASE_IMAGE: xc1-cm:latest + SPE_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}spe-assets:${SPE_SITECORE_TAG} + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} \ No newline at end of file diff --git a/sxc/10.0/xc1-cxa/docker-compose.build.yml b/sxc/10.0/xc1-cxa/docker-compose.build.yml new file mode 100644 index 0000000..f622d3a --- /dev/null +++ b/sxc/10.0/xc1-cxa/docker-compose.build.yml @@ -0,0 +1,51 @@ +version: "3.7" +services: + mssql: + image: sitecore-xc1-mssql + build: + context: ./mssql + dockerfile: ./standalone/Dockerfile + args: + BASE_IMAGE: ${XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY}xc1-mssql:${XC_PACKAGES_TAG} + SPE_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}spe-assets:${SPE_SITECORE_TAG} + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} + mssql-init: + image: sitecore-xc1-mssql-init + build: + context: ./mssql + dockerfile: ./init/Dockerfile + args: + BASE_IMAGE: ${XC_SITECORE_DOCKER_REGISTRY}xc1-mssql-init:${XC_PACKAGES_TAG} + SPE_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}spe-assets:${SPE_SITECORE_TAG} + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} + solr: + image: sitecore-xc1-solr + build: + context: ./solr + dockerfile: ./standalone/Dockerfile + args: + BASE_IMAGE: ${XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY}xc1-solr:${XC_PACKAGES_TAG} + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} + solr-init: + image: sitecore-xc1-solr-init + build: + context: ./solr + dockerfile: ./init/Dockerfile + args: + BASE_IMAGE: ${XC_SITECORE_DOCKER_REGISTRY}xc1-solr-init:${XC_PACKAGES_TAG} + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} + cd: + image: sitecore-xc1-cd + build: + context: ./cd + args: + BASE_IMAGE: ${XC_SITECORE_DOCKER_REGISTRY}xc1-cd:${XC_PACKAGES_TAG} + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} + cm: + image: sitecore-xc1-cm + build: + context: ./cm + args: + BASE_IMAGE: ${XC_SITECORE_DOCKER_REGISTRY}xc1-cm:${XC_PACKAGES_TAG} + SPE_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}spe-assets:${SPE_SITECORE_TAG} + SXA_RESOURCES_IMAGE: ${MODULES_SITECORE_DOCKER_REGISTRY}sxa-xp1-assets:${SXA_SITECORE_TAG} \ No newline at end of file diff --git a/sxc/10.0/xc1-cxa/docker-compose.yml b/sxc/10.0/xc1-cxa/docker-compose.yml new file mode 100644 index 0000000..67bea08 --- /dev/null +++ b/sxc/10.0/xc1-cxa/docker-compose.yml @@ -0,0 +1,762 @@ +version: "2.4" +services: + traefik: + isolation: ${TRAEFIK_ISOLATION} + image: ${TRAEFIK_IMAGE} + command: + - "--api.insecure=true" + - "--providers.docker.endpoint=npipe:////./pipe/docker_engine" + - "--providers.docker.exposedByDefault=false" + - "--providers.file.directory=C:/etc/traefik/config/dynamic" + - "--entryPoints.web.address=:80" + - "--entryPoints.websecure.address=:443" + ports: + - "8080:80" + - "443:443" + - "8079:8080" + volumes: + - source: \\.\pipe\docker_engine + target: \\.\pipe\docker_engine + type: npipe + - ./traefik:C:/etc/traefik + restart: unless-stopped + depends_on: + cd: + condition: service_started + cm: + condition: service_started + id: + condition: service_started + bizfx: + condition: service_started + engine-authoring: + condition: service_started + engine-shops: + condition: service_started + engine-minions: + condition: service_started + engine-ops: + condition: service_started + redis: + isolation: ${ISOLATION} + image: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-redis:${XP_SITECORE_TAG} + restart: unless-stopped + mssql: + isolation: ${ISOLATION} + image: ${XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY}sitecore-xc1-mssql:${XC_PACKAGES_TAG} + restart: unless-stopped + environment: + SA_PASSWORD: ${SQL_SA_PASSWORD} + SITECORE_ADMIN_PASSWORD: ${SITECORE_ADMIN_PASSWORD} + ACCEPT_EULA: "Y" + SQL_SERVER: mssql + ports: + - "14330:1433" + volumes: + - type: bind + source: c:\containers\mssql-data + target: c:\data + solr: + isolation: ${ISOLATION} + image: ${XC_NONPRODUCTION_SITECORE_DOCKER_REGISTRY}sitecore-xc1-solr:${XC_PACKAGES_TAG} + ports: + - "8984:8983" + restart: unless-stopped + volumes: + - type: bind + source: c:\containers\solr-data + target: c:\data + id: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-id:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + restart: unless-stopped + environment: + Sitecore_Sitecore__IdentityServer__SitecoreMemberShipOptions__ConnectionString: Data Source=mssql;Initial Catalog=Sitecore.Core;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_Sitecore__IdentityServer__AccountOptions__PasswordRecoveryUrl: https://${CM_HOST}/sitecore/login?rc=1 + Sitecore_Sitecore__IdentityServer__Clients__PasswordClient__ClientSecrets__ClientSecret1: ${SITECORE_IDSECRET} + Sitecore_Sitecore__IdentityServer__Clients__DefaultClient__AllowedCorsOrigins__AllowedCorsOriginsGroup1: https://${CM_HOST} + Sitecore_Sitecore__IdentityServer__CertificateRawData: ${SITECORE_ID_CERTIFICATE} + Sitecore_Sitecore__IdentityServer__PublicOrigin: https://${ID_HOST} + Sitecore_Sitecore__IdentityServer__CertificateRawDataPassword: ${SITECORE_ID_CERTIFICATE_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + Sitecore_Sitecore__IdentityServer__Clients__CommerceClient__AllowedCorsOrigins__AllowedCorsOriginsGroup1: https://${BIZFX_HOST}|https://${AUTHORING_HOST} + Sitecore_Sitecore__IdentityServer__Clients__CommerceEngineConnectClient__ClientId: ${XC_ENGINE_CONNECT_CLIENTID} + Sitecore_Sitecore__IdentityServer__Clients__CommerceEngineConnectClient__AllowedCorsOrigins__AllowedCorsOriginsGroup1: https://${CD_HOST}|https://${CM_HOST} + Sitecore_Sitecore__IdentityServer__Clients__CommerceEngineConnectClient__ClientSecrets__ClientSecret1: ${XC_IDENTITY_COMMERCEENGINECONNECTCLIENT_CLIENTSECRET1} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + labels: + - "traefik.enable=true" + - "traefik.http.routers.id-secure.entrypoints=websecure" + - "traefik.http.routers.id-secure.rule=Host(`${ID_HOST}`)" + - "traefik.http.routers.id-secure.tls=true" + cd: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc1-cd:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + redis: + condition: service_started + xdbcollection: + condition: service_started + xdbautomation: + condition: service_started + xdbautomationrpt: + condition: service_started + xdbrefdata: + condition: service_started + environment: + Sitecore_AppSettings_instanceNameMode:define: default + Sitecore_ConnectionStrings_Security: Data Source=mssql;Initial Catalog=Sitecore.Core;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Web: Data Source=mssql;Initial Catalog=Sitecore.Web;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_ExperienceForms: Data Source=mssql;Initial Catalog=Sitecore.ExperienceForms;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Exm.Master: Data Source=mssql;Initial Catalog=Sitecore.Exm.master;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Solr.Search: http://solr:8983/solr + Sitecore_ConnectionStrings_XConnect.Collection: http://xdbcollection + Sitecore_ConnectionStrings_Xdb.MarketingAutomation.Operations.Client: http://xdbautomation + Sitecore_ConnectionStrings_Xdb.MarketingAutomation.Reporting.Client: http://xdbautomationrpt + Sitecore_ConnectionStrings_Xdb.ReferenceData.Client: http://xdbrefdata + Sitecore_ConnectionStrings_Redis.Sessions: redis:6379,ssl=False,abortConnect=False + Sitecore_License: ${SITECORE_LICENSE} + Sitecore_Identity_Server_Authority: https://${ID_HOST} + Sitecore_Identity_Server_InternalAuthority: http://id + Sitecore_xc_Minions_Url: http://engine-minions:5000/commerceops/ + Sitecore_xc_Ops_Url: http://engine-ops:5000/commerceops/ + Sitecore_xc_Shops_Url: http://engine-shops:5000/api/ + Sitecore_xc_Client_Secret_Hash: ${XC_IDENTITY_COMMERCEENGINECONNECTCLIENT_CLIENTSECRET1} + Sitecore_xc_ConnectionStrings_Redis: redis:6379,defaultDatabase=1,allowAdmin=true,syncTimeout=3600000 + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.cd-secure.entrypoints=websecure" + - "traefik.http.routers.cd-secure.rule=Host(`${CD_HOST}`)" + - "traefik.http.routers.cd-secure.tls=true" + - "traefik.http.routers.cd-secure.middlewares=force-STS-Header" + volumes: + - C:\containers\cd\domains-shared:C:\inetpub\wwwroot\App_Config\Security-Shared:RW + cm: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc1-cm:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + rep: + condition: service_started + xdbcollection: + condition: service_started + xdbsearch: + condition: service_started + xdbautomation: + condition: service_started + xdbautomationrpt: + condition: service_started + xdbrefdata: + condition: service_started + environment: + Sitecore_AppSettings_instanceNameMode:define: default + Sitecore_ConnectionStrings_Core: Data Source=mssql;Initial Catalog=${SITECORE_CORE_DB};User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Security: Data Source=mssql;Initial Catalog=${SITECORE_CORE_DB};User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Master: Data Source=mssql;Initial Catalog=${SITECORE_MASTER_DB};User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Web: Data Source=mssql;Initial Catalog=Sitecore.Web;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Reporting.ApiKey: ${REPORTING_API_KEY} + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Referencedata: Data Source=mssql;Initial Catalog=Sitecore.Referencedata;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_ExperienceForms: Data Source=mssql;Initial Catalog=Sitecore.ExperienceForms;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Exm.Master: Data Source=mssql;Initial Catalog=Sitecore.Exm.master;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Reporting: Data Source=mssql;Initial Catalog=Sitecore.Reporting;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Sitecore.Reporting.Client: http://rep + Sitecore_ConnectionStrings_Solr.Search: http://solr:8983/solr + Sitecore_ConnectionStrings_XConnect.Collection: http://xdbcollection + Sitecore_ConnectionStrings_XConnect.Search: http://xdbsearch + Sitecore_ConnectionStrings_Xdb.MarketingAutomation.Operations.Client: http://xdbautomation + Sitecore_ConnectionStrings_Xdb.MarketingAutomation.Reporting.Client: http://xdbautomationrpt + Sitecore_ConnectionStrings_Xdb.ReferenceData.Client: http://xdbrefdata + Sitecore_Reporting_Service_Url: http://rep + Sitecore_Processing_Service_Url: http://prc + Sitecore_Reporting_Service_Require_Https: 'false' + Sitecore_Processing_Service_Require_Https: 'false' + Sitecore_AppSettings_Telerik.AsyncUpload.ConfigurationEncryptionKey: ${TELERIK_ENCRYPTION_KEY} + Sitecore_AppSettings_Telerik.Upload.ConfigurationHashKey: ${TELERIK_ENCRYPTION_KEY} + Sitecore_AppSettings_Telerik.Web.UI.DialogParametersEncryptionKey: ${TELERIK_ENCRYPTION_KEY} + Sitecore_License: ${SITECORE_LICENSE} + Sitecore_Identity_Server_Authority: https://${ID_HOST} + Sitecore_Identity_Server_InternalAuthority: http://id + Sitecore_Identity_Server_CallbackAuthority: https://${CM_HOST} + Sitecore_Identity_Server_Require_Https: "false" + SitecoreMssqlServiceIp: mssql + SqlSaPassword: ${SQL_SA_PASSWORD} + SitecoreCoreDbName: ${SITECORE_CORE_DB} + Sitecore_xc_Minions_Url: http://engine-minions:5000/commerceops/ + Sitecore_xc_Ops_Url: http://engine-ops:5000/commerceops/ + Sitecore_xc_Shops_Url: http://engine-authoring:5000/api/ + Sitecore_xc_Client_Secret_Hash: ${XC_IDENTITY_COMMERCEENGINECONNECTCLIENT_CLIENTSECRET1} + Sitecore_xc_ConnectionStrings_Redis: redis:6379,defaultDatabase=1,allowAdmin=true,syncTimeout=3600000 + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.cm-secure.entrypoints=websecure" + - "traefik.http.routers.cm-secure.rule=Host(`${CM_HOST}`)" + - "traefik.http.routers.cm-secure.tls=true" + - "traefik.http.routers.cm-secure.middlewares=force-STS-Header" + volumes: + - C:\containers\cm\domains-shared:C:\inetpub\wwwroot\App_Config\Security-Shared:RW + prc: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc1-prc:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + xdbcollection: + condition: service_started + environment: + Sitecore_AppSettings_instanceNameMode:define: default + Sitecore_ConnectionStrings_Core: Data Source=mssql;Initial Catalog=Sitecore.Core;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Security: Data Source=mssql;Initial Catalog=Sitecore.Core;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Master: Data Source=mssql;Initial Catalog=Sitecore.Master;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Reporting.ApiKey: ${REPORTING_API_KEY} + Sitecore_ConnectionStrings_Xdb.Processing.Pools: Data Source=mssql;Initial Catalog=Sitecore.Processing.pools;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Referencedata: Data Source=mssql;Initial Catalog=Sitecore.Referencedata;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Processing.Tasks: Data Source=mssql;Initial Catalog=Sitecore.Processing.tasks;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Reporting: Data Source=mssql;Initial Catalog=Sitecore.Reporting;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_XConnect.Collection: http://xdbcollection + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + rep: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc1-rep:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + environment: + Sitecore_AppSettings_instanceNameMode:define: default + Sitecore_ConnectionStrings_Core: Data Source=mssql;Initial Catalog=Sitecore.Core;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Security: Data Source=mssql;Initial Catalog=Sitecore.Core;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Master: Data Source=mssql;Initial Catalog=Sitecore.Master;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Reporting.ApiKey: ${REPORTING_API_KEY} + Sitecore_ConnectionStrings_Reporting: Data Source=mssql;Initial Catalog=Sitecore.Reporting;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + xdbcollection: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc1-xdbcollection:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + environment: + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Marketingautomation: Data Source=mssql;Initial Catalog=Sitecore.Marketingautomation;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Processing.Pools: Data Source=mssql;Initial Catalog=Sitecore.Processing.pools;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Collection: Data Source=mssql;Initial Catalog=Sitecore.Xdb.Collection.ShardMapManager;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + xdbsearch: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc1-xdbsearch:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + environment: + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Marketingautomation: Data Source=mssql;Initial Catalog=Sitecore.Marketingautomation;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Processing.Pools: Data Source=mssql;Initial Catalog=Sitecore.Processing.pools;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Collection: Data Source=mssql;Initial Catalog=Sitecore.Xdb.Collection.ShardMapManager;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_SolrCore: http://solr:8983/solr/sitecore_xdb + Sitecore_License: ${SITECORE_LICENSE} + Sitecore_Sitecore:XConnect:CollectionSearch:Services:Solr.SolrReaderSettings:Options:RequireHttps: 'false' + Sitecore_Sitecore:XConnect:CollectionSearch:Services:XConnectSolrHealthCheckServicesConfiguration:Options:RequireHttps: 'false' + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + xdbautomation: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc1-xdbautomation:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + xdbcollection: + condition: service_started + xdbsearch: + condition: service_started + environment: + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Marketingautomation: Data Source=mssql;Initial Catalog=Sitecore.Marketingautomation;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Referencedata: Data Source=mssql;Initial Catalog=Sitecore.Referencedata;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_XConnect.Collection: http://xdbcollection + Sitecore_ConnectionStrings_XConnect.Search: http://xdbsearch + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + xdbautomationrpt: + isolation: ${ISOLATION} + image: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-xdbautomationrpt:${XP_SITECORE_TAG} + depends_on: + mssql: + condition: service_healthy + environment: + Sitecore_ConnectionStrings_Xdb.Marketingautomation: Data Source=mssql;Initial Catalog=Sitecore.Marketingautomation;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Referencedata: Data Source=mssql;Initial Catalog=Sitecore.Referencedata;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + cortexprocessing: + isolation: ${ISOLATION} + image: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-cortexprocessing:${XP_SITECORE_TAG} + depends_on: + mssql: + condition: service_healthy + environment: + Sitecore_ConnectionStrings_Processing.Engine.Storage: Data Source=mssql;Initial Catalog=Sitecore.Processing.Engine.Storage;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + cortexreporting: + isolation: ${ISOLATION} + image: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-cortexreporting:${XP_SITECORE_TAG} + depends_on: + mssql: + condition: service_healthy + environment: + Sitecore_ConnectionStrings_Reporting: Data Source=mssql;Initial Catalog=Sitecore.Reporting;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + xdbrefdata: + isolation: ${ISOLATION} + image: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-xdbrefdata:${XP_SITECORE_TAG} + depends_on: + mssql: + condition: service_healthy + environment: + Sitecore_ConnectionStrings_Xdb.Referencedata: Data Source=mssql;Initial Catalog=Sitecore.Referencedata;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + xdbsearchworker: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc1-xdbsearchworker:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + restart: unless-stopped + environment: + Sitecore_ConnectionStrings_Collection: Data Source=mssql;Initial Catalog=Sitecore.Xdb.Collection.ShardMapManager;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_SolrCore: http://solr:8983/solr/sitecore_xdb + Sitecore_License: ${SITECORE_LICENSE} + Sitecore_Sitecore:XConnect:SearchIndexer:Services:Solr.SolrReaderSettings:Options:RequireHttps: 'false' + Sitecore_Sitecore:XConnect:SearchIndexer:Services:Solr.SolrWriterSettings:Options:RequireHttps: 'false' + Sitecore_Sitecore:XConnect:CollectionSearch:Services:XConnectSolrHealthCheckServicesConfiguration:Options:RequireHttps: 'false' + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1 -Port 8080"] + timeout: 300s + xdbautomationworker: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc1-xdbautomationworker:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + xdbcollection: + condition: service_started + xdbsearch: + condition: service_started + restart: unless-stopped + environment: + Sitecore_ConnectionStrings_XConnect.Collection: http://xdbcollection + Sitecore_ConnectionStrings_XConnect.Search: http://xdbsearch + Sitecore_ConnectionStrings_Xdb.Marketingautomation: Data Source=mssql;Initial Catalog=Sitecore.Marketingautomation;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Xdb.Referencedata: Data Source=mssql;Initial Catalog=Sitecore.Referencedata;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1 -Port 8080"] + timeout: 300s + cortexprocessingworker: + isolation: ${ISOLATION} + image: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-cortexprocessingworker:${XP_SITECORE_TAG} + depends_on: + mssql: + condition: service_healthy + xdbcollection: + condition: service_started + xdbsearch: + condition: service_started + restart: unless-stopped + environment: + Sitecore_ConnectionStrings_Processing.Engine.Storage: Data Source=mssql;Initial Catalog=Sitecore.Processing.Engine.Storage;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Processing.Engine.Tasks: Data Source=mssql;Initial Catalog=Sitecore.Processing.Engine.Tasks;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_XConnect.Collection: http://xdbcollection + Sitecore_ConnectionStrings_XConnect.Configuration: http://xdbcollection + Sitecore_ConnectionStrings_XConnect.Search: http://xdbsearch + Sitecore_ConnectionStrings_Messaging: Data Source=mssql;Initial Catalog=Sitecore.Messaging;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_ConnectionStrings_Reporting: Data Source=mssql;Initial Catalog=Sitecore.Reporting;User ID=sa;Password=${SQL_SA_PASSWORD} + Sitecore_License: ${SITECORE_LICENSE} + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1 -Port 8080"] + timeout: 300s + bizfx: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-bizfx:${XC_PACKAGES_TAG} + depends_on: + engine-authoring: + condition: service_started + engine-minions: + condition: service_started + id: + condition: service_started + environment: + sitecore_xc_bizfx_bizfx_url: https://${BIZFX_HOST} + sitecore_xc_bizfx_authoring_url: https://${AUTHORING_HOST} + sitecore_xc_bizfx_identity_server_url: https://${ID_HOST} + sitecore_xc_bizfx_default_language: ${XC_BIZFX_DEFAULT_LANGUAGE} + sitecore_xc_bizfx_default_currency: ${XC_BIZFX_DEFAULT_CURRENCY} + sitecore_xc_bizfx_default_shopname: ${XC_BIZFX_DEFAULT_SHOPNAME} + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.bizfx-secure.entrypoints=websecure" + - "traefik.http.routers.bizfx-secure.rule=Host(`${BIZFX_HOST}`)" + - "traefik.http.routers.bizfx-secure.tls=true" + - "traefik.http.routers.bizfx-secure.middlewares=force-STS-Header" + engine-authoring: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-engine:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + redis: + condition: service_started + cm: + condition: service_started + environment: + COMMERCEENGINE_AppSettings__DeploymentId: HabitatAuthoring01 + COMMERCEENGINE_AppSettings__EnvironmentName: HabitatAuthoring + COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl: "https://${ID_HOST}" + COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl: "http://id" + COMMERCEENGINE_AppSettings__AllowedOrigins: "https://${BIZFX_HOST}|https://${CD_HOST}|https://{CM_HOST}" + COMMERCEENGINE_AppSettings__AntiForgeryEnabled: "false" + COMMERCEENGINE_AppSettings__UseHttpsInKestrel: "false" + COMMERCEENGINE_Caching__Redis__Options__Configuration: redis:6379,ssl=False,abortConnect=False + COMMERCEENGINE_Caching__Redis__Options__InstanceName: Redis + COMMERCEENGINE_CommerceConnector__ClientId: ${XC_ENGINE_CONNECT_CLIENTID} + COMMERCEENGINE_GlobalDatabaseName: ${XC_GLOBAL_DB} + COMMERCEENGINE_GlobalDatabaseServer: mssql + COMMERCEENGINE_GlobalDatabaseUserName: sa + COMMERCEENGINE_GlobalDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_GlobalTrustedConnection: "${XC_GLOBAL_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SharedDatabaseName: ${XC_SHARED_DB} + COMMERCEENGINE_SharedDatabaseServer: mssql + COMMERCEENGINE_SharedDatabaseUserName: sa + COMMERCEENGINE_SharedDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_SharedTrustedConnection: "${XC_SHARED_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SitecoreHost: cm + COMMERCEENGINE_SitecoreDatabase: master + COMMERCEENGINE_SitecoreUsername: admin + COMMERCEENGINE_SitecoreDomain: sitecore + COMMERCEENGINE_SitecorePassword: ${SITECORE_ADMIN_PASSWORD} + COMMERCEENGINE_SitecoreProtocol: http + COMMERCEENGINE_SitecoreAllowAnonymousUser: "true" + COMMERCEENGINE_SitecoreExternalProtocol: https + COMMERCEENGINE_SitecoreExternalHost: ${CM_HOST} + COMMERCEENGINE_SolrUrl: http://solr:8983/solr + COMMERCEENGINE_IsSolrCloud: "false" + COMMERCEENGINE_StorefrontIndexPrefix_web_index: sitecore_web_index + COMMERCEENGINE_StorefrontIndexPrefix_master_index: sitecore_master_index + COMMERCEENGINE_SearchIndexPrefixOrdersScope: OrdersScope + COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild: OrdersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCustomersScope: CustomersScope + COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild: CustomersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope: CatalogItemsScope + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild: CatalogItemsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPromotionsScope: PromotionsScope + COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild: PromotionsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope: PriceCardsScope + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild: PriceCardsScope-Rebuild + COMMERCEENGINE_EngineAuthoringUrl: https://${AUTHORING_HOST} + COMMERCEENGINE_EngineShopsUrl: https://${SHOPS_HOST} + COMMERCEENGINE_EngineMinionsUrl: https://${MINIONS_HOST} + COMMERCEENGINE_BraintreeEnvironment: ${XC_ENGINE_BRAINTREEENVIRONMENT} + COMMERCEENGINE_BraintreeMerchantId: ${XC_ENGINE_BRAINTREEMERCHANTID} + COMMERCEENGINE_BraintreePublicKey: ${XC_ENGINE_BRAINTREEPUBLICKEY} + COMMERCEENGINE_BraintreePrivateKey: ${XC_ENGINE_BRAINTREEPRIVATEKEY} + volumes: + - C:\containers\engine\catalogs:C:\engine\catalogs:RO + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.authoring-secure.entrypoints=websecure" + - "traefik.http.routers.authoring-secure.rule=Host(`${AUTHORING_HOST}`)" + - "traefik.http.routers.authoring-secure.tls=true" + - "traefik.http.routers.authoring-secure.middlewares=force-STS-Header" + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + engine-shops: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-engine:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + redis: + condition: service_started + cm: + condition: service_started + environment: + COMMERCEENGINE_AppSettings__DeploymentId: HabitatShops01 + COMMERCEENGINE_AppSettings__EnvironmentName: HabitatShops + COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl: "https://${ID_HOST}" + COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl: "http://id" + COMMERCEENGINE_AppSettings__AllowedOrigins: "https://${BIZFX_HOST}|https://${CD_HOST}|https://{CM_HOST}" + COMMERCEENGINE_AppSettings__AntiForgeryEnabled: "false" + COMMERCEENGINE_AppSettings__UseHttpsInKestrel: "false" + COMMERCEENGINE_Caching__Redis__Options__Configuration: redis:6379,ssl=False,abortConnect=False + COMMERCEENGINE_Caching__Redis__Options__InstanceName: Redis + COMMERCEENGINE_CommerceConnector__ClientId: ${XC_ENGINE_CONNECT_CLIENTID} + COMMERCEENGINE_GlobalDatabaseName: ${XC_GLOBAL_DB} + COMMERCEENGINE_GlobalDatabaseServer: mssql + COMMERCEENGINE_GlobalDatabaseUserName: sa + COMMERCEENGINE_GlobalDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_GlobalTrustedConnection: "${XC_GLOBAL_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SharedDatabaseName: ${XC_SHARED_DB} + COMMERCEENGINE_SharedDatabaseServer: mssql + COMMERCEENGINE_SharedDatabaseUserName: sa + COMMERCEENGINE_SharedDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_SharedTrustedConnection: "${XC_SHARED_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SitecoreHost: cm + COMMERCEENGINE_SitecoreDatabase: master + COMMERCEENGINE_SitecoreUsername: admin + COMMERCEENGINE_SitecoreDomain: sitecore + COMMERCEENGINE_SitecorePassword: ${SITECORE_ADMIN_PASSWORD} + COMMERCEENGINE_SitecoreProtocol: http + COMMERCEENGINE_SitecoreAllowAnonymousUser: "true" + COMMERCEENGINE_SitecoreExternalProtocol: https + COMMERCEENGINE_SitecoreExternalHost: ${CM_HOST} + COMMERCEENGINE_SolrUrl: http://solr:8983/solr + COMMERCEENGINE_IsSolrCloud: "false" + COMMERCEENGINE_StorefrontIndexPrefix_web_index: sitecore_web_index + COMMERCEENGINE_StorefrontIndexPrefix_master_index: sitecore_master_index + COMMERCEENGINE_SearchIndexPrefixOrdersScope: OrdersScope + COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild: OrdersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCustomersScope: CustomersScope + COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild: CustomersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope: CatalogItemsScope + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild: CatalogItemsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPromotionsScope: PromotionsScope + COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild: PromotionsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope: PriceCardsScope + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild: PriceCardsScope-Rebuild + COMMERCEENGINE_EngineAuthoringUrl: https://${AUTHORING_HOST} + COMMERCEENGINE_EngineShopsUrl: https://${SHOPS_HOST} + COMMERCEENGINE_EngineMinionsUrl: https://${MINIONS_HOST} + COMMERCEENGINE_BraintreeEnvironment: ${XC_ENGINE_BRAINTREEENVIRONMENT} + COMMERCEENGINE_BraintreeMerchantId: ${XC_ENGINE_BRAINTREEMERCHANTID} + COMMERCEENGINE_BraintreePublicKey: ${XC_ENGINE_BRAINTREEPUBLICKEY} + COMMERCEENGINE_BraintreePrivateKey: ${XC_ENGINE_BRAINTREEPRIVATEKEY} + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.shops-secure.entrypoints=websecure" + - "traefik.http.routers.shops-secure.rule=Host(`${SHOPS_HOST}`)" + - "traefik.http.routers.shops-secure.tls=true" + - "traefik.http.routers.shops-secure.middlewares=force-STS-Header" + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + engine-minions: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-engine:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + redis: + condition: service_started + cm: + condition: service_started + environment: + COMMERCEENGINE_AppSettings__DeploymentId: HabitatMinions01 + COMMERCEENGINE_AppSettings__EnvironmentName: HabitatMinions + COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl: "https://${ID_HOST}" + COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl: "http://id" + COMMERCEENGINE_AppSettings__AllowedOrigins: "https://${BIZFX_HOST}|https://${CD_HOST}|https://{CM_HOST}" + COMMERCEENGINE_AppSettings__AntiForgeryEnabled: "false" + COMMERCEENGINE_AppSettings__UseHttpsInKestrel: "false" + COMMERCEENGINE_Caching__Redis__Options__Configuration: redis:6379,ssl=False,abortConnect=False + COMMERCEENGINE_Caching__Redis__Options__InstanceName: Redis + COMMERCEENGINE_CommerceConnector__ClientId: ${XC_ENGINE_CONNECT_CLIENTID} + COMMERCEENGINE_GlobalDatabaseName: ${XC_GLOBAL_DB} + COMMERCEENGINE_GlobalDatabaseServer: mssql + COMMERCEENGINE_GlobalDatabaseUserName: sa + COMMERCEENGINE_GlobalDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_GlobalTrustedConnection: "${XC_GLOBAL_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SharedDatabaseName: ${XC_SHARED_DB} + COMMERCEENGINE_SharedDatabaseServer: mssql + COMMERCEENGINE_SharedDatabaseUserName: sa + COMMERCEENGINE_SharedDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_SharedTrustedConnection: "${XC_SHARED_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SitecoreHost: cm + COMMERCEENGINE_SitecoreDatabase: master + COMMERCEENGINE_SitecoreUsername: admin + COMMERCEENGINE_SitecoreDomain: sitecore + COMMERCEENGINE_SitecorePassword: ${SITECORE_ADMIN_PASSWORD} + COMMERCEENGINE_SitecoreProtocol: http + COMMERCEENGINE_SitecoreAllowAnonymousUser: "true" + COMMERCEENGINE_SitecoreExternalProtocol: https + COMMERCEENGINE_SitecoreExternalHost: ${CM_HOST} + COMMERCEENGINE_SolrUrl: http://solr:8983/solr + COMMERCEENGINE_IsSolrCloud: "false" + COMMERCEENGINE_StorefrontIndexPrefix_web_index: sitecore_web_index + COMMERCEENGINE_StorefrontIndexPrefix_master_index: sitecore_master_index + COMMERCEENGINE_SearchIndexPrefixOrdersScope: OrdersScope + COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild: OrdersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCustomersScope: CustomersScope + COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild: CustomersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope: CatalogItemsScope + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild: CatalogItemsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPromotionsScope: PromotionsScope + COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild: PromotionsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope: PriceCardsScope + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild: PriceCardsScope-Rebuild + COMMERCEENGINE_EngineAuthoringUrl: https://${AUTHORING_HOST} + COMMERCEENGINE_EngineShopsUrl: https://${SHOPS_HOST} + COMMERCEENGINE_EngineMinionsUrl: https://${MINIONS_HOST} + COMMERCEENGINE_BraintreeEnvironment: ${XC_ENGINE_BRAINTREEENVIRONMENT} + COMMERCEENGINE_BraintreeMerchantId: ${XC_ENGINE_BRAINTREEMERCHANTID} + COMMERCEENGINE_BraintreePublicKey: ${XC_ENGINE_BRAINTREEPUBLICKEY} + COMMERCEENGINE_BraintreePrivateKey: ${XC_ENGINE_BRAINTREEPRIVATEKEY} + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.minions-secure.entrypoints=websecure" + - "traefik.http.routers.minions-secure.rule=Host(`${MINIONS_HOST}`)" + - "traefik.http.routers.minions-secure.tls=true" + - "traefik.http.routers.minions-secure.middlewares=force-STS-Header" + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s + engine-ops: + isolation: ${ISOLATION} + image: ${XC_SITECORE_DOCKER_REGISTRY}sitecore-xc-engine:${XC_PACKAGES_TAG} + depends_on: + mssql: + condition: service_healthy + solr: + condition: service_started + id: + condition: service_started + redis: + condition: service_started + cm: + condition: service_started + environment: + COMMERCEENGINE_AppSettings__DeploymentId: HabitatOps01 + COMMERCEENGINE_AppSettings__EnvironmentName: HabitatOps + COMMERCEENGINE_AppSettings__SitecoreIdentityServerUrl: "https://${ID_HOST}" + COMMERCEENGINE_AppSettings__InternalSitecoreIdentityServerUrl: "http://id" + COMMERCEENGINE_AppSettings__AllowedOrigins: "https://${BIZFX_HOST}|https://${CD_HOST}|https://{CM_HOST}" + COMMERCEENGINE_AppSettings__AntiForgeryEnabled: "false" + COMMERCEENGINE_AppSettings__UseHttpsInKestrel: "false" + COMMERCEENGINE_Caching__Redis__Options__Configuration: redis:6379,ssl=False,abortConnect=False + COMMERCEENGINE_Caching__Redis__Options__InstanceName: Redis + COMMERCEENGINE_CommerceConnector__ClientId: ${XC_ENGINE_CONNECT_CLIENTID} + COMMERCEENGINE_GlobalDatabaseName: ${XC_GLOBAL_DB} + COMMERCEENGINE_GlobalDatabaseServer: mssql + COMMERCEENGINE_GlobalDatabaseUserName: sa + COMMERCEENGINE_GlobalDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_GlobalTrustedConnection: "${XC_GLOBAL_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SharedDatabaseName: ${XC_SHARED_DB} + COMMERCEENGINE_SharedDatabaseServer: mssql + COMMERCEENGINE_SharedDatabaseUserName: sa + COMMERCEENGINE_SharedDatabasePassword: ${SQL_SA_PASSWORD} + COMMERCEENGINE_SharedTrustedConnection: "${XC_SHARED_DB_TRUSTED_CONNECTION}" + COMMERCEENGINE_SitecoreHost: cm + COMMERCEENGINE_SitecoreDatabase: master + COMMERCEENGINE_SitecoreUsername: admin + COMMERCEENGINE_SitecoreDomain: sitecore + COMMERCEENGINE_SitecorePassword: ${SITECORE_ADMIN_PASSWORD} + COMMERCEENGINE_SitecoreProtocol: http + COMMERCEENGINE_SitecoreAllowAnonymousUser: "true" + COMMERCEENGINE_SitecoreExternalProtocol: https + COMMERCEENGINE_SitecoreExternalHost: ${CM_HOST} + COMMERCEENGINE_SolrUrl: http://solr:8983/solr + COMMERCEENGINE_IsSolrCloud: "false" + COMMERCEENGINE_StorefrontIndexPrefix_web_index: sitecore_web_index + COMMERCEENGINE_StorefrontIndexPrefix_master_index: sitecore_master_index + COMMERCEENGINE_SearchIndexPrefixOrdersScope: OrdersScope + COMMERCEENGINE_SearchIndexPrefixOrdersScope-Rebuild: OrdersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCustomersScope: CustomersScope + COMMERCEENGINE_SearchIndexPrefixCustomersScope-Rebuild: CustomersScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope: CatalogItemsScope + COMMERCEENGINE_SearchIndexPrefixCatalogItemsScope-Rebuild: CatalogItemsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPromotionsScope: PromotionsScope + COMMERCEENGINE_SearchIndexPrefixPromotionsScope-Rebuild: PromotionsScope-Rebuild + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope: PriceCardsScope + COMMERCEENGINE_SearchIndexPrefixPriceCardsScope-Rebuild: PriceCardsScope-Rebuild + COMMERCEENGINE_EngineAuthoringUrl: https://${AUTHORING_HOST} + COMMERCEENGINE_EngineShopsUrl: https://${SHOPS_HOST} + COMMERCEENGINE_EngineMinionsUrl: https://${MINIONS_HOST} + COMMERCEENGINE_BraintreeEnvironment: ${XC_ENGINE_BRAINTREEENVIRONMENT} + COMMERCEENGINE_BraintreeMerchantId: ${XC_ENGINE_BRAINTREEMERCHANTID} + COMMERCEENGINE_BraintreePublicKey: ${XC_ENGINE_BRAINTREEPUBLICKEY} + COMMERCEENGINE_BraintreePrivateKey: ${XC_ENGINE_BRAINTREEPRIVATEKEY} + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.force-STS-Header.headers.forceSTSHeader=true" + - "traefik.http.middlewares.force-STS-Header.headers.stsSeconds=31536000" + - "traefik.http.routers.ops-secure.entrypoints=websecure" + - "traefik.http.routers.ops-secure.rule=Host(`${OPS_HOST}`)" + - "traefik.http.routers.ops-secure.tls=true" + - "traefik.http.routers.ops-secure.middlewares=force-STS-Header" + healthcheck: + test: ["CMD", "powershell", "-command", "C:/Healthchecks/Healthcheck.ps1"] + timeout: 300s diff --git a/sxc/10.0/xc1-cxa/mssql/init/Dockerfile b/sxc/10.0/xc1-cxa/mssql/init/Dockerfile new file mode 100644 index 0000000..9487218 --- /dev/null +++ b/sxc/10.0/xc1-cxa/mssql/init/Dockerfile @@ -0,0 +1,23 @@ +# escape=` + +ARG BASE_IMAGE +ARG SPE_RESOURCES_IMAGE +ARG SXA_RESOURCES_IMAGE + +FROM ${SPE_RESOURCES_IMAGE} AS spe_resources + +FROM ${SXA_RESOURCES_IMAGE} AS sxa_resources + +FROM ${BASE_IMAGE} AS spe + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY --from=spe_resources C:\module\db C:\resources\spe + +FROM spe AS sxa + +COPY --from=sxa_resources C:\module\db C:\resources\sxa + +FROM sxa AS cxa + +COPY ./dacpacs ./resources \ No newline at end of file diff --git a/sxc/10.0/xc1-cxa/mssql/standalone/Dockerfile b/sxc/10.0/xc1-cxa/mssql/standalone/Dockerfile new file mode 100644 index 0000000..7d2dfa1 --- /dev/null +++ b/sxc/10.0/xc1-cxa/mssql/standalone/Dockerfile @@ -0,0 +1,30 @@ +# escape=` + +ARG BASE_IMAGE +ARG SPE_RESOURCES_IMAGE +ARG SXA_RESOURCES_IMAGE + +FROM ${SPE_RESOURCES_IMAGE} AS spe_resources + +FROM ${SXA_RESOURCES_IMAGE} AS sxa_resources + +FROM ${BASE_IMAGE} AS spe + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY --from=spe_resources C:\module\db C:\spe_data + +RUN C:\DeployDatabases.ps1 -ResourcesDirectory C:\spe_data; ` + Remove-Item -Path C:\spe_data -Recurse -Force; + +FROM spe AS sxa + +COPY --from=sxa_resources C:\module\db C:\sxa_data + +RUN C:\DeployDatabases.ps1 -ResourcesDirectory C:\sxa_data; ` + Remove-Item -Path C:\sxa_data -Recurse -Force; + +COPY dacpacs/ C:/commerce_data + +RUN C:\DeployDatabases.ps1 -ResourcesDirectory C:\commerce_data; ` + Remove-Item -Path C:\commerce_data -Recurse -Force; \ No newline at end of file diff --git a/sxc/10.0/xc1-cxa/solr/init/Dockerfile b/sxc/10.0/xc1-cxa/solr/init/Dockerfile new file mode 100644 index 0000000..2f538a4 --- /dev/null +++ b/sxc/10.0/xc1-cxa/solr/init/Dockerfile @@ -0,0 +1,12 @@ +# escape=` + +ARG BASE_IMAGE +ARG SXA_RESOURCES_IMAGE + +FROM ${SXA_RESOURCES_IMAGE} AS sxa_resources + +FROM ${BASE_IMAGE} AS sxa + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY --from=sxa_resources C:\module\solr\cores-sxa.json C:\data\cores-sxa.json \ No newline at end of file diff --git a/sxc/10.0/xc1-cxa/solr/standalone/Dockerfile b/sxc/10.0/xc1-cxa/solr/standalone/Dockerfile new file mode 100644 index 0000000..9ff5805 --- /dev/null +++ b/sxc/10.0/xc1-cxa/solr/standalone/Dockerfile @@ -0,0 +1,15 @@ +# escape=` + +ARG BASE_IMAGE +ARG SXA_RESOURCES_IMAGE + +FROM ${SXA_RESOURCES_IMAGE} AS sxa_resources + +FROM ${BASE_IMAGE} AS sxa + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +COPY --from=sxa_resources C:\module\solr C:\sxa_data + +RUN C:\Add-SolrCores.ps1 -SolrPath C:\solr -SolrSchemaPath C:\sxa_data\managed-schema -SolrCoreNames 'sitecore_sxa_master_index,sitecore_sxa_web_index'; ` + Remove-Item -Path C:\sxa_data -Recurse -Force; \ No newline at end of file diff --git a/sxc/10.0/xc1-cxa/traefik/certs/authoring.localhost.crt b/sxc/10.0/xc1-cxa/traefik/certs/authoring.localhost.crt new file mode 100644 index 0000000..97c08c0 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/authoring.localhost.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDADCCAeigAwIBAgIJANWbFRqU1ORCMA0GCSqGSIb3DQEBCwUAMCUxIzAhBgNV +BAMMGkNvbW1lcmNlIENvbnRhaW5lciBSb290IENBMB4XDTIwMDQxNjE4Mjg1MFoX +DTMwMDQxNDE4Mjg1MFowHjEcMBoGA1UEAwwTYXV0aG9yaW5nLmxvY2FsaG9zdDCC +ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANvcRPvBKjYyEFq0PnQCTddk +WQX67yebWIZGXO7jYmNivVs2HghPmLaNWICXDpVKZmysWixu8QI25TuNMNEvZrv3 +qtcRRFHpDkKO6JPh8cjjZ/4wAy5KwPzGz99ijTIzqRnuhjeZzbfN0wH5GyZ7R4H3 +CDIWeaLoGpj9ZidMVEuI8PrD0ygM7RXM3x2VDUOnUWHtRmVX9hhjQaZRgENSdGj4 +QxEdgP8CpXjbMMWc+nsSDqiVvXYSnS3r3iPhCbo0hUP8s5c265iX+MWzajLVrMst +/sHpdGH8vVZxFidNzZCCCxIHTCSYa/6EWzwzLLkVlEYNhtbmobX9WfAz+jSMeUsC +AwEAAaM6MDgwCQYDVR0TBAIwADALBgNVHQ8EBAMCBeAwHgYDVR0RBBcwFYITYXV0 +aG9yaW5nLmxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAQEAIt+6GORR8nxKJ5nv +vsUzoWdGp1HLIV5fZT4Aq+6VQ/NMX4Ms89w1/npUH3D4+tmlFEdxLsFF2Jhmbynr +fs8ROmCyT5IIIGX34Vp5SLJBqjSxEFKWpxeOTRrC2CRdZAG7rS3sILCwGBxuJnhn +z9UU8pInDGeBjPZIchJbdI9lREDiSqbxGUP9AfWPZlYAtUSyAbCYMLg7RFNEPJl7 +IfZ1l0OIa1R4wxMfqc96YkSiXCi8ZMgbqsxWLkrA3+L8vhzxrwah7lYH8I8GlY1a +AlXUZz26/GkPevIGINu72nPn16pV7lqXpTdBTOOZhDbOFCyfNnw1zUM4InZtpNZd +ZYZ5mg== +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/authoring.localhost.key b/sxc/10.0/xc1-cxa/traefik/certs/authoring.localhost.key new file mode 100644 index 0000000..41f1e55 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/authoring.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEA29xE+8EqNjIQWrQ+dAJN12RZBfrvJ5tYhkZc7uNiY2K9WzYe +CE+Yto1YgJcOlUpmbKxaLG7xAjblO40w0S9mu/eq1xFEUekOQo7ok+HxyONn/jAD +LkrA/MbP32KNMjOpGe6GN5nNt83TAfkbJntHgfcIMhZ5ougamP1mJ0xUS4jw+sPT +KAztFczfHZUNQ6dRYe1GZVf2GGNBplGAQ1J0aPhDER2A/wKleNswxZz6exIOqJW9 +dhKdLeveI+EJujSFQ/yzlzbrmJf4xbNqMtWsyy3+wel0Yfy9VnEWJ03NkIILEgdM +JJhr/oRbPDMsuRWURg2G1uahtf1Z8DP6NIx5SwIDAQABAoIBAQCRaWjSnVpex9Pb +OdUIgzGaoMrkUqf0KSFuhYEXmppLI1YbynoogwR80JVVTxMdGD0P6RomwyVxkn8g +WOyNne0zqsV6QvhNuHdu+/fFPy3b8NOp4XVpG5XyWUfI9fRu3I4eEY0Bnx7ZTy8c +4fXcCLMtuQXZotXGMf7NauMyYKBr56eJWoI4yswg8xukwXoz2+DHAjvWTY8TJGOH +y1MgbvgD/levrCH7UBCsBcCA17Q9EgUoF4DHM+Rm307w7S/XDvsvazW4RK2Gf545 +AmQUxYtVH0oBD6YKHAZ4pV0qqY6ce2/aBUfHWUg5LSgHuLrKuCRJ5MO2FXAOFJl6 +/A8lsbHRAoGBAPSzyLPy90HjfL0Gm71rnhMxcnFPjP+OhOFAP9Y1ZiL49NMXiAUW +T8R8d9Oy89HC8Sicmu9Tsvygqo49E4zxcoxBxGlfRME8CQqQA5BT9o+HVfVH7UhR +dC7rVhXelElQ5943vhL9jbxWENJDsq2qzMZVVK0dceaOdGrGrjOoFIIpAoGBAOYC +3xsZ0OkNearSna3QW5H627YImKQMvsHZKwB92uFyPmrpz06KpM+D3yJ4Er90xJQ5 +FizDeerkrdBwysclgJW0/smLnYhBd1fat66YepqJEM5ECOw9H8XRzsKl2QqwVm+n +ZfUm3r9OdTGFEAwIJHbTOgf1U0Qqwvzm+a6bWNZTAoGABuKYHxgTBPOVquvoree9 +RuT5R17ppLcp3fykzy4pdYpzuQzMcvgxvmGSLY63dYt6pZ3ibiF4w8rxgZcOWcTh +aDjhgeWAVb+OsZFjyEfUhC1WqdQgRQylrDxK68qbeYShQYtn+bjQqB/z0Ta+bEyF +/n6gJ07QyZ/wfqCgfiuYiCECgYEAq61xATVfrNOWAF57uoROFMN8wn3gEHJC30VM +x20otiUjWYFyblklco4nOf8NX0G0iD2jw32TvjM5WN8XO1VOiG8zzRMcXdsfTL+/ +Yd4FhNrRZGN7lXh6Apj7DmXjfgroOSZk/3onv/q7ll6O/6wEK3y1T8NYhwSzzThJ +HH5u7GkCgYBJqhTK/QVfp2owND46lhfDLjgxalaKDI4MB5VMssOt2G5Hual04ZUT +EdoQ8QkkSlLfBh2f9px0Xw8MmBXgXy9ejSQT3nAHUjOJoe8426aGtq/tyZSkAPQI +06LzSr7cOVLnTVh/Xupi7c3zkxMcrt4a7WKCqtTRq0TrInd8WjeNlg== +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/bizfx.localhost.crt b/sxc/10.0/xc1-cxa/traefik/certs/bizfx.localhost.crt new file mode 100644 index 0000000..7e30753 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/bizfx.localhost.crt @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE----- +MIIC+DCCAeCgAwIBAgIJANWbFRqU1ORGMA0GCSqGSIb3DQEBCwUAMCUxIzAhBgNV +BAMMGkNvbW1lcmNlIENvbnRhaW5lciBSb290IENBMB4XDTIwMDQxNjE4Mjg1MVoX +DTMwMDQxNDE4Mjg1MVowGjEYMBYGA1UEAwwPYml6ZngubG9jYWxob3N0MIIBIjAN +BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsGnNUXINnqVekw+LqNwCIaA7lgRO +tMZpxjUp852MozbuDDGHq3bFUVLyZLAReeUDyWiK8w/TJnkGwV6tNC3wOhF7tXCu +Ay+5+aNhBcSO42qMrtpuVzYNpvF/61gP5ThTVw9pKDHrJsbxNjuiNaXxRAT1M7f8 +0+tKYAFsiW/XukPvZQ3qvX1MNY2sLXOys7Pmncl8yBL8N6Ae1jUSmeeV6jx4Dl3x +chPw3N8o7YCxi/yJc9+8xpxa9s4bvB62BjRpHwKsPEsUg70q8n0HFe7nZYvYiCd0 +B6kV6Ib2oBY2DVPjyeGHy4sbO4Q0xpcofA0FP77GhS/IXqaSGKs9lQmadwIDAQAB +ozYwNDAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAaBgNVHREEEzARgg9iaXpmeC5s +b2NhbGhvc3QwDQYJKoZIhvcNAQELBQADggEBAFwn7bIUAJvMvWplFvm3E+qT3xrP +aGGQPJS9a0/7a6rvneVpa3D+JhC3LveWEgFOHVOTdwMXbw6DL79/XpkHZ4x1LUPg +nJxiLnLpAwf+AYpSQahWgn+R11VJKIhIQgHFruAoCXpCsxjd9TVSCT+/dA/wicQp +zkHwuXAUDDfsOhXA3ImXnB2Pf4udOy0BAp5K9LBZT6nWfunjQhsbFBDg9Nb5Xqgx +JHS8Ygjvxx0klNtmPijMmYjRYg96nv55bB9jhrVUsBXFPXYhZ4dVYLuGFgEVkXC5 +TIHV/7B1aCrkQ6WWT69DY1nLYCpmUy/3KLaH/ZTFokK0abRRBfwK1qhCrdM= +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/bizfx.localhost.key b/sxc/10.0/xc1-cxa/traefik/certs/bizfx.localhost.key new file mode 100644 index 0000000..cf31a7e --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/bizfx.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAsGnNUXINnqVekw+LqNwCIaA7lgROtMZpxjUp852MozbuDDGH +q3bFUVLyZLAReeUDyWiK8w/TJnkGwV6tNC3wOhF7tXCuAy+5+aNhBcSO42qMrtpu +VzYNpvF/61gP5ThTVw9pKDHrJsbxNjuiNaXxRAT1M7f80+tKYAFsiW/XukPvZQ3q +vX1MNY2sLXOys7Pmncl8yBL8N6Ae1jUSmeeV6jx4Dl3xchPw3N8o7YCxi/yJc9+8 +xpxa9s4bvB62BjRpHwKsPEsUg70q8n0HFe7nZYvYiCd0B6kV6Ib2oBY2DVPjyeGH +y4sbO4Q0xpcofA0FP77GhS/IXqaSGKs9lQmadwIDAQABAoIBAANTCxZ00sLhlOWq +jlQxSSz/CwBptl37uzSL/e1kU6kjuNqr+EWH6HH+4Sh6lOm6IhcijDPGYZFBCJqO +QS9Rikxd1fn2VKEkvhlxNbvZF2Q7tsj4vsmP8DPsKx/xOeN060UhujaSsj650wPV +ndnq9Z/1g/VkizQnI/CpNjVk0SjmZM0pDSmOvZJV2yABYnArSngUsRH48uD1zSHw +zx312uM3wJUUggOE5Lm8IzazK7uR08v3eOjjyuhHr+R1Zjs0C8QgcIvx71Epoizv +d/fLBKcoa5GjYoyANqugHO4VvHYt52VZjgTR04livXOFjs+J+Vlhe5FfkLS0fiqN +LFfheYECgYEA5UlNIW9bmVGh91FbkOlv3jgLKKOdgLM4SqaLZpqfT+MOMf7mAPoW +OVTb0LMHn06CdDl8zmAvecPEJ1NcGAQT+qSrmgppULWUJ2ulkcnokbIiC4/Qkd6j +ZOl28CDF/z7t0r3bPUX8yGuTPKA6I+3+64o8dkBr6DvhZmnXKG6v7MECgYEAxPeC +Hl/FbdkNmy9RdWtiXyx/slIO5/KKokiMo8DlA65UP6tUeUXYxN/ua1UiIM3XFDv9 +LcFHZxeNwPjDt8tYZ88T+kbs53BE7W+y/uGwbOFqeqozmxWWIp+MSF+q5IfYXroo +AKZW52S3YJGHcVxZyJYJRLC7+3EVauV7YqoD/TcCgYBYSWBUtn9Lyv4VsBMU+n3j +0CqjzFRyYRAU1oooyPL9HM2zfJXt3F5AVyeI9dbChcV/oT8obCr7tODLz7JPYQqc +YVneJ5IjzLcucqm/OELADxpC326NLHA4BBmTHtt+jCmhEw/fSRqrxZhdKMkaWqLk +6UactfOW6a/B8pExdWVyQQKBgQCHnfOVflOtorlflGD9/AYribQSz7U7tyAFRPaw ++Wu18R5JCGqNZa4vQBAlDuUEuTXR1Mwp6N6E+Q69Q4tezT/9mfMjbBpJ8F9FLJeO +L08OaNarxuzpZx+Mj1ZDrrs3xuEPuBU6/Uzw3cP1Vb5wKyoWllejWBzWr7ITfBZM +hMtiWQKBgGYP8lePwiw4tRsFhJZGmffERNtW9A3ugUwxisaSmVUm9Pn+vyJzzoi8 +4I+AbBCKKDtmOPnabAgWDHQyWIT7k9ZcVaP2//gYHlOauyG/va97nO9nL4GR9NpX +HWpoof0Cs/VBVym5/Wmzq5R2oMsR07SA7Cx80Dd9lYizG2VQXp0r +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/minions.localhost.crt b/sxc/10.0/xc1-cxa/traefik/certs/minions.localhost.crt new file mode 100644 index 0000000..ba75af9 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/minions.localhost.crt @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE----- +MIIC/DCCAeSgAwIBAgIJANWbFRqU1OREMA0GCSqGSIb3DQEBCwUAMCUxIzAhBgNV +BAMMGkNvbW1lcmNlIENvbnRhaW5lciBSb290IENBMB4XDTIwMDQxNjE4Mjg1MFoX +DTMwMDQxNDE4Mjg1MFowHDEaMBgGA1UEAwwRbWluaW9ucy5sb2NhbGhvc3QwggEi +MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDOqAmAxVDcen62idtzpB6x7jNk +//6tMKAIOl/V353P3mb/qMOIqZBuF/Jvo+dTH4zGkWX4J8DZofXAaSMGglR1RSqj +hYLobpQlrSKdIRSm15vOhy5nVTTQz7mLReIYvHqGHGajVJuxtLUXqPgNMTZFrB1K +9nUQsKgt7vSspUH6eQ9WbjBGBNwpulXpjDGsQItvMN+lm63jAbiQBBLTP+lK/CUM +DHBBhbm1ycjIfFST5BKbcRh7F+d/+jYTbZrivtaYSUdqjPbZGDp11YHlEBHF2YoG +qRsOhejkoo1os4bEQvQaIwExssP7/j/6PBaUIuQGbS66VuBl+jS6RESq8CV/AgMB +AAGjODA2MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgXgMBwGA1UdEQQVMBOCEW1pbmlv +bnMubG9jYWxob3N0MA0GCSqGSIb3DQEBCwUAA4IBAQAyQcBuQJSdKLmIalYUWjsk +p90LgbZVdypCmsv9Bi3EZnbfFDVX/zPXtH5+mqxuQhZ4LMvk38kYQHCyd+8sGWgQ +nMOoP2tzNwxV8sPO4TQ5oMVymoMcKu/hZE3Pn3LOxEma8xum+EtJEzl5p+rivYLI +hGtQtZejYRdxJU32mrvJVCDDZIwhaS5XA90oGY4SYNRD2GCSW6pPuSDV7BzJzvon +mM9dB+dEdbQoRUrWzDmdRNbyg9/I93swjTlD6nj0emoNvk6s7BszQ4rp2fAnFWuM +Mq9fQhvgpUg3e6TM30xSHwmSZmZcWtPCUbWfICrNZvE+L6FnjINOG0epc+UQJpMP +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/minions.localhost.key b/sxc/10.0/xc1-cxa/traefik/certs/minions.localhost.key new file mode 100644 index 0000000..742b475 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/minions.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAzqgJgMVQ3Hp+tonbc6Qese4zZP/+rTCgCDpf1d+dz95m/6jD +iKmQbhfyb6PnUx+MxpFl+CfA2aH1wGkjBoJUdUUqo4WC6G6UJa0inSEUptebzocu +Z1U00M+5i0XiGLx6hhxmo1SbsbS1F6j4DTE2RawdSvZ1ELCoLe70rKVB+nkPVm4w +RgTcKbpV6YwxrECLbzDfpZut4wG4kAQS0z/pSvwlDAxwQYW5tcnIyHxUk+QSm3EY +exfnf/o2E22a4r7WmElHaoz22Rg6ddWB5RARxdmKBqkbDoXo5KKNaLOGxEL0GiMB +MbLD+/4/+jwWlCLkBm0uulbgZfo0ukREqvAlfwIDAQABAoIBABYZ8JI+CAzcaOra +yYaPmdzLreFyY2lgVu0qWQ+Fj9ooXfmfsfHOuKydkQcRj27bY/HkoPQuRDjCUocW +d3F9xMyZ7hp47+wtz1hMMPR/EjdZvccTvAm/Ghvu61gSzEB6/9uR9AQpy1DxE6EJ +KCY5CiXfZ26Z9yEm04W+FZrVPb4svPGP6for+2nYXYoLnOfXEhaGONjGQhmcSoSk +my6XdSIa/84o+uK+h/DqkWamN0teIF1H75hRPOfZrGuQ0jsWGtGOXWqLXeda334M +mSaQJPS5gaiuVRfzQQS4tnCNlYxE4D0dy+skwooyz9u1tK0mddf/upvLmbUmRnVO +2nFdgjkCgYEA+gT5+VYbPHX8t8VpTL5RPG3MYYaQOMMxj19ZeF5G0iEYKsAFKiSA +BEbd48whsm7jNvGSirmtA3Rb8/EVQyDSN77TJWYcPRSDtLi313vP0pcHXD4Swd7O +aYsNSJWH63ZUREZ0L+dGTVmjK0hZDfEYQwqHgkiX+FsDAU3COFDgOM0CgYEA05mF +nfg0g58AvFT2xkTTzu3N2im+GnBV1fQIALfcy0ggwfhuhuGeSG2NLMjxCw7aqcrz +FcNut7zsX9HfdElYQvdeSI3RGOyef8nAAnc6o71SlbmvhaBYdkGYqORotVoLAuJB +PiwewDuGzG4vuJSb/xc7qqKuTlIK+ZWWLq1ER3sCgYBnOIC/mPYbqxaQBHep0HUX +frk/ll+an7OpXpNAp6OTg0hH9gjr0i/sFBntv0w2L6Os/mUi0u+EGpkQCHtfwIAp +taXUreiAqySJCy4TT7GIXwQR6Cq0UblkR51PVzTLWIoHuhKj6FbU/mnoJ7FkmSIM +I5+4gSIEzgZalnDV8UXxDQKBgExz2Lo11suDpKFnVW5XqevHMixUDrLAydKvBEE2 +LVlpaySKXWzwkd77bhmzVJw5NrpIcMH5RcSvRvxr+P+sDG7Nr8wpKVaHD9F+FJkP +eSl2GyOr3oY6ZBv+IWlMdaSorvfQxd/v0wCDwXWVjjpzv1VQkKdbdf0oWXzKFmQx +CE2HAoGBAJkvHmzQFJWTQnEdMSEK3yD+zvhY9atWH9JmxYLWz4gl83n54oBoYE0m +lN1O5x4AVTV6KMhLXcL4np552F1DW/oxJGcCeZyDW6KPphO2kEzaUAStaz3DhC6N +vkCO/plZIqfao+3/r5NCMIxd+T+/a2EC9nxO7pZiM4IRXJ+aDoPX +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/ops.localhost.crt b/sxc/10.0/xc1-cxa/traefik/certs/ops.localhost.crt new file mode 100644 index 0000000..4415727 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/ops.localhost.crt @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE----- +MIIC9DCCAdygAwIBAgIJANWbFRqU1ORFMA0GCSqGSIb3DQEBCwUAMCUxIzAhBgNV +BAMMGkNvbW1lcmNlIENvbnRhaW5lciBSb290IENBMB4XDTIwMDQxNjE4Mjg1MVoX +DTMwMDQxNDE4Mjg1MVowGDEWMBQGA1UEAwwNb3BzLmxvY2FsaG9zdDCCASIwDQYJ +KoZIhvcNAQEBBQADggEPADCCAQoCggEBANl/5x2I4h8RnPlUJ9Ayb1adGt9/HBp1 +y0LMn/uRYA1EqT0SpJsxMm3+Ga/2FKv7zhtnHM7zmHNHTazxgkhY0ESD50XF+eeS +6An51bccTFL8bQMn5/tb5t5nLp67kgzgmsQIl6UZ9Kslwh2JcbPzDPthx0Z1oaUX +KIknspnLnnbF4M7Zn5Aahq/tBijurP+phEZCj5POltoW0+iDc5pt03ZGIaEfHF19 +JYbr5HyHD0EnIXO6/RyyO25jPpAvtjKS//97m7LOWTSCzgdqRiifw/Db47LRoZJv +hIT6zJxZsiN7KkYkCaantt5fBvJaX3e1Ych6nSgSJyMH/DGQh1llsvcCAwEAAaM0 +MDIwCQYDVR0TBAIwADALBgNVHQ8EBAMCBeAwGAYDVR0RBBEwD4INb3BzLmxvY2Fs +aG9zdDANBgkqhkiG9w0BAQsFAAOCAQEAYQr2g3zScfWikRsKlpkxVLZsT+8WHS1f +l5STP+dKgHeDCS2cD15CEmQhDEmzd6xF1qcQaqIyyrkVzwN1jzgMyNc5rgtjDRbK +xgjL5FWGzekrPI98my16he+kKYDULUA5yVjMMuEUqJKjdLEF0dtn4a69QRa5/a6n +T4rTZ5v8eQ7Re/ZP0TrMLixpMtiD0VcwgpsJzVQHq6muNYDEfeuucKNKUjAhRXXz +XHV7oP6dPXfvmmfZh+Hun9IUPHsVJSU9kJce2oztEU7YSkA1BUrGygdXwCPKhjol +vYYCbRHHkL110/J33gTUn/c20z0Wa6iScn4SFFHGYMTGlfHGzYM+AA== +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/ops.localhost.key b/sxc/10.0/xc1-cxa/traefik/certs/ops.localhost.key new file mode 100644 index 0000000..382ce97 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/ops.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEA2X/nHYjiHxGc+VQn0DJvVp0a338cGnXLQsyf+5FgDUSpPRKk +mzEybf4Zr/YUq/vOG2cczvOYc0dNrPGCSFjQRIPnRcX555LoCfnVtxxMUvxtAyfn ++1vm3mcunruSDOCaxAiXpRn0qyXCHYlxs/MM+2HHRnWhpRcoiSeymcuedsXgztmf +kBqGr+0GKO6s/6mERkKPk86W2hbT6INzmm3TdkYhoR8cXX0lhuvkfIcPQSchc7r9 +HLI7bmM+kC+2MpL//3ubss5ZNILOB2pGKJ/D8NvjstGhkm+EhPrMnFmyI3sqRiQJ +pqe23l8G8lpfd7VhyHqdKBInIwf8MZCHWWWy9wIDAQABAoIBAAmeIEgsD2O0Ua6s +y/3m3QmFdPTBGCsLXmubxM9JBGhRyvIKawD50fMPM2+WgB+CyQBpNNrp5qniU0r8 +evhcBQmik42ATaax1lTqmUq5k55vzxo+n4F79N+MzID0ZmbvX6ifgKUqWqleyBCq +TT7Z1o8fKcKx3O4B8ibufHVUjbNOw90aSLv6ny9z5jJPMZrOY7U7r6HfcCnF3CVB +/0BVoBQWdJYkbFPDVHfyXwfnSRz1CIWOFiRz1GjFjCK0JBxr/hiVnrLnt8OfvZzM +oSaU1KRryDr9bOg5U6YyvEqydwVxBC7uF9+/Kcgu2U4BUyDaQJlycLMgAz4hdQ93 +zE+TWEECgYEA75H0UOEu9sT2x7Cb3IamfRJFafn/yOH6vVBrobS/xuc8ZZ872h5z +RjnAW9JXlqzMQ0Dm2hxCMJxCbIBPj6cOPnGmaGk9twRXGSC5cnpb59qoVAut3IcG +idSz3/ae2TQgA6xL7BFOqNz7Y1DbnWrBiHEQuGBnXsRya6+1nqHuKDECgYEA6Gp2 +5plsQR1lDKEwXt8hMaNYw5YAzM1aSNjrbgweBgwTZFMRgXqbm4XO3ttzDBSbZlyl +hYm3KmRq8Xzb1qOJewKjnk4fJmXsWSjsBFXuEJ/4JCrKvD3rBa8u2oAIFCD/fYdy +GpgVQPH2gAtEWwjEX0ldVj4m86RO920bxI3Na6cCgYAt7mjOHO5ZJ5g83vJzDGnd +LuSaFfFhfVoKc+G+5h2ir/DXdvkNr6rgOvBTaneajtS2zDm2dZaHJV5i2RLn8tp7 +RGToPc00SqO8UJbdiPIX+McvHfIehtDNGjfGZ806zZCZw63mu8a9/2g/OWBxxOcI +Fs1i3DDVbYqWdOC4Ykl78QKBgQC1h5JfAq5fHYpzluKk9zqB/sex3FO7oxlFlMgu +KCC7MGtlDMy7iPxJOPYfcuAlK2NFTE+sQahi4BP3kkJTH2CeR61sVDBYWXuFGEVg +DY3oRkoWVaYL6YDL68x4tU+aCTwE2+nvg6H2HAcgc6xsPijDFBZm6hyaaFeVQg9S +Mj+kOQKBgQDLx4zptaIsjSGRc22k6/1FrRYv7FTijADXyZFTkegLttrLSErIfrYB +15iD26CopyowrTdNDDk7U67i2jNmCu+FCU6HlNn4v+DikWqBBJ/LjWylHPHdiW4g +tVMqsHOP0U0BWDZLv6Uze5Hb8nq4duOz4JmbDtTvr25gcDKg+tW+LA== +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/root-ca.crt b/sxc/10.0/xc1-cxa/traefik/certs/root-ca.crt new file mode 100644 index 0000000..de05509 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/root-ca.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDIDCCAgigAwIBAgIJAKoO7Lo+DytDMA0GCSqGSIb3DQEBCwUAMCUxIzAhBgNV +BAMMGkNvbW1lcmNlIENvbnRhaW5lciBSb290IENBMB4XDTIwMDQxNjE4Mjg0OVoX +DTQ3MDkwMjE4Mjg0OVowJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJv +b3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQChFn12HOzhwLmW +sT1hSLRkyvemTn7qm+xEFkgzwCM5VPh9prFLsbwR4hJ9dfsRIkHwYmQvPbI4CIas +ZA+inR2ybDn2wNGwbIhbj4UgJd36aCY56XlrcNo5CtRhvDhBoIbMjyQy5a9tA/mh +YMmnOPBrgqT7IPtMWnwFd+KotSRcac5mEFFTXtMk9gf/5QsE2ObbPunNJnZF2HgX +0bB6CTbkTPi14G41/RwJBPGQtEBLb8vn+CDYy4I+HHP8vZUoDIboNAys5p1+fixC +mkDlMV/jpZv15fDmN8oF1Xa2kBJ8ZuUbi3nvjQt5+kky6HHDtC2+nrhIGVo5VoSx +LDwP4/vXAgMBAAGjUzBRMB0GA1UdDgQWBBSJNj+U8zKa03rbO6QngVOZztO74zAf +BgNVHSMEGDAWgBSJNj+U8zKa03rbO6QngVOZztO74zAPBgNVHRMBAf8EBTADAQH/ +MA0GCSqGSIb3DQEBCwUAA4IBAQAYCtMnfgdAFVRIxxhr5sxTh48fE+rTtQoW8bqg +rJJKamrS37wj3i4ZAjMGL6RaURqfInCJiBERYQP6JfydHzJKb1lVtrJuY00zBook +rI39C66nfCnxUJgWuK06upgqkpEs0ubTRR8FWnIHuidJhG1kO//LfwZtCvXloxaY +LIxIsyNt2FKMQjm6fIcQvLzoJALDVemrfSOCDoCYZdD2kct7TXo1YzdiDOXiCJRp +EGAlfJP4CfKxobfErvmB4rrql+PDX+uMJVXbbEYVnn3PK+TFGXHo6Emd6BJB2PMi +Lq74sw5j4nbyXWL2cWxWy9XYcdOEqen2aWvAs6rJfxpwPj3D +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/root-ca.key b/sxc/10.0/xc1-cxa/traefik/certs/root-ca.key new file mode 100644 index 0000000..a6259b8 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/root-ca.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAoRZ9dhzs4cC5lrE9YUi0ZMr3pk5+6pvsRBZIM8AjOVT4faax +S7G8EeISfXX7ESJB8GJkLz2yOAiGrGQPop0dsmw59sDRsGyIW4+FICXd+mgmOel5 +a3DaOQrUYbw4QaCGzI8kMuWvbQP5oWDJpzjwa4Kk+yD7TFp8BXfiqLUkXGnOZhBR +U17TJPYH/+ULBNjm2z7pzSZ2Rdh4F9Gwegk25Ez4teBuNf0cCQTxkLRAS2/L5/gg +2MuCPhxz/L2VKAyG6DQMrOadfn4sQppA5TFf46Wb9eXw5jfKBdV2tpASfGblG4t5 +740LefpJMuhxw7Qtvp64SBlaOVaEsSw8D+P71wIDAQABAoIBACdT1k1/wlVbN/QS +UWnu1hvFcbCoeVPNvWDiD76SqgbVN9V1XNOeEMxM5Ta8Fw+XzYFihBMEfP4xFq// +vdF1ikqFIaGccZUg6ilwYI/4rrjztGFvHrWcV6qVekRiL1nWVxKZ37yNVsbGsas0 +dgbdX9TfkGe/JZr+fEjZe/y0PKxSxU2XUajHth6XkchcJOwgwV/ZS3Vt/HALy+Ny +K+ruEl5hoD6ID+YSNdGoaqXfWHnwuiqC3aapzMtrhbsM/d4AguUSnaRIMDCllUK+ +z600xzUlaMiwrppsvpG3vGs+XDH9iz3tX0LfJWpPOF/WWwKAPxoQQwmxtXotTMMz +h4mR1AECgYEA1L5vSTqv+pBrrFO33HalzHUMdFRNgMfPfWAvc5jGXrXdS6Tdm4wg +ziwfFRZGi9wENewB95vLZL6pceyh5IkDFuVni14lHJoxfoyEgXkbtp5Q48ZlP2Fk +kXuXQnL2YgIWxHvI0ysNEZRetEQASK8s8OgkBe+OCKnvS0Y59LOc1vUCgYEAwddM +kElt1vGBZGCwjae1cnQbPOqdywcejGS4hR5JCBwyQg5RcKU4BJXCFJHSFU+HbJai +D/9w9LXYHBHbSo6txnMYPNhj/e83FH1xnO0JjwACUhJsWk0XbdAHtLp3x0GUx5vI +VBNflmro2c/zgcU+ggyBZieSf/ZFUj3ivzcCEBsCgYEAkEDIiOkIZmgC+oiRxSWW +arp7RW3cV5Qktyi/RCy1ZYb/lMknks9Dd0knkk7WawM2v7FV7CVxltBJaPxBEgtt +UtseiLu/glNzeBGjz37lMcDLrIbcJEvPu24INIBrXC16bqRYmgc5B1CJnsX1Q1O0 +r21Y78Vtk6ZWob3ukmQv1vkCgYAboNFD24NxWHjF0tY3SokdKBldxF77OieLgSuf +paJpKoOrUJkhAhuK48GG5wXXjb9SpeGxgAochvKnhZAI/28bUvpIadtOrVLfc8XG +xS5QmIK8Ke4RrN1DBJykkNNTrjBDhxu1iBFewhwwN2iQvYlcReYHpmpGHNbikvmH +oZKEswKBgAgKiXRRaVUhqljRpMCMM6sUqjcXi8vKbREVzpDRohpZwqUfideejOKZ +S/se4GS1TJtxDwQkojUVngAjJwj3gPmpUJ0S7YimrZLvdWdxEMVdqN4Ddv8sKexm +2gM6x9DYC22HKtI/GVJYwTzjH2sBpvirOssyMoAJGVROWDSXRQo7 +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/root.crt b/sxc/10.0/xc1-cxa/traefik/certs/root.crt new file mode 100644 index 0000000..90b70c4 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/root.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDKzCCAhOgAwIBAgIUHJkMNTfH+IReN+4kDmXyKuBNfs8wDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NjMwMTUzOTQyWhcNNDcxMTE2MTUzOTQyWjAlMSMwIQYDVQQDDBpDb21tZXJjZSBD +b250YWluZXIgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +ALRe7Z+eb51+bhBkmTgGsYyuZ8wjxOmLX+GqDY3Hbeliiath6UhNy8lFxEKLoLjE +uLIMuD4AEorp/wTgakWHR4OgTeiqCVtkJ8/PLoMRz39+kAmAjL4cVy7ec/WdRW+C +R5TsYM6oTr9uWc6rNm0CkkttBA6uZpjiZRe/aKyVslHzhBcE8WFacUto+98S1eRL +LmCdMH9QXBJ60eSuykG466sUNpKFNQERAu1LxH29g9KVAiYUnafWe1n0QvNn8/7K +Nrm6TX9HvCmCPu4Sb36Zf/SPul66RBGEZxHG15Uxy4cD6AUqcP4njSD/0Wsnp/Xk +EAOOZOjGsEQdA+gvkYEPuVMCAwEAAaNTMFEwHQYDVR0OBBYEFLa8TXEwfLPkq9TE +iPCG+zXF1TeBMB8GA1UdIwQYMBaAFLa8TXEwfLPkq9TEiPCG+zXF1TeBMA8GA1Ud +EwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHISregUD4ajS1o+nmyFcm2R +r5C9wWR/Mq32qEba4xVuFxmi20zryY5L5x/3Bzs7EENJG9hSBY2vtqcU9W9EytzI +afwHSeccVjLzjqvuYIUcw5AhpRZ3+JhKYII3y7Jo3CjSDU/7wCkRodPJ1m/AZQse +7mmD0Yn11YX1Lq6f43SUc3fMTkVqg66JJIOGO0Jdb/drm8v68WgadZHZ6PsfpEZs +XhT4/b7GpKzpbUpvLaMTKPZJIOmavDiOTrzrN78b7KnIUNyGapDgZWwS5yaVl6NH +b0OyNK1oQsEBCK+yeJNuu0pde4LCEV0znU406flc8V83eb3k8+uN5Y04jjORNes= +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/root.key b/sxc/10.0/xc1-cxa/traefik/certs/root.key new file mode 100644 index 0000000..a459609 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/root.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAtF7tn55vnX5uEGSZOAaxjK5nzCPE6Ytf4aoNjcdt6WKJq2Hp +SE3LyUXEQouguMS4sgy4PgASiun/BOBqRYdHg6BN6KoJW2Qnz88ugxHPf36QCYCM +vhxXLt5z9Z1Fb4JHlOxgzqhOv25Zzqs2bQKSS20EDq5mmOJlF79orJWyUfOEFwTx +YVpxS2j73xLV5EsuYJ0wf1BcEnrR5K7KQbjrqxQ2koU1AREC7UvEfb2D0pUCJhSd +p9Z7WfRC82fz/so2ubpNf0e8KYI+7hJvfpl/9I+6XrpEEYRnEcbXlTHLhwPoBSpw +/ieNIP/Rayen9eQQA45k6MawRB0D6C+RgQ+5UwIDAQABAoIBAGzDnWiWIloHJhmO +f/IP3zqk5IRtwUzPNZcfcyLeckG8oKWO2hw2hT8uacVy6wzf2zvKfcMtSgEoTxZC +uPKKO658mN5GwnOwtm0SUsrIj6YizHpeYQA2mL/zdltSZc9y8PU1gL69MRcwVMlR +5vTfCxaee0bbFZT1V951FoqTjj7ppLopKNyoDnMHtZbeV4jk7g8L31Pmcj9VZC9s +V7yrXwhUNBpfrohyrJB8fjLqD8SY2ldX9N+FxDWw+LIbkHI/6vt5MLLB/Gqkf43C +VLnaBvK+TB77IgKQzWb26RlFv0OO1gCcbcZyE83zWpiS2SJOLCFgXSaA2TPqQ6gm +Mt5rq1ECgYEA2ldSISPlw369znlcB+21hIDQ6sRHO0wD/qdKfMZKFmN0fSs/Qul1 +x+dMYOPSC6OtZxE5vIAmFKKUISmb9ei6i41IohIjdSjMVmM3DnWDBqjklVlGtdux +Pb0OtQw2ZejNgce8jvvhiwlFZkdJfFKWfNWP7mwEXAi5p5gl9cxMrKsCgYEA03sP +NslOwAjBsMPsLgdl8puyPeTRzksqjRDinuB5dxzPWnj6jM84lB6PuaGtuw6H1+us +Tvpq2YwJhsc14hOzbanXjzIs6vD58B6wlToK+Gmvff5PpGErb5rLjiNj4ccjosDq +L0jWkTplmZFSbmDxBBKpGaWgzs1Cx5CDUkF1VfkCgYEAklbWWBnsRGQtKTcT5MiA +0adY3xDgwTCIuOQ9O3XXcDwGdmJHCzzYUTyIZ6QqQtzYOu1DqkClxUzWRYfS3TW3 +2hK+rMnFdB/9HKVw4EMIp60JT8Q/bWIq4DtXoSbnStSG8MYDbj4KBBsZpZx/91CP +RmoJBv7kyR6b+GU0hBMDDPMCgYBc+fR1ZMnvman2WhzjG7ORlywlFA29wcRCYtMP +gKdGW+852ohlEdHRJSKRPWjRHZFRt7Z4vpXtcSjbDYg+DeVL6Gjx9uBSpoFsNUHz +SaJ7FpPmM8G2BlZ/abHmmt6V6+RZ8LDE+yQCk4cJnh98kbhEzyNzOCNb6FhcvsdN +iaPZmQKBgFgXX8jRhIGos2VBf3HF8dwU5uB+R50CSUubx7d9ZcPoB+Y0REunG/66 +ycUmOMwuKJ9rVq/TGOc61ndpFwj8YkHr4rmCwwrBddAgB87dMbYuMq+uNEcw3fSc +sWMM9PzPO36wCP2wKXLV4gD3Jp9ioRi67c1Lc6TnpLZEI4vRrSkL +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/shops.localhost.crt b/sxc/10.0/xc1-cxa/traefik/certs/shops.localhost.crt new file mode 100644 index 0000000..ca5d0e5 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/shops.localhost.crt @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE----- +MIIC+DCCAeCgAwIBAgIJANWbFRqU1ORDMA0GCSqGSIb3DQEBCwUAMCUxIzAhBgNV +BAMMGkNvbW1lcmNlIENvbnRhaW5lciBSb290IENBMB4XDTIwMDQxNjE4Mjg1MFoX +DTMwMDQxNDE4Mjg1MFowGjEYMBYGA1UEAwwPc2hvcHMubG9jYWxob3N0MIIBIjAN +BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsG2i7OkRJHGWBTkJy4t+VagHpRmB +OOSAejRNuH+hAIO8tVR/e1/9NYBJFdpuQx1IaxgavvI3fZh3bTnbGUTuPIxjKBO6 +gtEocWbG2VXgV6HHAdISjx3W29xZw5KvjtXHjjbx0Cfvl21EU+KezH1T1C8bVI6A +bckVfhsFDlU9THJJLx/Ig/kHPTktznp5pv3cUYhQifFUUlC06MMMPQoKpwObjwid +VrMHA93XpqiqeutlBxlsc1XFxYvOojmPmNoFD4mPTPgnxLLfgZlZ7txohpeP65g3 +9c8YquSCBsBK/Y1AVsAv8FiPv6Ycf4r9fcqg6y3WqnbguJDCQ5MbYFCQowIDAQAB +ozYwNDAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAaBgNVHREEEzARgg9zaG9wcy5s +b2NhbGhvc3QwDQYJKoZIhvcNAQELBQADggEBAGpSnzimCkXJBt2tzTOpMbBrNt5S +tELR86o7fk+zfFQmyixU3b3G2CAwmTUP0P3IGpDuiWnY/Gmuk+zoramdXWQXcNkP +7BfIzY5JSzdxbZBYfeCmn/Krj/VvdoAtDGMpdtzQcm0PElYPzm4YN5hEyGNovRjo +E5HzkgcjNEGcsgfXKNqfnrUW2564q6W9D928kPZWVgtFTrKbu8/w4NtBSyuN8zum +cORVNGp97eKyCYxInkKePtouU5HUrfYXSwqyli3E9CQI8LWURxMozMWK4AiZ9nsL +pUu+gpgO196kCfadGjK/uZQK/y6PxZ1vMWY0yLNaQPEToELxKXKxJBU/a1A= +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/shops.localhost.key b/sxc/10.0/xc1-cxa/traefik/certs/shops.localhost.key new file mode 100644 index 0000000..2acd318 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/shops.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEogIBAAKCAQEAsG2i7OkRJHGWBTkJy4t+VagHpRmBOOSAejRNuH+hAIO8tVR/ +e1/9NYBJFdpuQx1IaxgavvI3fZh3bTnbGUTuPIxjKBO6gtEocWbG2VXgV6HHAdIS +jx3W29xZw5KvjtXHjjbx0Cfvl21EU+KezH1T1C8bVI6AbckVfhsFDlU9THJJLx/I +g/kHPTktznp5pv3cUYhQifFUUlC06MMMPQoKpwObjwidVrMHA93XpqiqeutlBxls +c1XFxYvOojmPmNoFD4mPTPgnxLLfgZlZ7txohpeP65g39c8YquSCBsBK/Y1AVsAv +8FiPv6Ycf4r9fcqg6y3WqnbguJDCQ5MbYFCQowIDAQABAoIBAA6ddnKzt/TR6ACU +wgf3jUahPcjifP7uhuoYrRuMjxTQ1PAciNb6k6o771H9H0c2BMrCW2zX+drQp4wH +z+ue9zFS29/1Cm1N0FDcl7pnT8dSon63HUx3x1W9Qj5eR2bItNhGGvAIbuOXbKKa +UldURn58TIJLr73oe3xP1rJiQ0qyxZkEr6hkYTg8SvRU2OumhsnuU4Oa49qxxXEI +l1tV+Kzs4Zn2FTYA2zVGs7i82Dz4RHfvDpqArQ+ywEaMNSFZSdHW3UtvMYdCe1kS +Wegccql0fCCG3LG5iRTHnmPCrNCzkEZpbj0YSs2polXrndl0g5CVMNZlzkrMMtLU +M+8pqukCgYEA6ZdopoyQKgVwQkbEa9Zgqym7bqzWDJIrq7dVoeg/1HowtBMrq6J0 +HOZjP4Gj97fI25wXWooi0IBwqvkcaSDGscOuz5hQSepR+eYkigKcPvgfRzWtN31G +eWxekSD+IPvGOy8QATgoK+BNUKu4lXuRNehntGjMSEi9GBODetWrSX8CgYEAwVpm +zBhSS6vOneKKGCpTzKX6vgee3axbiis/qEuUUFm8SuRrMz6Lt/voyzEcOrdqtYt4 +96q0422SuTg0OU3yc3MN87Pg1KL4zIrTN0NT4itwbdIFulMtPxT+mb0bxusUEjfI +GyxB76/LeaihhKzPmmVumIngUZUyalb2RPNw4t0CgYAgUwhzS65Dcl83fK1/srnL +1cmPJjG0qaGLcKJT9lym3YXR1XlMlf11ZlhDmIAFLpSH91CwAb+RlMSClFhfH97/ +CHIvXgd2Qwu3Bib2Rigy+ojxhLcEn7xZ3yoy8RrZm52x4PBZCtlcQPzR9gFkBiZx +DEkViQ8DzbUFGOYv4FOEpwKBgBriDtjhqM+Mm7WoAbtKZ0xU53/0X0pC5JdZXAhy +ObTSRTPEfoMpdxOlmsBlm58uUU/cjH0i5vOYEIZgIiK1i7gxjwcLQ39NCXqm8qcE +XW1czMz4HoPBfNEAgkWt3WbS2H+P8eqVRLWmo4vOvmZMALFe2Pmscdvl+pR+cs8z +acahAoGANEAnbNiRKDVkVnj7RtAKBvzuXuF0OTlRM09icgmBhh4nveJ9RFqVRNVJ +AVSpHw8FIjv2VwK5mbOI3o4TMn8omQSMRmvD5DAPn5E/lDG3jAvwhzdDmI+XuGMJ +DVcvKo3qSo+n2fcMHexE+eZLmood0v08LVDLHv6XSQHe2HFsZgo= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/xc1cd.localhost.crt b/sxc/10.0/xc1-cxa/traefik/certs/xc1cd.localhost.crt new file mode 100644 index 0000000..003ef99 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/xc1cd.localhost.crt @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE----- +MIIC+DCCAeCgAwIBAgIJANWbFRqU1ORAMA0GCSqGSIb3DQEBCwUAMCUxIzAhBgNV +BAMMGkNvbW1lcmNlIENvbnRhaW5lciBSb290IENBMB4XDTIwMDQxNjE4Mjg0OVoX +DTMwMDQxNDE4Mjg0OVowGjEYMBYGA1UEAwwPeGMxY2QubG9jYWxob3N0MIIBIjAN +BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5FVNx5bkmdDFPR+l1lAYqw1NdAGk +HNIPNgYu699LC2Yd8utZCrJQjZo2bveVc6z6KG3yp4Rs7PIMtKKctIcbvRDbWlUn +u3h6KJCzxPt0f5kQcap1r7QtL6IcwApycB0U6mCBYvxC0iaB+9zGhQDzZ32pUiqr +1lSJaTsLO+RU4Q9OJHYuX5dRFoLP+AJpZVArbDuXONYySw9wqigcQCNrahsKq704 +PpTACgDf7Ocz+JmwhqldrKhxF4rKvbnVHkGz57Geh4u4hgikM56hZjieQDEzX8Jb +hv8FxuXUNy2yFTU9kDRK/fXGyDk8X71qyDE9EGwDVS27WU3gzWIiczifXwIDAQAB +ozYwNDAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAaBgNVHREEEzARgg94YzFjZC5s +b2NhbGhvc3QwDQYJKoZIhvcNAQELBQADggEBAGnorD0JFUTdP4eUX5+NcoA8dYgp +U3GVtudacp5Ihvel1tZ5dU698tPlxZLVKHXVqrcYQuQuEW2EOgPxelwMnIg3NGC+ +XNuXxVj42S6YXwpoSwcqc5HqcBaOKIP05KsUXQcWd+sfJvunIHFcagUY/qDLMgH4 +cV+S0QYUdTyfoCJhPNrLUMDJl64+22tSHuxCW16B8OjZcjkzpNkKtwO7CSrwWcZ4 +G+LNJpRjMITqpHM9Fy4NBtaae+f44nzbNAxNg0CA2qAD83fziLilAzkm07ov+Uhc +9i1ue0nyP4a1hvjAvS5n/wknPS+5VvW5hhXFBBXJPm1UfXLkcTNbvvQ93Zw= +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/xc1cd.localhost.key b/sxc/10.0/xc1-cxa/traefik/certs/xc1cd.localhost.key new file mode 100644 index 0000000..57eea61 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/xc1cd.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEA5FVNx5bkmdDFPR+l1lAYqw1NdAGkHNIPNgYu699LC2Yd8utZ +CrJQjZo2bveVc6z6KG3yp4Rs7PIMtKKctIcbvRDbWlUnu3h6KJCzxPt0f5kQcap1 +r7QtL6IcwApycB0U6mCBYvxC0iaB+9zGhQDzZ32pUiqr1lSJaTsLO+RU4Q9OJHYu +X5dRFoLP+AJpZVArbDuXONYySw9wqigcQCNrahsKq704PpTACgDf7Ocz+Jmwhqld +rKhxF4rKvbnVHkGz57Geh4u4hgikM56hZjieQDEzX8Jbhv8FxuXUNy2yFTU9kDRK +/fXGyDk8X71qyDE9EGwDVS27WU3gzWIiczifXwIDAQABAoIBAApdcPVxfRkaaAm5 +SQ7sfeIt7Wkpteh1BKnAKBse/MocrZlcY6NfqtZyvKvW41rn7EcvjodaNJOg/UCp +7REo3PJ9NGfqW65f7rOutepoO8abDSsLwOHj/PUfl8yD7OP3/f4RuW3j46ikhNwJ +Dp31CBeXlbscIsbM+ZvkSUNDvzKkKEEppxPqmTnRHkm1kwtCNSuKsBX5rhQdUohq +Ermbpk/QELeAiOY3+BSVrQDfKS4wfkLu/6GX5bd9y+fZUrlS3c2Ncw4oVggUJZ2j +BUqI5nDQZNVGcTHMae65ITzI1Z54Z2LmrKD1HWo5ANjkPZeGJcnzlwbMXvFR4qcr +u8Bm56ECgYEA+6FyGvWAEIJP61DQmuPPJ7hdKS1KSUiQ61eSsEHTFKducJEF2Aqr +7rjc+ah4i5FBROzAfOw30TDohPKtH3wPAyBupjJek1DliSpXMNjT1ePjUQ+jbEX7 +zKmaVwXx0tyW4WYuLtUXrF2kwhsN+ObEBkUKS/mae4LmaS1ay4Ko4VECgYEA6ExL +vDJFnwbJ0Qxm1b+cV3OD79aPQvM6kkC4FpKh6+6dETxBG6RNeI0jaysIgvEN3KJ+ +Cm9rx3NeQjWlfFq5sVg8Hqiyl+CIwegYSkxSttSz+F7P0FdVVp4xa00bp4UzlXKP +JInITOYcxoSc/QtbB81qEKUHLntgq/Bd07N+ya8CgYEAi62LpHFgfEmJyWrb0Q7h +3/+UHxZX5SQV5b1/3L09SXrDcFLgNpN96w7NAvzEpVylKXhuRSnutf17JMl81jxM +LQUkxraxDv9Z2vEY4zGJLXLJrSaMJb8XTf1bgjD3koAGdOn+etqowHJe0ayo7eBT +MdPDKndMjIEWG44kl1FZI3ECgYAT2IjT4DugdXUCfhu/ASq7MexArkT5BEypuAvC +Ke7ZeD5E/a/WS7gup2gyPK/yd+OmSN+ZxqEfnhScdXbY4+tfYlloiSMQ5KbqYgjJ +ODIM2qkxe/AnLX7l8ofoUeMd8bxRdUMTbQ4Gu9YTg7rhx3mUdhEssNynNPUyW0u4 +zWn0kwKBgDer7UU1MWK/yvpKR/2HwzkYD56W70nKdX3kbWabPXbzHreu0hA/vF3X +otmfvVYS56LraVk2wuaz2mzHtV3CEgWlZJTh7muG4Kv5ffjDRYnD8KxicfgKW6Uw +inozlMyJSBouD0hXmEVrAUZKoJ7/BHYmS1sbnJBJ2wJDKc/6FBCu +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/xc1cm.localhost.crt b/sxc/10.0/xc1-cxa/traefik/certs/xc1cm.localhost.crt new file mode 100644 index 0000000..cea6050 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/xc1cm.localhost.crt @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE----- +MIIC+DCCAeCgAwIBAgIJANWbFRqU1OQ/MA0GCSqGSIb3DQEBCwUAMCUxIzAhBgNV +BAMMGkNvbW1lcmNlIENvbnRhaW5lciBSb290IENBMB4XDTIwMDQxNjE4Mjg0OVoX +DTMwMDQxNDE4Mjg0OVowGjEYMBYGA1UEAwwPeGMxY20ubG9jYWxob3N0MIIBIjAN +BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzb255KiwPIfIwpvWeUKdReF9Z+BS +HfYG1lIDpks9KC00ud9j+oXobsYDJoFNWbjJZ0VPt4CWHNu8M68w3D1HyUwnyt2E +iEH/ggxjvMNI/3xGwqsHZQDheJW4QbBc89oMCtaGkGSjscVmXHWgDDayKw6P6giV +uUcmTva0ADFXk/IHgC47w5oEz8Ze0php85V66m3W8s7OI3KatXw5kyrf8T2xMnGS ++BA1NBpptU3BC3gIEQ+52f0saUYJs8Dq9btDUB/8hhKCnDmXBoauiWvQcLmdoF1k +YjAMphed0TyGTJb8+QfZmXhXyQ/JTXCm8PUFP39E1OGkVqmGqpg0JsE/oQIDAQAB +ozYwNDAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAaBgNVHREEEzARgg94YzFjbS5s +b2NhbGhvc3QwDQYJKoZIhvcNAQELBQADggEBAFgV0b3qjRk1Hl9bYO18dJhfWppK +u8qf9Z5piz3yw39i6IodMSM0gPRPCzrHEYdZS+O96XoYBVSl+9h+X8p9V2bh/gL3 +4KR/0YjiZ7i3lCz4RNwTHwQIauUZtcBebIHw0ZRZBrMAKP9jpVXP+GlxLo9K0/pk +LvA6eqpimL2AhD6jB67MrAf+plj2SlBlKEk/eWlLJ3GjUh3LQG81R31CCi8g3dgR +afnCxB/1DhAQUOMCN1A8wokzjSfoNXUYNLRZ1mJEpYH24PC14iJjTecSDhUgtdn2 +nZwCFobBWJ5DHs/ZpzBebgZQInP7M4SHUcsxa2FJQKnQQDGQVkSZJWGxGdw= +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/xc1cm.localhost.key b/sxc/10.0/xc1-cxa/traefik/certs/xc1cm.localhost.key new file mode 100644 index 0000000..2eed42c --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/xc1cm.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAzb255KiwPIfIwpvWeUKdReF9Z+BSHfYG1lIDpks9KC00ud9j ++oXobsYDJoFNWbjJZ0VPt4CWHNu8M68w3D1HyUwnyt2EiEH/ggxjvMNI/3xGwqsH +ZQDheJW4QbBc89oMCtaGkGSjscVmXHWgDDayKw6P6giVuUcmTva0ADFXk/IHgC47 +w5oEz8Ze0php85V66m3W8s7OI3KatXw5kyrf8T2xMnGS+BA1NBpptU3BC3gIEQ+5 +2f0saUYJs8Dq9btDUB/8hhKCnDmXBoauiWvQcLmdoF1kYjAMphed0TyGTJb8+QfZ +mXhXyQ/JTXCm8PUFP39E1OGkVqmGqpg0JsE/oQIDAQABAoIBADI/chU8db5y0z9k +XB9Fe6/DgKNMEAItQkI5yZZlrcwQLl5vBrX62mejiMVwsvmEvfuw2+VPTFpD+FUP +JnnDpbKuHNHZBDNbGxIiAIHrl/p92bJVnvq2GlsfBd9VOX589I/5EOhXC/uw4G0Y +dTxGZ4FIjzFzY03a6KpEanXZlzAUbdKjUcL5a4cxhpPz1+WIorEOZpmaqVzLyHEM +ASPY+LMjaPhm1D2YViealoRR2rQsO+pGWqYmLyLGMhvK7rmkm4inqUmegO4qpcmb +kiiZApBjrOQrl44N1AFMNT7xKeYkVkTiL5WMSrpYwD3HK1LSv/Fd9DwSRkH7+NQg +nugQHXkCgYEA/DPgBOo2Vywvzw4dJkA9p78wGVxRXjx49s+8JDkQYJh0k90pT6Rs +cnmqTh9Yhyh1jg1qKZIrwkP24zfdw7J1XdzzxXIY9nZlZUSWTtDzsJUvGrFSbkxU +Z2+ig420fAM0szaqJFA9vsG/BCBx8LBmAAO+gFSwlzQbocbl3PgXbRsCgYEA0NbD +aXMSpQZBF+KC8alKUoShUyG2riCpx0NO3/djAWiFnj9wC7mLU2k1YDeu7p5ZMddW +y1q1qRUyqrj3vtAQGwqmFyIuSXEq2cEmRwXs7RH7FriHDBEaBWH1LIKzf5kHwWgn +EK4WzHywFcbuQKHlobeEKBxpsmGAxBmjITUj/fMCgYBtmCFOIXURtorkAC8ckyf3 +wDYnnx1gxQiPwD/ywbVjNHzcUGwGRt41dLdUEX0H5sYGv7+VZwaK+bvMi1dcFi24 +Zy6ra2R7nYF8Wyyx/U0YPAvnHo1CjvrSpAlL/4Uhqsb45dVTyGa8gTb/lRXOUOlS +Mk5TN/oxCpzDVUpIFqsfZwKBgBDuKD9nPc61GBfYnCb9Q3I3IGD97bJmIX1u/nj3 +tEYL9DElEW9R5nKnp9UaDot3uOFqhLXNr8Z6WnYusp78fSHEFjzv33LCwueOWg0N +9OwvNfzcjs4yoLpo+5hVLDoe7NsIF4qpol2Hijrpuqzwsw4OM5+Q1hzI/MhpD6mE +hltzAoGBAPL5zqdtDKxct2DVubTe2qAc0EZQSoyXM5mjzkb643jOVLuomjBRbSl5 +kMYs/NhYuNjtYXH2S442znZhUACFL9KSj6a3Y7GvwZVstg62wAiEU7n9L+LuKGxS +2Lq4gS345ptSpHScrx4ETh7gOG5/zl6uBlOQ+po5Q2fPn5YV+a15 +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/xc1id.localhost.crt b/sxc/10.0/xc1-cxa/traefik/certs/xc1id.localhost.crt new file mode 100644 index 0000000..2afd529 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/xc1id.localhost.crt @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE----- +MIIC+DCCAeCgAwIBAgIJANWbFRqU1ORBMA0GCSqGSIb3DQEBCwUAMCUxIzAhBgNV +BAMMGkNvbW1lcmNlIENvbnRhaW5lciBSb290IENBMB4XDTIwMDQxNjE4Mjg0OVoX +DTMwMDQxNDE4Mjg0OVowGjEYMBYGA1UEAwwPeGMxaWQubG9jYWxob3N0MIIBIjAN +BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAo3Hb47BHkqP+JeM/MxEWJILBNFmu +pimCBFkdvOkzICs6DB8ikcotZlXOozfQ/z21VcY8/OnH34Vj69PRANqihTAx7010 +QcL5ArONEN7T8D01D/yUw8O8zr1Th3ZmR8bbIm5eaiCVFF3HLL32QaWsF2MGjyMf +QPSqSilyo70jYbAi5T/yRUOBQ8OMT3nWiOYwJReDT1PqTRYPFgf87AqMQWOuksfT +UEAPin7nz3UmdMJrBph6QzlHgIB1u9UkuIhZEnapALyDS5oTcQtbrnolUjJEaZww +LYhTPgU5U2UqdLJuNZ4XprDZziFM5en7/pka+un3V/dsiEYlMF9ImdfZOwIDAQAB +ozYwNDAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAaBgNVHREEEzARgg94YzFpZC5s +b2NhbGhvc3QwDQYJKoZIhvcNAQELBQADggEBAAq2MwX8erGUSJ0eSgybIZpDSVPK +/T6vyKR+Nxy8Py8wiQjF3C/qRZ5OagZ5FtTRsO+jLN9dDq5c58/SlVP8NQiycwJd +t+VD1AMrMNd5agy2Vde+MEc3bOv5erPqveGwGbqrsShclDB8OwsBbhUhe7kf0DGF +evY/cQnkOVCyh/e7ybqJhQHR+o7pqws7tVXBQlVSAf40kVrzssvpXybXgm+O03dJ +83ts5SGUYqI1vS6E/WJX2NBDGYGmBzZwB7eyILxRkvuzKl1vEz+RgxhNGl26Aac4 +ZxOKTefB4ggGvTTI3vtZqj5CBcAZMjtnRc9MT1XSSqLWfdwmvp35TJ1uUn0= +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/xc1id.localhost.key b/sxc/10.0/xc1-cxa/traefik/certs/xc1id.localhost.key new file mode 100644 index 0000000..2b775bb --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/xc1id.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAo3Hb47BHkqP+JeM/MxEWJILBNFmupimCBFkdvOkzICs6DB8i +kcotZlXOozfQ/z21VcY8/OnH34Vj69PRANqihTAx7010QcL5ArONEN7T8D01D/yU +w8O8zr1Th3ZmR8bbIm5eaiCVFF3HLL32QaWsF2MGjyMfQPSqSilyo70jYbAi5T/y +RUOBQ8OMT3nWiOYwJReDT1PqTRYPFgf87AqMQWOuksfTUEAPin7nz3UmdMJrBph6 +QzlHgIB1u9UkuIhZEnapALyDS5oTcQtbrnolUjJEaZwwLYhTPgU5U2UqdLJuNZ4X +prDZziFM5en7/pka+un3V/dsiEYlMF9ImdfZOwIDAQABAoIBAAE98j/OrRyOJnY/ +PdGzhYmNfM5bCBq3IgfKbZFr7DmIWo6RBgA5mxK2ADX5TJtD6sbWFMyPMjeemd3G +5EWvY6DDdv2shv+g7ad5mc7RAqdGr8qJTtAWAq9HfQUAf1J4Tl36nLkNulRHSiYq +414oViBvXjNkPu6NbWXW3soju8sYOm/QCqfjwzrHRZVgTHFg0ktQJZsu/Mz190Pc +00Rf1F5ckU8VaaZ3yXTy3nQsNlypTEl7k20jn2LirPlmrKEveKYvftXuX/W5/Bso +p55ZxkPRsT9AIIKAM9l2jIS9WnzJ+LxFkVZnWe2mIiks50shHGhS9+tfmAM/Xyhx +ZUI2mNECgYEAzSao1ZWmGezhbUZAhlxak7FvJqiALCiOfrbnuxHG7yh9DG+uMCPW +Iwz2cXJyUZN9iixJ6bZ3LoOc7AHA+whqzn5o+e28gO2/QC9WWTwl2LSpMZmeefA3 +E8wDb4N5gN1iW7oOwN/tZ5kkjXapjrQYFzxN/REdey+vlTXDRMlgx/0CgYEAy/TV +lgnfp9UVVz/GQfJSNIsT11dbdjOOpQWiPy4Bbrvjt+ggdPhE808Zu71Pqkc6HBT6 +0ftBUD6n+sef+Gkfrr0ahj6WK3BjpnW/60+vfB4SSt+8CTGkWEq74tpEejmEwBvK +JGnhFzgKNgXWSlF+KxpunZInXeS6Vn/6wTAnX5cCgYA2nhxFANp//HjnxtRW8S+M +MqkM+b9mAkYtpjR7sXftJDJmpTUSy/euzTyvZ3DYFxRNPQ1Qk6uXTqLwkmb2bn9B +CpaYM5sEGEfapr+ucj0BPNfuxJ9Uh4eiVaZ0geRPUqFlGlvjLbre4f7BSt5Jh9kC +FqQMxAm9SizM5Mtf/N0vYQKBgFL4ni80gxT+vXjKC/hmAQU5EvBGrIGQhdYiTZfQ +Omr26rO1LgcHvN0Sb9CNOix2X3BvJH5p7W8cni+KKEzhTy9B5Nl5+pNfXFqqilHL +EAO5JA3rqM5AsK/ubzLhQnxKi/OvGnPn0tckSBskEsIXFvGoBhn6DCPJWfi4haUz +1sCvAoGBAK5Ud04lCzVg9fsgIEU5twwreA+yyVdKOt15vJAdylSsd+L62Bai3tEb +yx3VoDNoGHS8DNSV8ACOVZUOQAY/GNrALHwuYWrIcy/5tpulYZ2TyYhByyvhAmdu +N6mB5IKZ/5jDMp/J+iPYGm1JlWBSHFK/BPhCn3Oxzt7GZghlccA2 +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacd.localhost.crt b/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacd.localhost.crt new file mode 100644 index 0000000..94d8a4e --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacd.localhost.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDCTCCAfGgAwIBAgIUSvZs9CHMQo778jISK4j6r8GYrRcwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NjMwMTUzOTQzWhcNMzAwNjI4MTUzOTQzWjAdMRswGQYDVQQDDBJ4YzFzeGFjZC5s +b2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDAMAZYu1ra +1yFufiD5WmuG+d9fTq569dzyLlvajpFhOPSI0mxjoil48yIctEk7Lp0bcYNNQPmj +eLiTwQhlLhgXonV6bOSJOhlJBREaJnxz7Z8+XSeMIR+ZgXGAA0VYrT53wHh11g8W +J7HZDe5pwiFgaeVJgMSEbFSu56HsNfb6b4rriKXxoXXQDKBrAnQeI326Wu72/oOU +ZhERZnpY8hcpZwgZCwtgcR5T8xzApZyemkM4ciSfmhJXXtb4ssxZaGk7oAXQwRI2 +/QaA9w6b6cBvHinGOK0AjkOd2hjesxvKEd5Fg7YVnfrVI4p95QPp6BUH6RFa+Rfi +vGp7DTUvB77pAgMBAAGjOTA3MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgXgMB0GA1Ud +EQQWMBSCEnhjMXN4YWNkLmxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAQEAZ6Ih +Cm9pyv/WcM3qKBShrYRVhie5VG0FYokW2D7sTjTFJhwAAWm38UWPZg8hfYXqPhFm +llcmhJmd8xKZ2XgFBNGzpzNd6rc1KXFocMupo0Ie9ykjV+N56Eiwpn80HjGoiUic +bKKi+k911uH7aOvFIKg5/Gk7KKZ1mGcicKTYt2FqfrCy62aeunWvExLCKQo5Ip/g +UNwk8DN5/up/kZbrQIF8+L2U7r53QzWI73bRi3nIbKvXpX8cfAywQFmebt4WLeRj +TbG4pYeaA0GU2joalr+2kL9HuqEZ/F1nl4JQhrPXaymnQpgiRmdfQYvqtGEUuLJF +O4QRVoxz+4an4YrDaw== +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacd.localhost.key b/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacd.localhost.key new file mode 100644 index 0000000..e52f8bf --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacd.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEAwDAGWLta2tchbn4g+VprhvnfX06uevXc8i5b2o6RYTj0iNJs +Y6IpePMiHLRJOy6dG3GDTUD5o3i4k8EIZS4YF6J1emzkiToZSQURGiZ8c+2fPl0n +jCEfmYFxgANFWK0+d8B4ddYPFiex2Q3uacIhYGnlSYDEhGxUrueh7DX2+m+K64il +8aF10AygawJ0HiN9ulru9v6DlGYREWZ6WPIXKWcIGQsLYHEeU/McwKWcnppDOHIk +n5oSV17W+LLMWWhpO6AF0MESNv0GgPcOm+nAbx4pxjitAI5DndoY3rMbyhHeRYO2 +FZ361SOKfeUD6egVB+kRWvkX4rxqew01Lwe+6QIDAQABAoIBAD/vOg1GtqDatIp3 +dyy8wcyzT3X7TNwm8ou2lGQOzZpUQjVKGzjB953+9DgsWbhQd39rscx/cwzI2k59 +Bvfx753dM8u4cgacx1CdWOUkLH68bB9pCgD5+/MrNsDpVaZ8a62W3/wDbB1osyeM +FOYl6MiUMezT44xSJZHSCPH1ueXxpZR4q1Ys3uIwM/yrQ8JtpYcKnhOtcndkglDx +zUbVtrSQf1GGw8LLZiKGtqufLAC3vDLnHSuaA6wAkQRItlYHh/XNu024vUK6VOdS +QvdHm10AF0Dnfn9ff7RIqFLYBj0a0JI+277EE+Ns6wKNOkOKTdLhPWwWl8pCSoS4 +CI/wiQECgYEA7PBrhzFUOoq82izxG7FKsk3KRJUrB6WLQl0FY/e/XXktY1XBzBm5 +7soQIbIrV4fnUJQ4VE3HM5k/+pYu4wM8h+B84xEgvpDyHsNWeS9S/HmHuuyETy1n +yJPRPABJFI3ychtFjbasPhN5jASO83Tz0qItNaaOqvsINdy4F1Nf8zkCgYEAz6X7 +JBJ4VfuzIiwie9fA3WehubC2+QXbj/YoIsuXyGLavux/7S5ZVRcuL6guy+N7udl4 +6iTKcqUtesBiZHR3qd70//+esd99TPAOsnq4OQU2AR7/T61dTaWiyzbx8QFyd064 +ZHiXSt1RnkoVWyaUwc7iEDMWtMGioVyGCtwWuTECgYEAjjESNsXRyHguMbi60WWq +cCri8hmbAzHDywXMEFxDybLJHE4AyZ2+yaEV4ULtY9A5b1AkJeOvYjXcAWRTqwTs +NJbyG8rRncuaof+US5Gs+bttSy5ZkLKtD+A1tw5szRsKnpPjP9Kat340eWTa7RwI +nyWYgBP+lnmkSb6187mjYXECgYEAvCTDUiLeH+JIo/zjXdzWpoXAlpSUpTv2fhFm +umhIZcuUMgvtuYUWci/nrEyx4hGDSJjQoy6ktI4PkDqCrEyPJD6dNNty+e3rBWw5 +lOP2yct77DYe1R3a/YDH6WMmgt1xzsJn9rkBNFcmHcs4YHerr5N5Z34y46LTbWt9 +FJfoivECgYBQlGZjaXEyN2xwv789NNp/RFKqdAM7Ec8ENN1WAAJ0Zr0mGTM6Fqp9 +idmMCMt/MtAFeNvwZXBk1rQ1jdD6uzxc7GPMgz+ImwVM/+5i3Fr0d9JNJ7H+/7U0 +wILN3LYJxqHocOzRCMI2o/HX8c5xkZG1/Yh1keN49CsYYaxZKeG+Qg== +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacm.localhost.crt b/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacm.localhost.crt new file mode 100644 index 0000000..0f545d4 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacm.localhost.crt @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDCTCCAfGgAwIBAgIUSvZs9CHMQo778jISK4j6r8GYrRYwDQYJKoZIhvcNAQEL +BQAwJTEjMCEGA1UEAwwaQ29tbWVyY2UgQ29udGFpbmVyIFJvb3QgQ0EwHhcNMjAw +NjMwMTUzOTQyWhcNMzAwNjI4MTUzOTQyWjAdMRswGQYDVQQDDBJ4YzFzeGFjbS5s +b2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC24GRLKvhF +6q+L9YHyoMQvswjs+JZwZI0ZzYdwtzWwRyZUO+Sg2rzJtfj5biu7zaXn9WTJVLvm +d/bkZbjgjJVk7F9s1EvMhsYmOPxKXo7tK5LqF67naVpU6cGXAPrK6w0S1T4mcFjy +ng8dJsWvXRGx62+bpEvdX0EWyNIEaN9IwoGuaOM7c7jwrDPooHPNadBjsvDNnM9p +tMdz+JcejRfws2YxXfke4cRhO7fgbiFW6N/wAiQNpMI1pih8yz4Xe4QAYldD6hi2 +igNo57c8a55mCH5thwzHM0U+bKR3aophDajGAWYKzgAZkWuTvWiTkIsRlDhl3ywI ++9bCIk0ItB4pAgMBAAGjOTA3MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgXgMB0GA1Ud +EQQWMBSCEnhjMXN4YWNtLmxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAQEATJDL +WTzYsjkHsYrYWC2lQHjsrDQ6jV3dFzoBVdLpUcrJoJ9t8qSMZqju9zF5RVpBeH8z +Yf4HpEgmf7nDbUP/qju3drRwhDTJMdZ50newukBZzxkemJoogCTJn/J+ckPulOVx +e2V/K9f05yCuLszVuPMek0/PBkwSSAmKfZzHKjC1Z/OwoznK4EgzbaR8icu908fw +Qf/ZT0Ka69ccGt8ygaTzT2cI1WCEg2iCx78CGq+UzU+GggvOlT9UZrxiwfOpjyJx +UdrN/+GlTYlBqXLactbGxflfhlSmAw0hPan2kciM3aawtf1P5dKURo08m9KF/ujd +EivR1AhBncSYf6MgAQ== +-----END CERTIFICATE----- diff --git a/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacm.localhost.key b/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacm.localhost.key new file mode 100644 index 0000000..f33895a --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/certs/xc1sxacm.localhost.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpQIBAAKCAQEAtuBkSyr4Reqvi/WB8qDEL7MI7PiWcGSNGc2HcLc1sEcmVDvk +oNq8ybX4+W4ru82l5/VkyVS75nf25GW44IyVZOxfbNRLzIbGJjj8Sl6O7SuS6heu +52laVOnBlwD6yusNEtU+JnBY8p4PHSbFr10Rsetvm6RL3V9BFsjSBGjfSMKBrmjj +O3O48Kwz6KBzzWnQY7LwzZzPabTHc/iXHo0X8LNmMV35HuHEYTu34G4hVujf8AIk +DaTCNaYofMs+F3uEAGJXQ+oYtooDaOe3PGueZgh+bYcMxzNFPmykd2qKYQ2oxgFm +Cs4AGZFrk71ok5CLEZQ4Zd8sCPvWwiJNCLQeKQIDAQABAoIBAQCehvgJ/Q7JNP7F ++aWTGO/YVX+4RGnMti1mn7b366mbzKGaRW0UT2l2Bcv1FR7OJx/ZauzaZhyYVYft +R4yzAssCeLDj20h13KLqQV3abgvB5pLtYGha7AXFM/mAF/ZPbuCfYcEFe0Bv2LpL +T+/v62LKc8gFCLBHDyqSQLVl4y8jlxm6KnEkKKutqSNZuJOslou7CwBMnRHAZHVh +pUKNCP7nG3P2fglLtV99JXjPdcK4pK5SAJYDi7b5gFVI2mpPKN7jv3WghFHMcgL1 +uDb0/A+/4P6OFwxFwKctIKwJvkFLQR4n9NUxNnbnz/SBD6uIKtEprv84A67JZEwC +hhu7GFLtAoGBANwdf/j10L6q5o5ScB7toPCn9OCVU1kPJ3mB90HpimoriqGtdS1c +xDuH5xrtdEBaCIjyWdkMxokbwTK2W+ww7QUylc7jlDYcwAxtL5irHgcIYIQUVlYW +FvIjHWKlhs2hEA6bJc8dx+pKjnYYEfDP398KJiX6NUiLna7c/FPAN0IzAoGBANSw +vHOMvYYyVnh2aDhDhMsWhBOQr/U/+BjifNGrr96DTxnvOUpkTGSxkFHtHGnPshax +mSJX+BKWAH09H8tYAxw6iSef2/SvX9RCi+EZGK9/JIWhFDlYOOcwfUFeDXye0Hm/ +7AJl1xlMt176GT6U9H9TWD1w34o8VZnwJJI55FozAoGAUuQpFTA89BCX0nDpGDyU +pwwZA5o4UQmL7A4tdvzjyyeqhUg1IGgW3fRH67QQW0uMe0YI39wXx/pTvy09YKzs +FVD/aXH6loYtLIDRs8R9Alj9P8AI41JeQcFHh6aeJUHKMjXq/xxP9MMu8voNh4pA +3FWOGC8pcbBiKT+/Jir0pFECgYEAnIUXmh1Xl/tRYUMZ/VXK0r3WIqPWqbASvxVl +79LeEO0m+BnxWkqnYW6+m1vYDhI3p7W40OpV+C+FWqTx0e4KE+sL5iohb1bkOctj +LxsN7JCvatuYi37eGVy4wLMbT7t8Bizz3OvfOJIZW/7HNyPdLhpClKyNBSjTgf6U +mzuZTbsCgYEAyAFpPrTzU204kV4D1VVNDi1ifK2vaJrkoYklySGykmukeUbXhbeV +/2sMygIrMNw/rO5qEdn8pYNr71Ahh8KbvIx5cw02qwMqH4pDdk4nlucdg2dUAXvm +u9oMJehJkgcB3+fF8+kwZUZfSN6ox40ONj12w/PgbOPTN5JNPlCYk6E= +-----END RSA PRIVATE KEY----- diff --git a/sxc/10.0/xc1-cxa/traefik/config/dynamic/certs_config.yaml b/sxc/10.0/xc1-cxa/traefik/config/dynamic/certs_config.yaml new file mode 100644 index 0000000..0205a71 --- /dev/null +++ b/sxc/10.0/xc1-cxa/traefik/config/dynamic/certs_config.yaml @@ -0,0 +1,18 @@ +tls: + certificates: + - certFile: C:\etc\traefik\certs\xc1cm.localhost.crt + keyFile: C:\etc\traefik\certs\xc1cm.localhost.key + - certFile: C:\etc\traefik\certs\xc1cd.localhost.crt + keyFile: C:\etc\traefik\certs\xc1cd.localhost.key + - certFile: C:\etc\traefik\certs\xc1id.localhost.crt + keyFile: C:\etc\traefik\certs\xc1id.localhost.key + - certFile: C:\etc\traefik\certs\bizfx.localhost.crt + keyFile: C:\etc\traefik\certs\bizfx.localhost.key + - certFile: C:\etc\traefik\certs\authoring.localhost.crt + keyFile: C:\etc\traefik\certs\authoring.localhost.key + - certFile: C:\etc\traefik\certs\shops.localhost.crt + keyFile: C:\etc\traefik\certs\shops.localhost.key + - certFile: C:\etc\traefik\certs\minions.localhost.crt + keyFile: C:\etc\traefik\certs\minions.localhost.key + - certFile: C:\etc\traefik\certs\ops.localhost.crt + keyFile: C:\etc\traefik\certs\ops.localhost.key \ No newline at end of file diff --git a/sxc/10.0/xc1/.env b/sxc/10.0/xc1/.env new file mode 100644 index 0000000..bea3c89 --- /dev/null +++ b/sxc/10.0/xc1/.env @@ -0,0 +1,15 @@ +BASE_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/base/ + +XP_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxp/ +XP_SITECORE_TAG=10.0.0-ltsc2019 + +XC_SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxc/ +XC_PACKAGES_TAG=10.0.0-ltsc2019 + +TRAEFIK_IMAGE=traefik:v2.2.0-windowsservercore-1809 +TRAEFIK_ISOLATION=default + +SITECORE_MASTER_DB=Sitecore.Master +SITECORE_CORE_DB=Sitecore.Core +XC_GLOBAL_DB=SitecoreCommerce_Global +XC_SHARED_DB=SitecoreCommerce_SharedEnvironments diff --git a/sxc/10.0/xc1/cd/Content/Website/App_Config/Include/Domains.Shared.config b/sxc/10.0/xc1/cd/Content/Website/App_Config/Include/Domains.Shared.config new file mode 100644 index 0000000..32579a3 --- /dev/null +++ b/sxc/10.0/xc1/cd/Content/Website/App_Config/Include/Domains.Shared.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/sxc/10.0/xc1/cd/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config b/sxc/10.0/xc1/cd/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config new file mode 100644 index 0000000..9e9836c --- /dev/null +++ b/sxc/10.0/xc1/cd/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config @@ -0,0 +1,24 @@ + + + + $(env:Sitecore_xc_Shops_Url) + $(env:Sitecore_xc_Ops_Url) + $(env:Sitecore_xc_Minions_Url) + $(env:Sitecore_Identity_Server_Authority) + $(env:Sitecore_Identity_Server_InternalAuthority) + false + $(env:Sitecore_xc_Client_Secret_Hash) + + + + + + + $(env:Sitecore_xc_ConnectionStrings_Redis) + + + + + + + \ No newline at end of file diff --git a/sxc/10.0/xc1/cd/Permissions/AdditionalWriteAllowedFolders.txt b/sxc/10.0/xc1/cd/Permissions/AdditionalWriteAllowedFolders.txt new file mode 100644 index 0000000..de6cedf --- /dev/null +++ b/sxc/10.0/xc1/cd/Permissions/AdditionalWriteAllowedFolders.txt @@ -0,0 +1 @@ +C:\inetpub\wwwroot\App_Config\Security-Shared \ No newline at end of file diff --git a/sxc/10.0/xc1/cd/tools/GrantWritePermission.ps1 b/sxc/10.0/xc1/cd/tools/GrantWritePermission.ps1 new file mode 100644 index 0000000..ac9190f --- /dev/null +++ b/sxc/10.0/xc1/cd/tools/GrantWritePermission.ps1 @@ -0,0 +1,24 @@ +param( + [Parameter(Mandatory=$true, ParameterSetName="Array")] + [string[]] $TargetFolders, + + [Parameter(Mandatory=$true, ParameterSetName="File")] + [string] $TargetFoldersFile, + + [Parameter(Mandatory=$true)] + [string] $User +) + +if ($TargetFoldersFile) { + $TargetFolders = Get-Content -Path $TargetFoldersFile +} + +$TargetFolders | ForEach-Object { + If (-not [string]::IsNullOrEmpty($_)) { + If (!(Test-Path $_)) { + New-Item -Path $_ -ItemType Directory -Force + } + + cmd /C icacls $_ /grant ($User + ":(OI)(CI)M") + } +} \ No newline at end of file diff --git a/sxc/10.0/xc1/cd/tools/Invoke-XdtTransformations.ps1 b/sxc/10.0/xc1/cd/tools/Invoke-XdtTransformations.ps1 new file mode 100644 index 0000000..b9e51d5 --- /dev/null +++ b/sxc/10.0/xc1/cd/tools/Invoke-XdtTransformations.ps1 @@ -0,0 +1,43 @@ +[CmdletBinding()] +param( + [Parameter(Mandatory = $true)] + [ValidateScript({ Test-Path $_ -PathType Container })] + [string]$TargetPath, + [Parameter(Mandatory = $true)] + [string]$XdtPath, + [Parameter(Mandatory = $true)] + [ValidateScript({ Test-Path $_ -PathType Leaf })] + [string]$XdtDllPath +) + +if (-not (Test-Path $XdtPath -PathType Container)) { + Write-Verbose "Transformations source '$XdtPath' does not exist." + return +} + +$transformations = @(Get-ChildItem $XdtPath -File -Recurse) + +if ($transformations.Length -eq 0) { + Write-Verbose "No transformations in '$XdtPath'." + return +} + +Add-Type -Path $XdtDllPath + +$transformations | ForEach-Object { + $targetFullPath = (Resolve-Path $TargetPath).Path + $xdtFullPath = (Resolve-Path $XdtPath).Path + $targetFilePath = $_.FullName.Replace($xdtFullPath, $targetFullPath).Replace(".xdt", "") + + $targetDocument = New-Object Microsoft.Web.XmlTransform.XmlTransformableDocument; + $targetDocument.PreserveWhitespace = $true + $targetDocument.Load($targetFilePath) + + $transformation = New-Object Microsoft.Web.XmlTransform.XmlTransformation($_.FullName) + if ($transformation.Apply($targetDocument) -eq $false) { + throw "Transformation '$($_.FullName)' on '$($targetFilePath.FullName)' failed." + } + + $targetDocument.Save($targetFilePath) + Write-Verbose "Transformation '$($_.FullName)' on '$($targetFilePath.FullName)' completed." +} \ No newline at end of file diff --git a/sxc/10.0/xc1/cd/xdts/Web.config.xdt b/sxc/10.0/xc1/cd/xdts/Web.config.xdt new file mode 100644 index 0000000..72d7ecb --- /dev/null +++ b/sxc/10.0/xc1/cd/xdts/Web.config.xdt @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/sxc/10.0/xc1/cm/Content/Website/App_Config/Include/Domains.Shared.config b/sxc/10.0/xc1/cm/Content/Website/App_Config/Include/Domains.Shared.config new file mode 100644 index 0000000..32579a3 --- /dev/null +++ b/sxc/10.0/xc1/cm/Content/Website/App_Config/Include/Domains.Shared.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/sxc/10.0/xc1/cm/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config b/sxc/10.0/xc1/cm/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config new file mode 100644 index 0000000..9545f59 --- /dev/null +++ b/sxc/10.0/xc1/cm/Content/Website/App_Config/Include/Y.Commerce.Engine/Y.Sitecore.Commerce.config @@ -0,0 +1,30 @@ + + + + $(env:Sitecore_xc_Shops_Url) + $(env:Sitecore_xc_Ops_Url) + $(env:Sitecore_xc_Minions_Url) + $(env:Sitecore_Identity_Server_Authority) + $(env:Sitecore_Identity_Server_InternalAuthority) + false + $(env:Sitecore_xc_Client_Secret_Hash) + + + + + + + $(env:Sitecore_xc_ConnectionStrings_Redis) + + + + + + + + true + + + + + \ No newline at end of file diff --git a/sxc/10.0/xc1/cm/Permissions/AdditionalWriteAllowedFolders.txt b/sxc/10.0/xc1/cm/Permissions/AdditionalWriteAllowedFolders.txt new file mode 100644 index 0000000..de6cedf --- /dev/null +++ b/sxc/10.0/xc1/cm/Permissions/AdditionalWriteAllowedFolders.txt @@ -0,0 +1 @@ +C:\inetpub\wwwroot\App_Config\Security-Shared \ No newline at end of file diff --git a/sxc/10.0/xc1/cm/tools/GrantWritePermission.ps1 b/sxc/10.0/xc1/cm/tools/GrantWritePermission.ps1 new file mode 100644 index 0000000..ac9190f --- /dev/null +++ b/sxc/10.0/xc1/cm/tools/GrantWritePermission.ps1 @@ -0,0 +1,24 @@ +param( + [Parameter(Mandatory=$true, ParameterSetName="Array")] + [string[]] $TargetFolders, + + [Parameter(Mandatory=$true, ParameterSetName="File")] + [string] $TargetFoldersFile, + + [Parameter(Mandatory=$true)] + [string] $User +) + +if ($TargetFoldersFile) { + $TargetFolders = Get-Content -Path $TargetFoldersFile +} + +$TargetFolders | ForEach-Object { + If (-not [string]::IsNullOrEmpty($_)) { + If (!(Test-Path $_)) { + New-Item -Path $_ -ItemType Directory -Force + } + + cmd /C icacls $_ /grant ($User + ":(OI)(CI)M") + } +} \ No newline at end of file diff --git a/sxc/10.0/xc1/cm/tools/Invoke-XdtTransformations.ps1 b/sxc/10.0/xc1/cm/tools/Invoke-XdtTransformations.ps1 new file mode 100644 index 0000000..b9e51d5 --- /dev/null +++ b/sxc/10.0/xc1/cm/tools/Invoke-XdtTransformations.ps1 @@ -0,0 +1,43 @@ +[CmdletBinding()] +param( + [Parameter(Mandatory = $true)] + [ValidateScript({ Test-Path $_ -PathType Container })] + [string]$TargetPath, + [Parameter(Mandatory = $true)] + [string]$XdtPath, + [Parameter(Mandatory = $true)] + [ValidateScript({ Test-Path $_ -PathType Leaf })] + [string]$XdtDllPath +) + +if (-not (Test-Path $XdtPath -PathType Container)) { + Write-Verbose "Transformations source '$XdtPath' does not exist." + return +} + +$transformations = @(Get-ChildItem $XdtPath -File -Recurse) + +if ($transformations.Length -eq 0) { + Write-Verbose "No transformations in '$XdtPath'." + return +} + +Add-Type -Path $XdtDllPath + +$transformations | ForEach-Object { + $targetFullPath = (Resolve-Path $TargetPath).Path + $xdtFullPath = (Resolve-Path $XdtPath).Path + $targetFilePath = $_.FullName.Replace($xdtFullPath, $targetFullPath).Replace(".xdt", "") + + $targetDocument = New-Object Microsoft.Web.XmlTransform.XmlTransformableDocument; + $targetDocument.PreserveWhitespace = $true + $targetDocument.Load($targetFilePath) + + $transformation = New-Object Microsoft.Web.XmlTransform.XmlTransformation($_.FullName) + if ($transformation.Apply($targetDocument) -eq $false) { + throw "Transformation '$($_.FullName)' on '$($targetFilePath.FullName)' failed." + } + + $targetDocument.Save($targetFilePath) + Write-Verbose "Transformation '$($_.FullName)' on '$($targetFilePath.FullName)' completed." +} \ No newline at end of file diff --git a/sxc/10.0/xc1/cm/xdts/Web.config.xdt b/sxc/10.0/xc1/cm/xdts/Web.config.xdt new file mode 100644 index 0000000..72d7ecb --- /dev/null +++ b/sxc/10.0/xc1/cm/xdts/Web.config.xdt @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/sxc/10.0/xc1/docker-compose.build.yml b/sxc/10.0/xc1/docker-compose.build.yml new file mode 100644 index 0000000..b7eb930 --- /dev/null +++ b/sxc/10.0/xc1/docker-compose.build.yml @@ -0,0 +1,96 @@ +version: "2.4" +services: + mssql: + build: + context: ../xc-common/mssql/common + dockerfile: ../standalone/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-mssql:${XP_SITECORE_TAG} + SITECORE_CORE_DB: ${SITECORE_CORE_DB} + image: xc1-mssql + mssql-init: + build: + context: ../xc-common/mssql/common + dockerfile: ../init/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-mssql-init:${XP_SITECORE_TAG} + TOPOLOGY: xc1 + image: xc1-mssql-init + solr: + build: + context: ../xc-common/solr + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-solr:${XP_SITECORE_TAG} + SOLR_COMMERCE_CORE_NAMES: "CatalogItems,Customers,Orders,PriceCards,Promotions" + image: xc1-solr + solr-init: + build: + context: ../xc-common/solr-init + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-solr-init:${XP_SITECORE_TAG} + XC_TOPOLOGY: xc1 + SOLR_XDB_SCHEMA_FILE: "/Content/Website/App_Data/solrcommands/schema.json" + image: xc1-solr-init + rep: + build: + context: ./prcrep + dockerfile: ../../xc-common/prc-rep-xdba-xdbc/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-rep:${XP_SITECORE_TAG} + image: sitecore-xc1-rep + xdbcollection: + build: + context: ./xdbcollection + dockerfile: ../../xc-common/prc-rep-xdba-xdbc/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-xdbcollection:${XP_SITECORE_TAG} + image: sitecore-xc1-xdbcollection + prc: + build: + context: ./prcrep + dockerfile: ../../xc-common/prc-rep-xdba-xdbc/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-prc:${XP_SITECORE_TAG} + image: sitecore-xc1-prc + cm: + build: + context: ./cm + dockerfile: ../../xc-common/cd-cm/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-cm:${XP_SITECORE_TAG} + image: xc1-cm + cd: + build: + context: ./cd + dockerfile: ../../xc-common/cd-cm/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-cd:${XP_SITECORE_TAG} + image: xc1-cd + xdbsearch: + build: + context: ./xdbsearch + dockerfile: ../../xc-common/prc-rep-xdba-xdbc/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-xdbsearch:${XP_SITECORE_TAG} + image: sitecore-xc1-xdbsearch + xdbsearchworker: + build: + context: ../xc-common/xdbworkers + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-xdbsearchworker:${XP_SITECORE_TAG} + CONTENT_PATH: xdbsearchworker/wdp/App_Data/jobs/continuous/IndexWorker + image: sitecore-xc1-xdbsearchworker + xdbautomation: + build: + context: ./xdbautomation + dockerfile: ../../xc-common/prc-rep-xdba-xdbc/Dockerfile + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-xdbautomation:${XP_SITECORE_TAG} + image: sitecore-xc1-xdbautomation + xdbautomationworker: + build: + context: ../xc-common/xdbworkers + args: + BASE_IMAGE: ${XP_SITECORE_DOCKER_REGISTRY}sitecore-xp1-xdbautomationworker:${XP_SITECORE_TAG} + CONTENT_PATH: xdbautomationworker/wdp/App_Data/jobs/continuous/AutomationEngine + image: sitecore-xc1-xdbautomationworker diff --git a/sxc/10.0/xc1/prcrep/keep.txt b/sxc/10.0/xc1/prcrep/keep.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/xc1/xdbautomation/keep.txt b/sxc/10.0/xc1/xdbautomation/keep.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/xc1/xdbcollection/keep.txt b/sxc/10.0/xc1/xdbcollection/keep.txt new file mode 100644 index 0000000..e69de29 diff --git a/sxc/10.0/xc1/xdbsearch/keep.txt b/sxc/10.0/xc1/xdbsearch/keep.txt new file mode 100644 index 0000000..e69de29