From f7c25735d04c0d30fe1d36352686a5c408ebd377 Mon Sep 17 00:00:00 2001 From: selmankoc Date: Fri, 13 May 2022 22:58:09 +0300 Subject: [PATCH 01/12] azure folder create --- etc/azure/cert-manager.md | 72 ++++ etc/azure/cluster-issuer.yaml | 18 + etc/azure/k8s/deploy-staging.ps1 | 1 + etc/azure/k8s/eshoponabp/.helmignore | 23 ++ etc/azure/k8s/eshoponabp/Chart.yaml | 24 ++ .../charts/administration/Chart.yaml | 6 + .../templates/administration-deployment.yaml | 56 +++ .../templates/administration-ingress.yaml | 28 ++ .../templates/administration-service.yaml | 14 + .../charts/administration/values.yaml | 36 ++ .../eshoponabp/charts/authserver/Chart.yaml | 6 + .../templates/authserver-deployment.yaml | 55 +++ .../templates/authserver-ingress.yaml | 30 ++ .../templates/authserver-service.yaml | 14 + .../eshoponabp/charts/authserver/values.yaml | 28 ++ .../k8s/eshoponabp/charts/basket/Chart.yaml | 6 + .../basket/templates/basket-deployment.yaml | 55 +++ .../basket/templates/basket-ingress.yaml | 28 ++ .../basket/templates/basket-service.yaml | 14 + .../k8s/eshoponabp/charts/basket/values.yaml | 30 ++ .../k8s/eshoponabp/charts/catalog/Chart.yaml | 6 + .../catalog/templates/catalog-deployment.yaml | 64 ++++ .../catalog/templates/catalog-ingress.yaml | 28 ++ .../catalog/templates/catalog-service.yaml | 16 + .../k8s/eshoponabp/charts/catalog/values.yaml | 36 ++ .../charts/gateway-web-public/Chart.yaml | 6 + .../gateway-web-public-configmap.yaml | 106 ++++++ .../gateway-web-public-deployment.yaml | 52 +++ .../templates/gateway-web-public-ingress.yaml | 28 ++ .../templates/gateway-web-public-service.yaml | 14 + .../charts/gateway-web-public/values.yaml | 38 ++ .../eshoponabp/charts/gateway-web/Chart.yaml | 6 + .../templates/gateway-web-configmap.yaml | 92 +++++ .../templates/gateway-web-deployment.yaml | 58 +++ .../templates/gateway-web-ingress.yaml | 28 ++ .../templates/gateway-web-service.yaml | 14 + .../eshoponabp/charts/gateway-web/values.yaml | 31 ++ .../k8s/eshoponabp/charts/identity/Chart.yaml | 6 + .../templates/identity-deployment.yaml | 75 ++++ .../identity/templates/identity-ingress.yaml | 28 ++ .../identity/templates/identity-service.yaml | 14 + .../eshoponabp/charts/identity/values.yaml | 43 +++ .../k8s/eshoponabp/charts/mongodb/Chart.yaml | 6 + .../mongodb/templates/mongodb-deployment.yaml | 38 ++ .../mongodb/templates/mongodb-service.yaml | 14 + .../k8s/eshoponabp/charts/mongodb/values.yaml | 0 .../k8s/eshoponabp/charts/ordering/Chart.yaml | 6 + .../templates/ordering-deployment.yaml | 53 +++ .../ordering/templates/ordering-ingress.yaml | 28 ++ .../ordering/templates/ordering-service.yaml | 14 + .../eshoponabp/charts/ordering/values.yaml | 28 ++ .../k8s/eshoponabp/charts/payment/Chart.yaml | 6 + .../payment/templates/payment-deployment.yaml | 53 +++ .../payment/templates/payment-ingress.yaml | 28 ++ .../payment/templates/payment-service.yaml | 14 + .../k8s/eshoponabp/charts/payment/values.yaml | 28 ++ .../k8s/eshoponabp/charts/postgres/Chart.yaml | 6 + .../templates/postgres-deployment.yaml | 41 ++ .../postgres/templates/postgres-service.yaml | 14 + .../eshoponabp/charts/postgres/values.yaml | 0 .../eshoponabp/charts/public-web/Chart.yaml | 6 + .../templates/public-web-deployment.yaml | 44 +++ .../templates/public-web-ingress.yaml | 38 ++ .../templates/public-web-service.yaml | 14 + .../eshoponabp/charts/public-web/values.yaml | 22 ++ .../k8s/eshoponabp/charts/rabbitmq/Chart.yaml | 6 + .../rabbitmq/templates/rabbitmq-service.yaml | 20 + .../charts/rabbitmq/templates/rabbitmq.yaml | 25 ++ .../eshoponabp/charts/rabbitmq/values.yaml | 0 .../k8s/eshoponabp/charts/redis/Chart.yaml | 6 + .../charts/redis/templates/redis-service.yaml | 13 + .../charts/redis/templates/redis.yaml | 20 + .../k8s/eshoponabp/charts/redis/values.yaml | 0 .../k8s/eshoponabp/charts/web/Chart.yaml | 6 + .../charts/web/templates/web-configmap.yaml | 28 ++ .../charts/web/templates/web-deployment.yaml | 34 ++ .../charts/web/templates/web-ingress.yaml | 38 ++ .../charts/web/templates/web-service.yaml | 14 + .../k8s/eshoponabp/charts/web/values.yaml | 18 + etc/azure/k8s/eshoponabp/templates/NOTES.txt | 27 ++ .../k8s/eshoponabp/templates/_helpers.tpl | 62 +++ etc/azure/k8s/eshoponabp/values.azure.yaml | 354 ++++++++++++++++++ etc/azure/k8s/eshoponabp/values.yaml | 354 ++++++++++++++++++ etc/azure/k8s/kubectl-cert-manager.tar.gz | 1 + 84 files changed, 2860 insertions(+) create mode 100644 etc/azure/cert-manager.md create mode 100644 etc/azure/cluster-issuer.yaml create mode 100644 etc/azure/k8s/deploy-staging.ps1 create mode 100644 etc/azure/k8s/eshoponabp/.helmignore create mode 100644 etc/azure/k8s/eshoponabp/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/administration/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/administration/templates/administration-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/administration/templates/administration-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/administration/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/authserver/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/authserver/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/basket/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/basket/templates/basket-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/basket/templates/basket-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/basket/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/catalog/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/catalog/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-configmap.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/identity/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/identity/templates/identity-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/identity/templates/identity-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/identity/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/mongodb/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/mongodb/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/ordering/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/ordering/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/payment/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/payment/templates/payment-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/payment/templates/payment-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/payment/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/postgres/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/postgres/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/public-web/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/public-web/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/rabbitmq/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/rabbitmq/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/redis/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/redis/templates/redis-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/redis/templates/redis.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/redis/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/web/Chart.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/web/templates/web-configmap.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/web/templates/web-deployment.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/web/templates/web-service.yaml create mode 100644 etc/azure/k8s/eshoponabp/charts/web/values.yaml create mode 100644 etc/azure/k8s/eshoponabp/templates/NOTES.txt create mode 100644 etc/azure/k8s/eshoponabp/templates/_helpers.tpl create mode 100644 etc/azure/k8s/eshoponabp/values.azure.yaml create mode 100644 etc/azure/k8s/eshoponabp/values.yaml create mode 100644 etc/azure/k8s/kubectl-cert-manager.tar.gz diff --git a/etc/azure/cert-manager.md b/etc/azure/cert-manager.md new file mode 100644 index 00000000..13fdd863 --- /dev/null +++ b/etc/azure/cert-manager.md @@ -0,0 +1,72 @@ +* Install the `cert-manager` on petclinic cluster. See [Cert-Manager info](https://cert-manager.io/docs/). + + * Create the namespace for ingress-basic + + ```bash + kubectl create namespace cert-ingress-basic + ``` + + * Add the Jetstack Helm repository. + + ```bash + helm repo add jetstack https://charts.jetstack.io + ``` + + * Update your local Helm chart repository. + + ```bash + helm repo update + ``` + + * Install the `Custom Resource Definition` resources separately + + ```bash + kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.1/cert-manager.crds.yaml + ``` + + * Install the cert-manager Helm chart + + ```bash + helm install \ + cert-manager jetstack/cert-manager \ + --namespace ingress-basic \ + --version v1.7.1 + ``` + + * Verify that the cert-manager is deployed correctly. + + ```bash + kubectl get pods --namespace ingress-basic -o wide + ``` + +* Create `ClusterIssuer` with name of `tls-cluster-issuer-prod.yml` for the production certificate through `Let's Encrypt ACME` (Automated Certificate Management Environment) with following content by importing YAML file on Ranhcer and save it under `k8s` folder. *Note that certificate will only be created after annotating and updating the `Ingress` resource.* + +```yaml +apiVersion: cert-manager.io/v1 +kind: ClusterIssuer +metadata: + name: letsencrypt +spec: + acme: + # The ACME server URL + server: https://acme-v02.api.letsencrypt.org/directory + # Email address used for ACME registration + email: info@volosoft.com + # Name of a secret used to store the ACME account private key + privateKeySecretRef: + name: letsencrypt + # Enable the HTTP-01 challenge provider + solvers: + - http01: + ingress: + class: nginx +``` + +* Check if `ClusterIssuer` resource is created. + +```bash +kubectl apply -f etc/azure/cluster-issuer.yaml +kubectl get clusterissuers letsencrypt -n ingress-basic -o wide +``` + +* Issue production Let’s Encrypt Certificate by annotating and adding ingress resource diff --git a/etc/azure/cluster-issuer.yaml b/etc/azure/cluster-issuer.yaml new file mode 100644 index 00000000..a3d6e7f5 --- /dev/null +++ b/etc/azure/cluster-issuer.yaml @@ -0,0 +1,18 @@ +apiVersion: cert-manager.io/v1 +kind: ClusterIssuer +metadata: + name: letsencrypt +spec: + acme: + # The ACME server URL + server: https://acme-v02.api.letsencrypt.org/directory + # Email address used for ACME registration + email: info@volosoft.com + # Name of a secret used to store the ACME account private key + privateKeySecretRef: + name: letsencrypt + # Enable the HTTP-01 challenge provider + solvers: + - http01: + ingress: + class: nginx \ No newline at end of file diff --git a/etc/azure/k8s/deploy-staging.ps1 b/etc/azure/k8s/deploy-staging.ps1 new file mode 100644 index 00000000..3b3b8f97 --- /dev/null +++ b/etc/azure/k8s/deploy-staging.ps1 @@ -0,0 +1 @@ +helm upgrade --install es-st eshoponabp --namespace eshop --create-namespace \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/.helmignore b/etc/azure/k8s/eshoponabp/.helmignore new file mode 100644 index 00000000..0e8a0eb3 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/etc/azure/k8s/eshoponabp/Chart.yaml b/etc/azure/k8s/eshoponabp/Chart.yaml new file mode 100644 index 00000000..a1801db0 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/Chart.yaml @@ -0,0 +1,24 @@ +apiVersion: v2 +name: eshoponabp +description: A Helm chart for Kubernetes + +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +# Versions are expected to follow Semantic Versioning (https://semver.org/) +version: 0.1.0 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. Versions are not expected to +# follow Semantic Versioning. They should reflect the version the application is using. +# It is recommended to use it with quotes. +appVersion: "1.16.0" diff --git a/etc/azure/k8s/eshoponabp/charts/administration/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/administration/Chart.yaml new file mode 100644 index 00000000..914a83f8 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/administration/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: administration +appVersion: "1.0" +description: eShopOnAbp Administration Microservice +version: 1.0.0 +type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-deployment.yaml new file mode 100644 index 00000000..7ddc0fe4 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-deployment.yaml @@ -0,0 +1,56 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + env: + - name: App__SelfUrl + value: "{{ .Values.config.selfUrl }}" + - name: RemoteServices__AbpIdentity__BaseUrl + value: "{{ .Values.config.remoteServices.abpIdentityBaseUrl }}" + - name: RemoteServices__AbpIdentity__UseCurrentAccessToken + value: "{{ .Values.config.remoteServices.useCurrentToken }}" + - name: App__CorsOrigins + value: "{{ .Values.config.corsOrigins }}" + - name: IdentityClients__Default__Authority + value: "{{ .Values.synchedCommunication.authority }}" + - name: "ConnectionStrings__AdministrationService" + value: "{{ .Values.config.connectionStrings.administrationService }}" + - name: "DOTNET_ENVIRONMENT" + value: "{{ .Values.config.dotnetEnv }}" + - name: "Redis__Configuration" + value: "{{ .Values.config.redisHost }}" + - name: "AuthServer__Authority" + value: "{{ .Values.config.authServer.authority }}" + - name: "AuthServer__RequireHttpsMetadata" + value: "{{ .Values.config.authServer.requireHttpsMetadata }}" + - name: "AuthServer__SwaggerClientId" + value: "{{ .Values.config.authServer.swaggerClientId }}" + - name: "AuthServer__SwaggerClientSecret" + value: "{{ .Values.config.authServer.swaggerClientSecret }}" + - name: "StringEncryption__DefaultPassPhrase" + value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" + - name: "RabbitMQ__Connections__Default__HostName" + value: "{{ .Values.config.rabbitmqHost }}" + - name: "ElasticSearch__Url" + value: "{{ .Values.config.elasticsearchHost }}" + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} diff --git a/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml new file mode 100644 index 00000000..8749cf55 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml @@ -0,0 +1,28 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: + - host: "{{ .Values.ingress.host }}" + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-service.yaml b/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-service.yaml new file mode 100644 index 00000000..ee157c01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "80" + port: 80 + - name: "443" + port: 443 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/administration/values.yaml b/etc/azure/k8s/eshoponabp/charts/administration/values.yaml new file mode 100644 index 00000000..0b87e671 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/administration/values.yaml @@ -0,0 +1,36 @@ +config: + selfUrl: # https://eshop-st-administration + corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web,https://eshop-st-gateway-internal + connectionStrings: + administrationService: # + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + remoteServices: + abpIdentityBaseUrl: # + useCurrentToken: "false" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: # + stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 + +synchedCommunication: + grantType: # "client_credentials" + clientId: # + clientSecret: # + authority: https://auth.eshoponabp.com + scope: # "IdentityService" + +ingress: + host: eshop-st-administration + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/service-administration + tag: latest + pullPolicy: IfNotPresent + +env: {} diff --git a/etc/azure/k8s/eshoponabp/charts/authserver/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/authserver/Chart.yaml new file mode 100644 index 00000000..2308e945 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/authserver/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: authserver +appVersion: "1.0" +description: eShopOnAbp AuthServer Application +version: 1.0.0 +type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-deployment.yaml new file mode 100644 index 00000000..7db227d3 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-deployment.yaml @@ -0,0 +1,55 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + env: + - name: App__SelfUrl + value: "{{ .Values.config.selfUrl }}" + - name: App__CorsOrigins + value: "{{ .Values.config.corsOrigins }}" + - name: App__RedirectAllowedUrls + value: "{{ .Values.config.allowedRedirectUrls }}" + - name: "ConnectionStrings__IdentityService" + value: "{{ .Values.config.connectionStrings.identityService }}" + - name: "ConnectionStrings__AdministrationService" + value: "{{ .Values.config.connectionStrings.administrationService }}" + - name: "AuthServer__Authority" + value: "{{ .Values.config.authServer.authority }}" + - name: "AuthServer__RequireHttpsMetadata" + value: "{{ .Values.config.authServer.requireHttpsMetadata }}" + - name: "AuthServer__SwaggerClientId" + value: "{{ .Values.config.authServer.swaggerClientId }}" + - name: "AuthServer__SwaggerClientSecret" + value: "{{ .Values.config.authServer.swaggerClientSecret }}" + - name: "DOTNET_ENVIRONMENT" + value: "{{ .Values.config.dotnetEnv }}" + - name: "Redis__Configuration" + value: "{{ .Values.config.redisHost }}" + - name: "StringEncryption__DefaultPassPhrase" + value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" + - name: "RabbitMQ__Connections__Default__HostName" + value: "{{ .Values.config.rabbitmqHost }}" + - name: "ElasticSearch__Url" + value: "{{ .Values.config.elasticsearchHost }}" + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} + \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml new file mode 100644 index 00000000..44de900c --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml @@ -0,0 +1,30 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt + nginx.ingress.kubernetes.io/configuration-snippet: | + more_set_input_headers "from-ingress: true"; +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: + - host: "{{ .Values.ingress.host }}" + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-service.yaml b/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-service.yaml new file mode 100644 index 00000000..ee157c01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "80" + port: 80 + - name: "443" + port: 443 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/authserver/values.yaml b/etc/azure/k8s/eshoponabp/charts/authserver/values.yaml new file mode 100644 index 00000000..c498a1ea --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/authserver/values.yaml @@ -0,0 +1,28 @@ +config: + selfUrl: # https://eshop-st-authserver + corsOrigins: # https://eshop-st-identity,https://eshop-st-administration + allowedRedirectUrls: https://eshop-st-web + connectionStrings: + administrationService: # + identityService: # + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: # + redisHost: # + rabbitmqHost: # + elasticsearchHost: # + stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 + +ingress: + host: eshop-st-authserver + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/app-authserver + tag: latest + pullPolicy: IfNotPresent + +env: {} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/basket/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/basket/Chart.yaml new file mode 100644 index 00000000..ca500582 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/basket/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: basket +appVersion: "1.0" +description: eShopOnAbp Basket Microservice +version: 1.0.0 +type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-deployment.yaml new file mode 100644 index 00000000..8105cacf --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-deployment.yaml @@ -0,0 +1,55 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + env: + - name: App__SelfUrl + value: "{{ .Values.config.selfUrl }}" + - name: App__CorsOrigins + value: "{{ .Values.config.corsOrigins }}" + - name: "ConnectionStrings__AdministrationService" + value: {{ .Values.config.connectionStrings.administrationService }} + - name: "DOTNET_ENVIRONMENT" + value: "{{ .Values.config.dotnetEnv }}" + - name: "Redis__Configuration" + value: "{{ .Values.config.redisHost }}" + - name: "RabbitMQ__Connections__Default__HostName" + value: "{{ .Values.config.rabbitmqHost }}" + - name: "ElasticSearch__Url" + value: "{{ .Values.config.elasticsearchHost }}" + - name: "AuthServer__Authority" + value: "{{ .Values.config.authServer.authority }}" + - name: "AuthServer__RequireHttpsMetadata" + value: "{{ .Values.config.authServer.requireHttpsMetadata }}" + - name: "AuthServer__SwaggerClientId" + value: "{{ .Values.config.swaggerClientId }}" + - name: "AuthServer__SwaggerClientSecret" + value: "{{ .Values.config.swaggerClientSecret }}" + - name: "StringEncryption__DefaultPassPhrase" + value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" + - name: "RemoteServices__Catalog__BaseUrl" + value: "{{ .Values.config.remoteServices.catalogBaseUrl }}" + - name: "RemoteServices__Catalog__GrpcUrl" + value: "{{ .Values.config.remoteServices.catalogGrpcUrl }}" + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} + diff --git a/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml new file mode 100644 index 00000000..8749cf55 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml @@ -0,0 +1,28 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: + - host: "{{ .Values.ingress.host }}" + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-service.yaml b/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-service.yaml new file mode 100644 index 00000000..ee157c01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "80" + port: 80 + - name: "443" + port: 443 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/basket/values.yaml b/etc/azure/k8s/eshoponabp/charts/basket/values.yaml new file mode 100644 index 00000000..c69ad16a --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/basket/values.yaml @@ -0,0 +1,30 @@ +config: + selfUrl: # https://eshop-st-basket + corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web,https://eshop-st-public + connectionStrings: + administrationService: # + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: "WebGateway_Swagger" + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 + remoteServices: + catalogBaseUrl: # + catalogGrpcUrl: # + +ingress: + host: eshop-st-basket + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/service-basket + tag: latest + pullPolicy: IfNotPresent + +env: {} + \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/catalog/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/catalog/Chart.yaml new file mode 100644 index 00000000..e8109a51 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/catalog/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: catalog +appVersion: "1.0" +description: eShopOnAbp Catalog Microservice +version: 1.0.0 +type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml new file mode 100644 index 00000000..a057014e --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml @@ -0,0 +1,64 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: grpc + containerPort: 81 + protocol: TCP + env: + - name: "ASPNETCORE_URLS" + value: "http://+:80;http://+:81" + - name: "DOTNET_ENVIRONMENT" + value: "{{ .Values.config.dotnetEnv }}" + - name: App__SelfUrl + value: "{{ .Values.config.selfUrl }}" + - name: App__CorsOrigins + value: "{{ .Values.config.corsOrigins }}" + - name: "ConnectionStrings__CatalogService" + value: "{{ .Values.config.connectionStrings.catalogService }}" + - name: "ConnectionStrings__AdministrationService" + value: "{{ .Values.config.connectionStrings.administrationService }}" + - name: "Redis__Configuration" + value: "{{ .Values.config.redisHost }}" + - name: "RabbitMQ__Connections__Default__HostName" + value: "{{ .Values.config.rabbitmqHost }}" + - name: "ElasticSearch__Url" + value: "{{ .Values.config.elasticsearchHost }}" + - name: "AuthServer__Authority" + value: "{{ .Values.config.authServer.authority }}" + - name: "AuthServer__RequireHttpsMetadata" + value: "{{ .Values.config.authServer.requireHttpsMetadata }}" + - name: "AuthServer__SwaggerClientId" + value: "{{ .Values.config.authServer.swaggerClientId }}" + - name: "AuthServer__SwaggerClientSecret" + value: "{{ .Values.config.authServer.swaggerClientSecret }}" + - name: "StringEncryption__DefaultPassPhrase" + value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" + - name: "Kestrel__Endpoints__Http__Url" + value: "{{ .Values.config.kestrel.httpUrl }}" + - name: "Kestrel__Endpoints__Http__Protocols" + value: "{{ .Values.config.kestrel.httpProtocols }}" + - name: "Kestrel__Endpoints__gRPC__Url" + value: "{{ .Values.config.kestrel.grpcUrl }}" + - name: "Kestrel__Endpoints__gRPC__Protocols" + value: "{{ .Values.config.kestrel.grpcProtocols }}" + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} + diff --git a/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml new file mode 100644 index 00000000..8749cf55 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml @@ -0,0 +1,28 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: + - host: "{{ .Values.ingress.host }}" + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml b/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml new file mode 100644 index 00000000..28306a83 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "http" + port: 80 + - name: grpc + targetPort: grpc + protocol: TCP + port: {{ .Values.config.grpcPort }} + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/catalog/values.yaml b/etc/azure/k8s/eshoponabp/charts/catalog/values.yaml new file mode 100644 index 00000000..8e65d499 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/catalog/values.yaml @@ -0,0 +1,36 @@ +config: + selfUrl: # https://eshop-st-catalog + corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web,https://eshop-st-public,https://eshop-st-web + connectionStrings: + catalogService: # + administrationService: # + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 + grpcPort: 81 + kestrel: + httpUrl: http://eshop-st-catalog:80 + httpProtocols: Http1AndHttp2 + grpcUrl: http://eshop-st-catalog:81 + grpcProtocols: Http2 + +ingress: + host: eshop-st-catalog + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/service-catalog + tag: latest + pullPolicy: IfNotPresent + +env: { + # ASPNETCORE_URLS=http://+:80;http://+:81 +} + \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/Chart.yaml new file mode 100644 index 00000000..50b051d8 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: gateway-web-public +appVersion: "1.0" +description: eShopOnAbp Web Public Gateway Application +version: 1.0.0 +type: application diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-configmap.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-configmap.yaml new file mode 100644 index 00000000..d0548b41 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-configmap.yaml @@ -0,0 +1,106 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap +data: + yarp.json: |- + { + "ReverseProxy": { + "Routes": { + "Account Service": { + "ClusterId": "account-cluster", + "Match": { + "Path": "/api/account/{**everything}" + } + }, + "Administration Service": { + "ClusterId": "administration-cluster", + "Match": { + "Path": "/api/abp/{**everything}" + } + }, + "Catalog Service": { + "ClusterId": "catalog-cluster", + "Match": { + "Path": "/api/catalog/{**everything}" + } + }, + "Basket Service": { + "ClusterId": "basket-cluster", + "Match": { + "Path": "/api/basket/{**everything}" + } + }, + "Ordering Service": { + "ClusterId": "ordering-cluster", + "Match": { + "Path": "/api/ordering/{**everything}" + } + }, + "Payment Service": { + "ClusterId": "payment-cluster", + "Match": { + "Path": "/api/payment/{**everything}" + } + }, + "product-picture-route": { + "ClusterId": "product-picture-cluster", + "Match": { + "Path": "/product-images/{**everything}", + "Methods" : [ "GET" ] + } + } + }, + "Clusters": { + "account-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.accountService.url }}" + } + } + }, + "administration-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.administrationService.url }}" + } + } + }, + "catalog-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.catalogService.url }}" + } + } + }, + "product-picture-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.catalogService.url }}" + } + } + }, + "basket-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.basketService.url }}" + } + } + }, + "ordering-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.orderingService.url }}" + } + } + }, + "payment-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.paymentService.url }}" + } + } + } + } + } + } \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-deployment.yaml new file mode 100644 index 00000000..5e25b31e --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-deployment.yaml @@ -0,0 +1,52 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + volumeMounts: + - name: config-volume + mountPath: /app/yarp.json + subPath: yarp.json + env: + - name: App__SelfUrl + value: "{{ .Values.config.selfUrl }}" + - name: "DOTNET_ENVIRONMENT" + value: "{{ .Values.config.dotnetEnv }}" + - name: "Redis__Configuration" + value: "{{ .Values.config.redisHost }}" + - name: "RabbitMQ__Connections__Default__HostName" + value: "{{ .Values.config.rabbitmqHost }}" + - name: "AuthServer__Authority" + value: "{{ .Values.config.authServer.authority }}" + - name: "AuthServer__RequireHttpsMetadata" + value: "{{ .Values.config.authServer.requireHttpsMetadata }}" + - name: "AuthServer__SwaggerClientId" + value: "{{ .Values.config.authServer.swaggerClientId }}" + - name: "AuthServer__SwaggerClientSecret" + value: "{{ .Values.config.authServer.swaggerClientSecret }}" + - name: "ElasticSearch__Url" + value: "{{ .Values.config.elasticsearchHost }}" + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} + volumes: + - name: config-volume + configMap: + name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml new file mode 100644 index 00000000..8749cf55 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml @@ -0,0 +1,28 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: + - host: "{{ .Values.ingress.host }}" + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-service.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-service.yaml new file mode 100644 index 00000000..ee157c01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "80" + port: 80 + - name: "443" + port: 443 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/values.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/values.yaml new file mode 100644 index 00000000..e8b2cdfd --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/values.yaml @@ -0,0 +1,38 @@ +config: + selfUrl: https://gateway-public.eshoponabp.com + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + +reRoutes: + accountService: + url: https://auth.eshoponabp.com + identityService: + url: https://identity.eshoponabp.com + administrationService: + url: https://administration.eshoponabp.com + catalogService: + url: https://catalog.eshoponabp.com + basketService: + url: https://basket.eshoponabp.com + orderingService: + url: https://order.eshoponabp.com + paymentService: + url: https://payment.eshoponabp.com + +ingress: + host: eshop-st-gateway-web-public + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/gateway-web-public + tag: latest + pullPolicy: IfNotPresent + +env: {} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/Chart.yaml new file mode 100644 index 00000000..d251efb7 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: gateway-web +appVersion: "1.0" +description: eShopOnAbp Web Gateway Application +version: 1.0.0 +type: application diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml new file mode 100644 index 00000000..5d905823 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml @@ -0,0 +1,92 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap +data: + yarp.json: |- + { + "ReverseProxy": { + "Routes": { + "Account Service": { + "ClusterId": "account-cluster", + "Match": { + "Path": "/api/account/{**everything}" + } + }, + "Identity Service": { + "ClusterId": "identity-cluster", + "Match": { + "Path": "/api/identity/{**everything}" + } + }, + "Administration Service": { + "ClusterId": "administration-cluster", + "Match": { + "Path": "/api/abp/{**everything}" + } + }, + "feature-management-route": { + "ClusterId": "feature-management-cluster", + "Match": { + "Path": "/api/feature-management/{**everything}" + } + }, + "permission-management-route": { + "ClusterId": "permission-management-cluster", + "Match": { + "Path": "/api/permission-management/{**everything}" + } + }, + "setting-management-route": { + "ClusterId": "setting-management-cluster", + "Match": { + "Path": "/api/setting-management/{**everything}" + } + } + }, + "Clusters": { + "account-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.accountService.url }}" + } + } + }, + "identity-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.identityService.url }}" + } + } + }, + "administration-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.administrationService.url }}" + } + } + }, + "feature-management-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.administrationService.url }}" + } + } + }, + "permission-management-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.administrationService.url }}" + } + } + }, + "setting-management-cluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.administrationService.url }}" + } + } + } + } + } + } \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-deployment.yaml new file mode 100644 index 00000000..81fb46d7 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-deployment.yaml @@ -0,0 +1,58 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + volumeMounts: + - name: config-volume + mountPath: /app/yarp.json + subPath: yarp.json + env: + - name: App__SelfUrl + value: "{{ .Values.config.selfUrl }}" + - name: App__CorsOrigins + value: "{{ .Values.config.corsOrigins }}" + - name: GlobalConfiguration__BaseUrl + value: "{{ .Values.config.globalConfigurationBaseUrl }}" + - name: "DOTNET_ENVIRONMENT" + value: "{{ .Values.config.dotnetEnv }}" + - name: "Redis__Configuration" + value: "{{ .Values.config.redisHost }}" + - name: "RabbitMQ__Connections__Default__HostName" + value: "{{ .Values.config.rabbitmqHost }}" + - name: "AuthServer__Authority" + value: "{{ .Values.config.authServer.authority }}" + - name: "AuthServer__RequireHttpsMetadata" + value: "{{ .Values.config.authServer.requireHttpsMetadata }}" + - name: "AuthServer__SwaggerClientId" + value: "{{ .Values.config.authServer.swaggerClientId }}" + - name: "AuthServer__SwaggerClientSecret" + value: "{{ .Values.config.authServer.swaggerClientSecret }}" + - name: "ElasticSearch__Url" + value: "{{ .Values.config.elasticsearchHost }}" + - name: "StringEncryption__DefaultPassPhrase" + value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} + volumes: + - name: config-volume + configMap: + name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml new file mode 100644 index 00000000..8749cf55 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml @@ -0,0 +1,28 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: + - host: "{{ .Values.ingress.host }}" + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-service.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-service.yaml new file mode 100644 index 00000000..ee157c01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "80" + port: 80 + - name: "443" + port: 443 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/values.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/values.yaml new file mode 100644 index 00000000..1f25d71a --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/gateway-web/values.yaml @@ -0,0 +1,31 @@ +config: + selfUrl: # https://eshop-st-gateway-web + corsOrigins: # localhost:4200 + globalConfigurationBaseUrl: # http://eshop-st-gateway-web + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: # + redisHost: # + rabbitmqHost: # + elasticsearchHost: # + stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 +reRoutes: + accountService: + url: http://eshop-st-authserver + identityService: + url: http://eshop-st-identity + administrationService: + url: http://eshop-st-administration +ingress: + host: # eshop-st-gateway-web + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/gateway-web + tag: latest + pullPolicy: IfNotPresent + +env: {} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/identity/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/identity/Chart.yaml new file mode 100644 index 00000000..967a2ca0 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/identity/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: identity +appVersion: "1.0" +description: eShopOnAbp Identity Microservice +version: 1.0.0 +type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-deployment.yaml new file mode 100644 index 00000000..00509ce0 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-deployment.yaml @@ -0,0 +1,75 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + env: + - name: App__SelfUrl + value: "{{ .Values.config.selfUrl }}" + - name: App__CorsOrigins + value: "{{ .Values.config.corsOrigins }}" + - name: "ConnectionStrings__IdentityService" + value: {{ .Values.config.connectionStrings.identityService }} + - name: "ConnectionStrings__AdministrationService" + value: {{ .Values.config.connectionStrings.administrationService }} + - name: "DOTNET_ENVIRONMENT" + value: "{{ .Values.config.dotnetEnv }}" + - name: "Redis__Configuration" + value: "{{ .Values.config.redisHost }}" + - name: "RabbitMQ__Connections__Default__HostName" + value: "{{ .Values.config.rabbitmqHost }}" + - name: "ElasticSearch__Url" + value: "{{ .Values.config.elasticsearchHost }}" + - name: "AuthServer__Authority" + value: "{{ .Values.config.authServer.authority }}" + - name: "AuthServer__RequireHttpsMetadata" + value: "{{ .Values.config.authServer.requireHttpsMetadata }}" + - name: "AuthServer__SwaggerClientId" + value: "{{ .Values.config.authServer.swaggerClientId }}" + - name: "AuthServer__SwaggerClientSecret" + value: "{{ .Values.config.authServer.swaggerClientSecret }}" + - name: "StringEncryption__DefaultPassPhrase" + value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" + - name: "IdentityServerClients__Web__RootUrl" + value: {{ .Values.identityServerClients.webRootUrl }} + - name: "IdentityServerClients__PublicWeb__RootUrl" + value: {{ .Values.identityServerClients.publicWebRootUrl }} + - name: "IdentityServerClients__PublicWebGateway__RootUrl" + value: {{ .Values.identityServerClients.publicWebGatewayRootUrl }} + - name: "IdentityServerClients__WebGateway__RootUrl" + value: {{ .Values.identityServerClients.webGatewayRootUrl }} + - name: "IdentityServerClients__IdentityService__RootUrl" + value: {{ .Values.identityServerClients.identityServiceRootUrl }} + - name: "IdentityServerClients__AdministrationService__RootUrl" + value: {{ .Values.identityServerClients.administrationServiceRootUrl }} + - name: "IdentityServerClients__AccountService__RootUrl" + value: {{ .Values.identityServerClients.accountServiceRootUrl }} + - name: "IdentityServerClients__BasketService__RootUrl" + value: {{ .Values.identityServerClients.basketServiceRootUrl }} + - name: "IdentityServerClients__CatalogService__RootUrl" + value: {{ .Values.identityServerClients.catalogServiceRootUrl }} + - name: "IdentityServerClients__OrderingService__RootUrl" + value: {{ .Values.identityServerClients.orderingServiceRootUrl }} + - name: "IdentityServerClients__PaymentService__RootUrl" + value: {{ .Values.identityServerClients.paymentServiceRootUrl }} + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} + diff --git a/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml new file mode 100644 index 00000000..8749cf55 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml @@ -0,0 +1,28 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: + - host: "{{ .Values.ingress.host }}" + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-service.yaml b/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-service.yaml new file mode 100644 index 00000000..ee157c01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "80" + port: 80 + - name: "443" + port: 443 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/identity/values.yaml b/etc/azure/k8s/eshoponabp/charts/identity/values.yaml new file mode 100644 index 00000000..34324d0b --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/identity/values.yaml @@ -0,0 +1,43 @@ +config: + selfUrl: # https://eshop-st-identity + corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web,https://eshop-st-gateway-internal + connectionStrings: + identityService: # + administrationService: # + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 + +# Seeded clients +identityServerClients: + webRootUrl: # + publicWebRootUrl: # + webGatewayRootUrl: # + publicWebGatewayRootUrl: # + accountServiceRootUrl: # + identityServiceRootUrl: # + administrationServiceRootUrl: # + basketServiceRootUrl: # + catalogServiceRootUrl: # + orderingServiceRootUrl: # + paymentServiceRootUrl: # + + +ingress: + host: eshop-st-identity + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/service-identity + tag: latest + pullPolicy: IfNotPresent + +env: {} + \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/mongodb/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/mongodb/Chart.yaml new file mode 100644 index 00000000..d8a45394 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/mongodb/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: mongodb +appVersion: "1.0" +description: Runs Mongo DB Instance +version: 1.0.0 +type: application diff --git a/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml new file mode 100644 index 00000000..c69e67fe --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml @@ -0,0 +1,38 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + serviceName: {{ .Release.Name }}-{{ .Chart.Name }} + replicas: 1 + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: mongo + name: {{ .Release.Name }}-{{ .Chart.Name }} +{{- if eq .Release.Name "es-az" }} + volumeMounts: + - mountPath: "/data/db" + name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume + subPath: mongodb-data +{{- end }} + ports: + - name: mongo + containerPort: 27017 +{{- if eq .Release.Name "es-az" }} + volumeClaimTemplates: + - metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume + spec: + accessModes: [ "ReadWriteOnce" ] + storageClassName: "managed-premium-retain" + resources: + requests: + storage: 32Gi +{{- end }} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-service.yaml b/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-service.yaml new file mode 100644 index 00000000..74fc1015 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + type: ClusterIP + ports: + - name: mongodb + port: 27017 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} + diff --git a/etc/azure/k8s/eshoponabp/charts/mongodb/values.yaml b/etc/azure/k8s/eshoponabp/charts/mongodb/values.yaml new file mode 100644 index 00000000..e69de29b diff --git a/etc/azure/k8s/eshoponabp/charts/ordering/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/ordering/Chart.yaml new file mode 100644 index 00000000..08460269 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/ordering/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: ordering +appVersion: "1.0" +description: eShopOnAbp Ordering Microservice +version: 1.0.0 +type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-deployment.yaml new file mode 100644 index 00000000..78bcb82e --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-deployment.yaml @@ -0,0 +1,53 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + env: + - name: App__SelfUrl + value: "{{ .Values.config.selfUrl }}" + - name: App__CorsOrigins + value: "{{ .Values.config.corsOrigins }}" + - name: "ConnectionStrings__OrderingService" + value: {{ .Values.config.connectionStrings.orderingService }} + - name: "ConnectionStrings__AdministrationService" + value: {{ .Values.config.connectionStrings.administrationService }} + - name: "DOTNET_ENVIRONMENT" + value: "{{ .Values.config.dotnetEnv }}" + - name: "Redis__Configuration" + value: "{{ .Values.config.redisHost }}" + - name: "RabbitMQ__Connections__Default__HostName" + value: "{{ .Values.config.rabbitmqHost }}" + - name: "ElasticSearch__Url" + value: "{{ .Values.config.elasticsearchHost }}" + - name: "AuthServer__Authority" + value: "{{ .Values.config.authServer.authority }}" + - name: "AuthServer__RequireHttpsMetadata" + value: "{{ .Values.config.authServer.requireHttpsMetadata }}" + - name: "AuthServer__SwaggerClientId" + value: "{{ .Values.config.authServer.swaggerClientId }}" + - name: "AuthServer__SwaggerClientSecret" + value: "{{ .Values.config.authServer.swaggerClientSecret }}" + - name: "StringEncryption__DefaultPassPhrase" + value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} + diff --git a/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml new file mode 100644 index 00000000..8749cf55 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml @@ -0,0 +1,28 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: + - host: "{{ .Values.ingress.host }}" + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-service.yaml b/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-service.yaml new file mode 100644 index 00000000..ee157c01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "80" + port: 80 + - name: "443" + port: 443 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/ordering/values.yaml b/etc/azure/k8s/eshoponabp/charts/ordering/values.yaml new file mode 100644 index 00000000..c9f8a55b --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/ordering/values.yaml @@ -0,0 +1,28 @@ +config: + selfUrl: # https://eshop-st-ordering + corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web + connectionStrings: + orderingService: # + administrationService: # + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 + +ingress: + host: eshop-st-ordering + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/service-ordering + tag: latest + pullPolicy: IfNotPresent + +env: {} + \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/payment/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/payment/Chart.yaml new file mode 100644 index 00000000..1cb23f7c --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/payment/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: payment +appVersion: "1.0" +description: eShopOnAbp Payment Microservice +version: 1.0.0 +type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-deployment.yaml new file mode 100644 index 00000000..c3526b1b --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-deployment.yaml @@ -0,0 +1,53 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + env: + - name: App__SelfUrl + value: "{{ .Values.config.selfUrl }}" + - name: App__CorsOrigins + value: "{{ .Values.config.corsOrigins }}" + - name: "ConnectionStrings__PaymentService" + value: {{ .Values.config.connectionStrings.paymentService }} + - name: "ConnectionStrings__AdministrationService" + value: {{ .Values.config.connectionStrings.administrationService }} + - name: "DOTNET_ENVIRONMENT" + value: "{{ .Values.config.dotnetEnv }}" + - name: "Redis__Configuration" + value: "{{ .Values.config.redisHost }}" + - name: "RabbitMQ__Connections__Default__HostName" + value: "{{ .Values.config.rabbitmqHost }}" + - name: "ElasticSearch__Url" + value: "{{ .Values.config.elasticsearchHost }}" + - name: "AuthServer__Authority" + value: "{{ .Values.config.authServer.authority }}" + - name: "AuthServer__RequireHttpsMetadata" + value: "{{ .Values.config.authServer.requireHttpsMetadata }}" + - name: "AuthServer__SwaggerClientId" + value: "{{ .Values.config.authServer.swaggerClientId }}" + - name: "AuthServer__SwaggerClientSecret" + value: "{{ .Values.config.authServer.swaggerClientSecret }}" + - name: "StringEncryption__DefaultPassPhrase" + value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} + diff --git a/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml new file mode 100644 index 00000000..8749cf55 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml @@ -0,0 +1,28 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: + - host: "{{ .Values.ingress.host }}" + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-service.yaml b/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-service.yaml new file mode 100644 index 00000000..ee157c01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "80" + port: 80 + - name: "443" + port: 443 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/payment/values.yaml b/etc/azure/k8s/eshoponabp/charts/payment/values.yaml new file mode 100644 index 00000000..37ffd9cb --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/payment/values.yaml @@ -0,0 +1,28 @@ +config: + selfUrl: # https://eshop-st-payment + corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web + connectionStrings: + paymentService: # + administrationService: # + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 + +ingress: + host: eshop-st-payment + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/service-payment + tag: latest + pullPolicy: IfNotPresent + +env: {} + \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/postgres/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/postgres/Chart.yaml new file mode 100644 index 00000000..eaddf3fb --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/postgres/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: postgresdb +appVersion: "1.0" +description: Runs Postgres DB Instance +version: 1.0.0 +type: application diff --git a/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml new file mode 100644 index 00000000..7597b4d7 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml @@ -0,0 +1,41 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + serviceName: {{ .Release.Name }}-{{ .Chart.Name }} + replicas: 1 + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: postgres + name: {{ .Release.Name }}-{{ .Chart.Name }} +{{- if eq .Release.Name "es-az" }} + volumeMounts: + - mountPath: "/var/opt/postgres" + name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume + subPath: postgres-data +{{- end }} + ports: + - name: postgres + containerPort: 5432 + env: + - name: POSTGRES_PASSWORD + value: "myPassw0rd" +{{- if eq .Release.Name "es-az" }} + volumeClaimTemplates: + - metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume + spec: + accessModes: [ "ReadWriteOnce" ] + storageClassName: "managed-premium-retain" + resources: + requests: + storage: 32Gi +{{- end }} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-service.yaml b/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-service.yaml new file mode 100644 index 00000000..f17e1ba3 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + type: ClusterIP + ports: + - name: postgres + port: 5432 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} + diff --git a/etc/azure/k8s/eshoponabp/charts/postgres/values.yaml b/etc/azure/k8s/eshoponabp/charts/postgres/values.yaml new file mode 100644 index 00000000..e69de29b diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/Chart.yaml new file mode 100644 index 00000000..b4dfae47 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/public-web/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: public-web +appVersion: "1.0" +description: eShopOnAbp Public Web Application +version: 1.0.0 +type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml new file mode 100644 index 00000000..3519d65c --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml @@ -0,0 +1,44 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + env: + - name: App__SelfUrl + value: "{{ .Values.config.selfUrl }}" + - name: RemoteServices__Default__BaseUrl + value: "{{ .Values.config.gatewayUrl }}" + - name: "AuthServer__Authority" + value: "{{ .Values.config.authServer.authority }}" + - name: "AuthServer__RequireHttpsMetadata" + value: "{{ .Values.config.authServer.requireHttpsMetadata }}" + - name: "DOTNET_ENVIRONMENT" + value: "{{ .Values.config.dotnetEnv }}" + - name: "Redis__Configuration" + value: "{{ .Values.config.redisHost }}" + - name: "StringEncryption__DefaultPassPhrase" + value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" + - name: "RabbitMQ__Connections__Default__HostName" + value: "{{ .Values.config.rabbitmqHost }}" + - name: "ElasticSearch__Url" + value: "{{ .Values.config.elasticsearchHost }}" + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml new file mode 100644 index 00000000..ece99454 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml @@ -0,0 +1,38 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" +{{- if eq .Release.Name "es-az" }} + nginx.ingress.kubernetes.io/from-to-www-redirect: "true" +{{- end }} + cert-manager.io/cluster-issuer: letsencrypt +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} +{{- if eq .Release.Name "es-az" }} + - {{ print "www." .Values.ingress.host }} +{{- end }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: +{{- if eq .Release.Name "es-az" }} + - host: "{{ print "www." .Values.ingress.host }}" +{{- else }} + - host: "{{ .Values.ingress.host }}" +{{- end }} + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-service.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-service.yaml new file mode 100644 index 00000000..ee157c01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "80" + port: 80 + - name: "443" + port: 443 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/values.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/values.yaml new file mode 100644 index 00000000..660c55c7 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/public-web/values.yaml @@ -0,0 +1,22 @@ +config: + selfUrl: https://www.eshoponabp.com + gatewayUrl: "https://gateway.eshoponabp.com/" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 + +ingress: + host: eshop-st-public-web + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/app-publicweb + tag: latest + pullPolicy: IfNotPresent + +env: {} diff --git a/etc/azure/k8s/eshoponabp/charts/rabbitmq/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/rabbitmq/Chart.yaml new file mode 100644 index 00000000..50b9af01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/rabbitmq/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: rabbitmq +appVersion: "1.0" +description: Runs RabbitMQ Message Broker Instance +version: 1.0.0 +type: application diff --git a/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq-service.yaml b/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq-service.yaml new file mode 100644 index 00000000..5e08c975 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq-service.yaml @@ -0,0 +1,20 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + type: ClusterIP + ports: + - name: http + protocol: TCP + port: 15672 + targetPort: 15672 + - name: amqp + protocol: TCP + port: 5672 + targetPort: 5672 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} + diff --git a/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq.yaml b/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq.yaml new file mode 100644 index 00000000..7bf082c7 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq.yaml @@ -0,0 +1,25 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + serviceName: {{ .Release.Name }}-{{ .Chart.Name }} + replicas: 1 + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: rabbitmq:management-alpine + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + protocol: TCP + containerPort: 15672 + - name: amqp + protocol: TCP + containerPort: 5672 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/rabbitmq/values.yaml b/etc/azure/k8s/eshoponabp/charts/rabbitmq/values.yaml new file mode 100644 index 00000000..e69de29b diff --git a/etc/azure/k8s/eshoponabp/charts/redis/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/redis/Chart.yaml new file mode 100644 index 00000000..11ec26ce --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/redis/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: redis +appVersion: "1.0" +description: Runs Redis instance +version: 1.0.0 +type: application diff --git a/etc/azure/k8s/eshoponabp/charts/redis/templates/redis-service.yaml b/etc/azure/k8s/eshoponabp/charts/redis/templates/redis-service.yaml new file mode 100644 index 00000000..23800f96 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/redis/templates/redis-service.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + type: ClusterIP + ports: + - name: redis + port: 6379 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/redis/templates/redis.yaml b/etc/azure/k8s/eshoponabp/charts/redis/templates/redis.yaml new file mode 100644 index 00000000..102dfb59 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/redis/templates/redis.yaml @@ -0,0 +1,20 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + replicas: 1 + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: redis:alpine + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: redis + containerPort: 6379 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/redis/values.yaml b/etc/azure/k8s/eshoponabp/charts/redis/values.yaml new file mode 100644 index 00000000..e69de29b diff --git a/etc/azure/k8s/eshoponabp/charts/web/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/web/Chart.yaml new file mode 100644 index 00000000..3a66440f --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/web/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: web +appVersion: "1.0" +description: eShopOnAbp BackOffice Web Application +version: 1.0.0 +type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/web/templates/web-configmap.yaml b/etc/azure/k8s/eshoponabp/charts/web/templates/web-configmap.yaml new file mode 100644 index 00000000..aa36193a --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/web/templates/web-configmap.yaml @@ -0,0 +1,28 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap +data: + dynamic-env.json: |- + { + "production": "true", + "application": { + "baseUrl": "{{ .Values.config.selfUrl }}", + "name": "EShopOnAbp", + "logoUrl": "" + }, + "oAuthConfig": { + "issuer": "{{ .Values.config.authServer.authority }}", + "redirectUri": "{{ .Values.config.selfUrl }}", + "requireHttps": "{{ .Values.config.authServer.requireHttpsMetadata }}", + "clientId": "Web", + "responseType": "code", + "scope": "offline_access openid profile email phone IdentityService AdministrationService" + }, + "apis": { + "default": { + "url": "{{ .Values.config.gatewayUrl }}", + "rootNamespace": "EShopOnAbp" + } + } + } \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/web/templates/web-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/web/templates/web-deployment.yaml new file mode 100644 index 00000000..cb7edabe --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/web/templates/web-deployment.yaml @@ -0,0 +1,34 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + template: + metadata: + labels: + app: {{ .Release.Name }}-{{ .Chart.Name }} + spec: + containers: + - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: {{ .Release.Name }}-{{ .Chart.Name }} + ports: + - name: http + containerPort: 80 + - name: https + containerPort: 443 + volumeMounts: + - name: config-volume + mountPath: /app/dynamic-env.json + subPath: dynamic-env.json + env: + {{- if .Values.env }} +{{ toYaml .Values.env | indent 8 }} + {{- end }} + volumes: + - name: config-volume + configMap: + name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml new file mode 100644 index 00000000..ece99454 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml @@ -0,0 +1,38 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress + annotations: + #kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + nginx.ingress.kubernetes.io/proxy-buffer-size: 32k + nginx.ingress.kubernetes.io/proxy-buffers-number: "8" +{{- if eq .Release.Name "es-az" }} + nginx.ingress.kubernetes.io/from-to-www-redirect: "true" +{{- end }} + cert-manager.io/cluster-issuer: letsencrypt +spec: + #ingressClassName: nginx + tls: + - hosts: + - {{ .Values.ingress.host }} +{{- if eq .Release.Name "es-az" }} + - {{ print "www." .Values.ingress.host }} +{{- end }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls + rules: +{{- if eq .Release.Name "es-az" }} + - host: "{{ print "www." .Values.ingress.host }}" +{{- else }} + - host: "{{ .Values.ingress.host }}" +{{- end }} + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: {{ .Release.Name }}-{{ .Chart.Name }} + port: + number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/web/templates/web-service.yaml b/etc/azure/k8s/eshoponabp/charts/web/templates/web-service.yaml new file mode 100644 index 00000000..ee157c01 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/web/templates/web-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + name: {{ .Release.Name }}-{{ .Chart.Name }} + name: {{ .Release.Name }}-{{ .Chart.Name }} +spec: + ports: + - name: "80" + port: 80 + - name: "443" + port: 443 + selector: + app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/web/values.yaml b/etc/azure/k8s/eshoponabp/charts/web/values.yaml new file mode 100644 index 00000000..4a3f419d --- /dev/null +++ b/etc/azure/k8s/eshoponabp/charts/web/values.yaml @@ -0,0 +1,18 @@ +config: + selfUrl: https://www.eshoponabp.com + gatewayUrl: "https://gateway.eshoponabp.com/" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + +ingress: + host: eshop-st-web + tlsSecret: eshop-wildcard-tls + +image: + repository: eshoponabp/app-web + tag: latest + pullPolicy: IfNotPresent + +# Extra environment variables or configurations +env: {} diff --git a/etc/azure/k8s/eshoponabp/templates/NOTES.txt b/etc/azure/k8s/eshoponabp/templates/NOTES.txt new file mode 100644 index 00000000..044f1a72 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/templates/NOTES.txt @@ -0,0 +1,27 @@ +1. Web (Back Office) angular application URL:{{- if .Values.web.config.selfUrl }} {{ .Values.web.config.selfUrl }} {{- end }} +2. Public Web mvc application URL:{{- if index .Values "public-web" "config" "selfUrl" }} {{ index .Values "public-web" "config" "selfUrl" }} {{- end }} +3. Authentication Server URL:{{- if .Values.authserver.config.selfUrl }} {{ .Values.authserver.config.selfUrl }} + +For RabbitMq Administration use: +"kubectl port-forward services/{{ .Release.Name }}-rabbitmq 15672:15672 -n {{ .Release.Namespace }}" +{{- else if .Values.ingress.enabled }} +{{- range $host := .Values.ingress.hosts }} + {{- range .paths }} + http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ .path }} + {{- end }} +{{- end }} +{{- else if contains "NodePort" .Values.service.type }} + export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "eshoponabp.fullname" . }}) + export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") + echo http://$NODE_IP:$NODE_PORT +{{- else if contains "LoadBalancer" .Values.service.type }} + NOTE: It may take a few minutes for the LoadBalancer IP to be available. + You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "eshoponabp.fullname" . }}' + export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "eshoponabp.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") + echo http://$SERVICE_IP:{{ .Values.service.port }} +{{- else if contains "ClusterIP" .Values.service.type }} + export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "eshoponabp.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") + export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") + echo "Visit http://127.0.0.1:8080 to use your application" + kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:$CONTAINER_PORT +{{- end }} diff --git a/etc/azure/k8s/eshoponabp/templates/_helpers.tpl b/etc/azure/k8s/eshoponabp/templates/_helpers.tpl new file mode 100644 index 00000000..901e5bb0 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/templates/_helpers.tpl @@ -0,0 +1,62 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "eshoponabp.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "eshoponabp.fullname" -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.nameOverride }} +{{- if contains $name .Release.Name }} +{{- .Release.Name | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} +{{- end }} +{{- end }} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "eshoponabp.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "eshoponabp.labels" -}} +helm.sh/chart: {{ include "eshoponabp.chart" . }} +{{ include "eshoponabp.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "eshoponabp.selectorLabels" -}} +app.kubernetes.io/name: {{ include "eshoponabp.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "eshoponabp.serviceAccountName" -}} +{{- if .Values.serviceAccount.create }} +{{- default (include "eshoponabp.fullname" .) .Values.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.serviceAccount.name }} +{{- end }} +{{- end }} diff --git a/etc/azure/k8s/eshoponabp/values.azure.yaml b/etc/azure/k8s/eshoponabp/values.azure.yaml new file mode 100644 index 00000000..184a6726 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/values.azure.yaml @@ -0,0 +1,354 @@ +# auth-server sub-chart override +authserver: + config: + selfUrl: https://auth.eshoponabp.com + corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com,https://identity.eshoponabp.com,https://administration.eshoponabp.com,https://basket.eshoponabp.com,https://catalog.eshoponabp.com,https://payment.eshoponabp.com,https://payment.eshoponabp.com + allowedRedirectUrls: https://www.eshoponabp.com + connectionStrings: + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + identityService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: auth.eshoponabp.com + tlsSecret: eshop-wildcard-tls + image: + repository: "volocr.azurecr.io/eshoponabp/app-authserver" + tag: latest + +# web sub-chart override +web: + config: + selfUrl: https://www.admin.eshoponabp.com + gatewayUrl: https://gateway.eshoponabp.com + ingress: + host: admin.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/app-web" + tag: latest + +# public-web sub-chart override +public-web: + config: + selfUrl: https://www.eshoponabp.com + gatewayUrl: https://gateway-public.eshoponabp.com + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/app-publicweb" + tag: latest + +# identity-service sub-chart override +identity: + config: + selfUrl: https://identity.eshoponabp.com + corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com + connectionStrings: + identityService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + identityServerClients: # Seeded Clients + webRootUrl: https://www.eshoponabp.com/ + publicWebRootUrl: https://publicweb.eshoponabp.com/ + webGatewayRootUrl: https://gateway.eshoponabp.com/ + publicWebGatewayRootUrl: https://gateway-public.eshoponabp.com/ + identityServiceRootUrl: https://identity.eshoponabp.com/ + administrationServiceRootUrl: https://administration.eshoponabp.com/ + accountServiceRootUrl: https://auth.eshoponabp.com + basketServiceRootUrl: https://basket.eshoponabp.com/ + catalogServiceRootUrl: https://catalog.eshoponabp.com + orderingServiceRootUrl: https://order.eshoponabp.com + paymentServiceRootUrl: https://payment.eshoponabp.com + ingress: + host: identity.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-identity" + tag: latest + +# administration sub-chart override +administration: + config: + selfUrl: https://administration.eshoponabp.com + corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com,https://eshop-az-gateway-internal + connectionStrings: + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + remoteServices: + abpIdentityBaseUrl: https://identity.eshoponabp.com + useCurrentToken: "false" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + synchedCommunication: # Used for server-to-server (client-credentials) communication with identityService for user permissions + authority: https://auth.eshoponabp.com + ingress: + host: administration.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-administration" + tag: latest + +# gateway-web sub-chart override +gateway-web: + config: + selfUrl: https://gateway.eshoponabp.com + corsOrigins: https://www.eshoponabp.com + globalConfigurationBaseUrl: http://eshop-az-gateway-public + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: gateway.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/gateway-web" + tag: latest + reRoutes: + accountService: + url: https://auth.eshoponabp.com + identityService: + url: http://eshop-az-identity + administrationService: + url: http://eshop-az-administration + +# gateway-web-public sub-chart override +gateway-web-public: + config: + selfUrl: https://gateway-public.eshoponabp.com + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: gateway-public.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/gateway-web-public" + tag: latest + reRoutes: + accountService: + url: https://auth.eshoponabp.com + identityService: + url: http://eshop-az-identity + administrationService: + url: http://eshop-az-administration + catalogService: + url: http://eshop-az-catalog + basketService: + url: http://eshop-az-basket + orderingService: + url: http://eshop-az-ordering + paymentService: + url: http://eshop-az-payment + +# basket-service sub-chart override +basket: + config: + selfUrl: https://basket.eshoponabp.com + corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com,https://publicweb.eshoponabp.com + connectionStrings: + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + remoteServices: + catalogBaseUrl: http://eshop-az-catalog + catalogGrpcUrl: http://eshop-az-catalog + ingress: + host: basket.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-basket" + tag: latest + +# catalog-service sub-chart override +catalog: + config: + selfUrl: https://catalog.eshoponabp.com + corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com,https://publicweb.eshoponabp.com,https://www.eshoponabp.com + connectionStrings: + catalogService: "mongodb://es-az-mongodb/EShopOnAbp_Catalog" + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + kestrel: + httpUrl: http://eshop-az-catalog:80 + httpProtocols: Http1AndHttp2 + grpcUrl: http://eshop-az-catalog:81 + grpcProtocols: Http2 + ingress: + host: catalog.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-catalog" + tag: latest + +# ordering-service sub-chart override +ordering: + config: + selfUrl: https://order.eshoponabp.com + corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com + connectionStrings: + orderingService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Ordering;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: order.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-ordering" + tag: latest + +# payment-service sub-chart override +payment: + config: + selfUrl: https://payment.eshoponabp.com + corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com + connectionStrings: + paymentService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Payment;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: payment.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-payment" + tag: latest + +# Default values for eshoponabp. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + repository: nginx + pullPolicy: IfNotPresent + # Overrides the image tag whose default is the chart appVersion. + tag: "" + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "" + +podAnnotations: {} + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + port: 80 + +ingress: + enabled: false + className: "" + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: + - path: / + pathType: ImplementationSpecific + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 100 + targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + +nodeSelector: {} + +tolerations: [] + +affinity: {} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/values.yaml b/etc/azure/k8s/eshoponabp/values.yaml new file mode 100644 index 00000000..c3bb8651 --- /dev/null +++ b/etc/azure/k8s/eshoponabp/values.yaml @@ -0,0 +1,354 @@ +# auth-server sub-chart override +authserver: + config: + selfUrl: https://eshop-st-authserver + corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public,https://eshop-st-identity,https://eshop-st-administration,https://eshop-st-basket,https://eshop-st-catalog,https://eshop-st-ordering,https://eshop-st-payment + allowedRedirectUrls: https://eshop-st-web + connectionStrings: + administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + identityService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + ingress: + host: eshop-st-authserver + tlsSecret: eshop-wildcard-tls + image: + repository: "volocr.azurecr.io/eshoponabp/app-authserver" + tag: latest + +# web sub-chart override +web: + config: + selfUrl: https://eshop-st-web + gatewayUrl: "https://eshop-st-gateway-web/" + ingress: + host: eshop-st-web + image: + repository: "volocr.azurecr.io/eshoponabp/app-web" + tag: latest + +# public-web sub-chart override +public-web: + config: + selfUrl: https://eshop-st-public-web + gatewayUrl: http://eshop-st-gateway-web-public + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + ingress: + host: eshop-st-public-web + image: + repository: "volocr.azurecr.io/eshoponabp/app-publicweb" + tag: latest + +# identity-service sub-chart override +identity: + config: + selfUrl: https://eshop-st-identity + corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public + connectionStrings: + identityService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + identityServerClients: # Seeded Clients + webRootUrl: https://eshop-st-web/ + publicWebRootUrl: https://eshop-st-public-web/ + webGatewayRootUrl: https://eshop-st-gateway-web/ + publicWebGatewayRootUrl: https://eshop-st-gateway-web-public/ + identityServiceRootUrl: https://eshop-st-identity/ + administrationServiceRootUrl: https://eshop-st-administration/ + accountServiceRootUrl: https://eshop-st-authserver/ + basketServiceRootUrl: https://eshop-st-basket/ + catalogServiceRootUrl: https://eshop-st-catalog/ + orderingServiceRootUrl: https://eshop-st-ordering/ + paymentServiceRootUrl: https://eshop-st-payment/ + ingress: + host: eshop-st-identity + image: + repository: "volocr.azurecr.io/eshoponabp/service-identity" + tag: latest + +# administration sub-chart override +administration: + config: + selfUrl: https://eshop-st-administration + corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public,https://eshop-st-gateway-internal + connectionStrings: + administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + remoteServices: + abpIdentityBaseUrl: https://eshop-st-identity + useCurrentToken: "false" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + synchedCommunication: # Used for server-to-server (client-credentials) communication with identityService for user permissions + authority: https://eshop-st-authserver + ingress: + host: eshop-st-administration + image: + repository: "volocr.azurecr.io/eshoponabp/service-administration" + tag: latest + +# gateway-web sub-chart override +gateway-web: + config: + selfUrl: https://eshop-st-gateway-web + corsOrigins: https://eshop-st-web + globalConfigurationBaseUrl: http://eshop-st-gateway-public + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + ingress: + host: eshop-st-gateway-web + image: + repository: "volocr.azurecr.io/eshoponabp/gateway-web" + tag: latest + reRoutes: + accountService: + url: http://eshop-st-authserver + identityService: + url: http://eshop-st-identity + administrationService: + url: http://eshop-st-administration + +# gateway-web-public sub-chart override +gateway-web-public: + config: + selfUrl: https://eshop-st-gateway-web-public + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + ingress: + host: eshop-st-gateway-web-public + image: + repository: "volocr.azurecr.io/eshoponabp/gateway-web-public" + tag: latest + reRoutes: + accountService: + url: http://eshop-st-authserver + identityService: + url: http://eshop-st-identity + administrationService: + url: http://eshop-st-administration + catalogService: + url: http://eshop-st-catalog + basketService: + url: http://eshop-st-basket + orderingService: + url: http://eshop-st-ordering + paymentService: + url: http://eshop-st-payment + +# basket-service sub-chart override +basket: + config: + selfUrl: https://eshop-st-basket + corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public,https://eshop-st-public-web + connectionStrings: + administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + remoteServices: + catalogBaseUrl: http://eshop-st-catalog + catalogGrpcUrl: http://eshop-st-catalog + ingress: + host: eshop-st-basket + image: + repository: "volocr.azurecr.io/eshoponabp/service-basket" + tag: latest + +# catalog-service sub-chart override +catalog: + config: + selfUrl: https://eshop-st-catalog + corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public,https://eshop-st-public-web,https://eshop-st-web + connectionStrings: + catalogService: "mongodb://es-st-mongodb/EShopOnAbp_Catalog" + administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + kestrel: + httpUrl: http://eshop-st-catalog:80 + httpProtocols: Http1AndHttp2 + grpcUrl: http://eshop-st-catalog:81 + grpcProtocols: Http2 + ingress: + host: eshop-st-catalog + image: + repository: "volocr.azurecr.io/eshoponabp/service-catalog" + tag: latest + +# ordering-service sub-chart override +ordering: + config: + selfUrl: https://eshop-st-ordering + corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public + connectionStrings: + orderingService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Ordering;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + ingress: + host: eshop-st-ordering + image: + repository: "volocr.azurecr.io/eshoponabp/service-ordering" + tag: latest + +# payment-service sub-chart override +payment: + config: + selfUrl: https://eshop-st-payment + corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public + connectionStrings: + paymentService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Payment;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: http://eshop-st-authserver + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Staging + redisHost: es-st-redis + rabbitmqHost: es-st-rabbitmq + elasticsearchHost: es-st-elasticsearch + ingress: + host: eshop-st-payment + image: + repository: "volocr.azurecr.io/eshoponabp/service-payment" + tag: latest + +# Default values for eshoponabp. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + repository: nginx + pullPolicy: IfNotPresent + # Overrides the image tag whose default is the chart appVersion. + tag: "" + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "" + +podAnnotations: {} + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + port: 80 + +ingress: + enabled: false + className: "" + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: + - path: / + pathType: ImplementationSpecific + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 100 + targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + +nodeSelector: {} + +tolerations: [] + +affinity: {} \ No newline at end of file diff --git a/etc/azure/k8s/kubectl-cert-manager.tar.gz b/etc/azure/k8s/kubectl-cert-manager.tar.gz new file mode 100644 index 00000000..85373076 --- /dev/null +++ b/etc/azure/k8s/kubectl-cert-manager.tar.gz @@ -0,0 +1 @@ +Not Found \ No newline at end of file From 0dde9d85e99886f14b9553be966a0912094b8fbb Mon Sep 17 00:00:00 2001 From: selmankoc Date: Fri, 13 May 2022 23:25:51 +0300 Subject: [PATCH 02/12] docker image build script --- etc/azure/scripts/cluster-issuer.yaml | 18 +++++++ etc/azure/scripts/corednsms.yaml | 8 ++++ etc/azure/scripts/install-ingress.ps1 | 69 +++++++++++++++++++++++++++ etc/azure/scripts/push-images.ps1 | 36 ++++++++++++++ 4 files changed, 131 insertions(+) create mode 100644 etc/azure/scripts/cluster-issuer.yaml create mode 100644 etc/azure/scripts/corednsms.yaml create mode 100644 etc/azure/scripts/install-ingress.ps1 create mode 100644 etc/azure/scripts/push-images.ps1 diff --git a/etc/azure/scripts/cluster-issuer.yaml b/etc/azure/scripts/cluster-issuer.yaml new file mode 100644 index 00000000..c3445a09 --- /dev/null +++ b/etc/azure/scripts/cluster-issuer.yaml @@ -0,0 +1,18 @@ +apiVersion: cert-manager.io/v1 +kind: ClusterIssuer +metadata: + name: letsencrypt +spec: + acme: + server: https://acme-v02.api.letsencrypt.org/directory + email: info@volosoft.com + privateKeySecretRef: + name: letsencrypt + solvers: + - http01: + ingress: + class: nginx + podTemplate: + spec: + nodeSelector: + "kubernetes.io/os": linux \ No newline at end of file diff --git a/etc/azure/scripts/corednsms.yaml b/etc/azure/scripts/corednsms.yaml new file mode 100644 index 00000000..e8909107 --- /dev/null +++ b/etc/azure/scripts/corednsms.yaml @@ -0,0 +1,8 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: coredns-custom + namespace: kube-system +data: + Corefile.override: | + rewrite name substring account.eshoponabp.io es-az-account \ No newline at end of file diff --git a/etc/azure/scripts/install-ingress.ps1 b/etc/azure/scripts/install-ingress.ps1 new file mode 100644 index 00000000..153ed91d --- /dev/null +++ b/etc/azure/scripts/install-ingress.ps1 @@ -0,0 +1,69 @@ +$REGISTRY_NAME="volocr.azurecr.io" +$ACR_URL="volocr.azurecr.io" +$CONTROLLER_REGISTRY="k8s.gcr.io" +$CONTROLLER_IMAGE="ingress-nginx/controller" +$CONTROLLER_TAG="v0.48.1" +$PATCH_REGISTRY="docker.io" +$PATCH_IMAGE="jettech/kube-webhook-certgen" +$PATCH_TAG="v1.5.1" +$DEFAULTBACKEND_REGISTRY="k8s.gcr.io" +$DEFAULTBACKEND_IMAGE="defaultbackend-amd64" +$DEFAULTBACKEND_TAG="1.5" +$CERT_MANAGER_REGISTRY="quay.io" +$CERT_MANAGER_TAG="v1.3.1" +$CERT_MANAGER_IMAGE_CONTROLLER="jetstack/cert-manager-controller" +$CERT_MANAGER_IMAGE_WEBHOOK="jetstack/cert-manager-webhook" +$CERT_MANAGER_IMAGE_CAINJECTOR="jetstack/cert-manager-cainjector" + +az acr import --name $REGISTRY_NAME --source ${CONTROLLER_REGISTRY}/${CONTROLLER_IMAGE}:${CONTROLLER_TAG} --image ${CONTROLLER_IMAGE}:${CONTROLLER_TAG} +az acr import --name $REGISTRY_NAME --source ${PATCH_REGISTRY}/${PATCH_IMAGE}:${PATCH_TAG} --image ${PATCH_IMAGE}:${PATCH_TAG} +az acr import --name $REGISTRY_NAME --source ${DEFAULTBACKEND_REGISTRY}/${DEFAULTBACKEND_IMAGE}:${DEFAULTBACKEND_TAG} --image ${DEFAULTBACKEND_IMAGE}:${DEFAULTBACKEND_TAG} +az acr import --name $REGISTRY_NAME --source ${CERT_MANAGER_REGISTRY}/${CERT_MANAGER_IMAGE_CONTROLLER}:${CERT_MANAGER_TAG} --image ${CERT_MANAGER_IMAGE_CONTROLLER}:${CERT_MANAGER_TAG} +az acr import --name $REGISTRY_NAME --source ${CERT_MANAGER_REGISTRY}/${CERT_MANAGER_IMAGE_WEBHOOK}:${CERT_MANAGER_TAG} --image ${CERT_MANAGER_IMAGE_WEBHOOK}:${CERT_MANAGER_TAG} +az acr import --name $REGISTRY_NAME --source ${CERT_MANAGER_REGISTRY}/${CERT_MANAGER_IMAGE_CAINJECTOR}:${CERT_MANAGER_TAG} --image ${CERT_MANAGER_IMAGE_CAINJECTOR}:${CERT_MANAGER_TAG} + +# Create a namespace for your ingress resources +kubectl create namespace ingress-basic + +# Add the ingress-nginx repository +helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx + +# Use Helm to deploy an NGINX ingress controller +helm install nginx-ingress ingress-nginx/ingress-nginx ` + --namespace ingress-basic ` + --set controller.replicaCount=1 ` + --set controller.nodeSelector."kubernetes\.io/os"=linux ` + --set controller.image.registry=$ACR_URL ` + --set controller.image.image=$CONTROLLER_IMAGE ` + --set controller.image.tag=$CONTROLLER_TAG ` + --set controller.image.digest="" ` + --set controller.admissionWebhooks.patch.nodeSelector."kubernetes\.io/os"=linux ` + --set controller.admissionWebhooks.patch.image.registry=$ACR_URL ` + --set controller.admissionWebhooks.patch.image.image=$PATCH_IMAGE ` + --set controller.admissionWebhooks.patch.image.tag=$PATCH_TAG ` + --set defaultBackend.nodeSelector."kubernetes\.io/os"=linux ` + --set defaultBackend.image.registry=$ACR_URL ` + --set defaultBackend.image.image=$DEFAULTBACKEND_IMAGE ` + --set defaultBackend.image.tag=$DEFAULTBACKEND_TAG + +# Label the ingress-basic namespace to disable resource validation +kubectl label namespace ingress-basic cert-manager.io/disable-validation=true + +# Add the Jetstack Helm repository +helm repo add jetstack https://charts.jetstack.io + +# Update your local Helm chart repository cache +helm repo update + +# Install the cert-manager Helm chart +helm install cert-manager jetstack/cert-manager ` + --namespace ingress-basic ` + --version ${CERT_MANAGER_TAG} ` + --set installCRDs=true ` + --set nodeSelector."kubernetes\.io/os"=linux ` + --set image.repository=${ACR_URL}/${CERT_MANAGER_IMAGE_CONTROLLER} ` + --set image.tag=${CERT_MANAGER_TAG} ` + --set webhook.image.repository=${ACR_URL}/${CERT_MANAGER_IMAGE_WEBHOOK} ` + --set webhook.image.tag=${CERT_MANAGER_TAG} ` + --set cainjector.image.repository=${ACR_URL}/${CERT_MANAGER_IMAGE_CAINJECTOR} ` + --set cainjector.image.tag=${CERT_MANAGER_TAG} \ No newline at end of file diff --git a/etc/azure/scripts/push-images.ps1 b/etc/azure/scripts/push-images.ps1 new file mode 100644 index 00000000..c9668c9c --- /dev/null +++ b/etc/azure/scripts/push-images.ps1 @@ -0,0 +1,36 @@ +param ($version='latest') + +az acr login --name volocr + +docker tag eshoponabp.app-web:$version volocr.azurecr.io/eshoponabp.app-web:$version +docker push volocr.azurecr.io/eshoponabp.app-web:$version + +docker tag eshoponabp.app-authserver:$version volocr.azurecr.io/eshoponabp.app-authserver:$version +docker push volocr.azurecr.io/eshoponabp.app-authserver:$version + +docker tag eshoponabp.apppublicweb:$version volocr.azurecr.io/eshoponabp.apppublicweb:$version +docker push volocr.azurecr.io/eshoponabp.apppublicweb:$version + +docker tag eshoponabp.gateway-web:$version volocr.azurecr.io/eshoponabp.gateway-web:$version +docker push volocr.azurecr.io/c:$version + +docker tag eshoponabp.gateway-web-public:$version volocr.azurecr.io/eshoponabp.gateway-web-public:$version +docker push volocr.azurecr.io/eshoponabp.gateway-web-public:$version + +docker tag eshoponabp.service-identity:$version volocr.azurecr.io/eshoponabp.service-identity:$version +docker push volocr.azurecr.io/eshoponabp.service-identity:$version + +docker tag eshoponabp.service-administration:$version volocr.azurecr.io/eshoponabp.service-administration:$version +docker push volocr.azurecr.io/eshoponabp.service-administration:$version + +docker tag eshoponabp.service-basket:$version volocr.azurecr.io/eshoponabp.service-basket:$version +docker push volocr.azurecr.io/eshoponabp.service-basket:$version + +docker tag eshoponabp.service-catalog:$version volocr.azurecr.io/eshoponabp.service-catalog:$version +docker push volocr.azurecr.io/eshoponabp.service-catalog:$version + +docker tag eshoponabp.service-ordering:$version volocr.azurecr.io/eshoponabp.service-ordering:$version +docker push volocr.azurecr.io/eshoponabp.service-ordering:$version + +docker tag eshoponabp.service-payment:$version volocr.azurecr.io/eshoponabp.service-payment:$version +docker push volocr.azurecr.io/eshoponabp.service-payment:$version \ No newline at end of file From 1c1176425bdffd3f50d611341b90f9aa5c3ba4ff Mon Sep 17 00:00:00 2001 From: selmankoc Date: Sun, 15 May 2022 23:46:05 +0300 Subject: [PATCH 03/12] images tags for acr --- .../k8s/eshoponabp/charts/web/values.yaml | 8 ++-- etc/azure/scripts/push-images.ps1 | 42 +++++++++---------- 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/etc/azure/k8s/eshoponabp/charts/web/values.yaml b/etc/azure/k8s/eshoponabp/charts/web/values.yaml index 4a3f419d..ae67275d 100644 --- a/etc/azure/k8s/eshoponabp/charts/web/values.yaml +++ b/etc/azure/k8s/eshoponabp/charts/web/values.yaml @@ -1,18 +1,18 @@ config: - selfUrl: https://www.eshoponabp.com + selfUrl: https://www.admin.eshoponabp.com gatewayUrl: "https://gateway.eshoponabp.com/" authServer: authority: https://auth.eshoponabp.com requireHttpsMetadata: "false" ingress: - host: eshop-st-web + host: admin.eshoponabp.com tlsSecret: eshop-wildcard-tls image: - repository: eshoponabp/app-web + repository: "volocr.azurecr.io/eshoponabp/app-web" tag: latest - pullPolicy: IfNotPresent + # Extra environment variables or configurations env: {} diff --git a/etc/azure/scripts/push-images.ps1 b/etc/azure/scripts/push-images.ps1 index c9668c9c..c0b79032 100644 --- a/etc/azure/scripts/push-images.ps1 +++ b/etc/azure/scripts/push-images.ps1 @@ -2,35 +2,35 @@ param ($version='latest') az acr login --name volocr -docker tag eshoponabp.app-web:$version volocr.azurecr.io/eshoponabp.app-web:$version -docker push volocr.azurecr.io/eshoponabp.app-web:$version +docker tag eshoponabp/app-web:$version volocr.azurecr.io/eshoponabp/app-web:$version +docker push volocr.azurecr.io/eshoponabp/app-web:$version -docker tag eshoponabp.app-authserver:$version volocr.azurecr.io/eshoponabp.app-authserver:$version -docker push volocr.azurecr.io/eshoponabp.app-authserver:$version +docker tag eshoponabp/app-authserver:$version volocr.azurecr.io/eshoponabp/app-authserver:$version +docker push volocr.azurecr.io/eshoponabp/app-authserver:$version -docker tag eshoponabp.apppublicweb:$version volocr.azurecr.io/eshoponabp.apppublicweb:$version -docker push volocr.azurecr.io/eshoponabp.apppublicweb:$version +docker tag eshoponabp/apppublicweb:$version volocr.azurecr.io/eshoponabp/apppublicweb:$version +docker push volocr.azurecr.io/eshoponabp/apppublicweb:$version -docker tag eshoponabp.gateway-web:$version volocr.azurecr.io/eshoponabp.gateway-web:$version +docker tag eshoponabp/gateway-web:$version volocr.azurecr.io/eshoponabp/gateway-web:$version docker push volocr.azurecr.io/c:$version -docker tag eshoponabp.gateway-web-public:$version volocr.azurecr.io/eshoponabp.gateway-web-public:$version -docker push volocr.azurecr.io/eshoponabp.gateway-web-public:$version +docker tag eshoponabp/gateway-web-public:$version volocr.azurecr.io/eshoponabp/gateway-web-public:$version +docker push volocr.azurecr.io/eshoponabp/gateway-web-public:$version -docker tag eshoponabp.service-identity:$version volocr.azurecr.io/eshoponabp.service-identity:$version -docker push volocr.azurecr.io/eshoponabp.service-identity:$version +docker tag eshoponabp/service-identity:$version volocr.azurecr.io/eshoponabp/service-identity:$version +docker push volocr.azurecr.io/eshoponabp/service-identity:$version -docker tag eshoponabp.service-administration:$version volocr.azurecr.io/eshoponabp.service-administration:$version -docker push volocr.azurecr.io/eshoponabp.service-administration:$version +docker tag eshoponabp/service-administration:$version volocr.azurecr.io/eshoponabp/service-administration:$version +docker push volocr.azurecr.io/eshoponabp/service-administration:$version -docker tag eshoponabp.service-basket:$version volocr.azurecr.io/eshoponabp.service-basket:$version -docker push volocr.azurecr.io/eshoponabp.service-basket:$version +docker tag eshoponabp/service-basket:$version volocr.azurecr.io/eshoponabp/service-basket:$version +docker push volocr.azurecr.io/eshoponabp/service-basket:$version -docker tag eshoponabp.service-catalog:$version volocr.azurecr.io/eshoponabp.service-catalog:$version -docker push volocr.azurecr.io/eshoponabp.service-catalog:$version +docker tag eshoponabp/service-catalog:$version volocr.azurecr.io/eshoponabp/service-catalog:$version +docker push volocr.azurecr.io/eshoponabp/service-catalog:$version -docker tag eshoponabp.service-ordering:$version volocr.azurecr.io/eshoponabp.service-ordering:$version -docker push volocr.azurecr.io/eshoponabp.service-ordering:$version +docker tag eshoponabp/service-ordering:$version volocr.azurecr.io/eshoponabp/service-ordering:$version +docker push volocr.azurecr.io/eshoponabp/service-ordering:$version -docker tag eshoponabp.service-payment:$version volocr.azurecr.io/eshoponabp.service-payment:$version -docker push volocr.azurecr.io/eshoponabp.service-payment:$version \ No newline at end of file +docker tag eshoponabp/service-payment:$version volocr.azurecr.io/eshoponabp/service-payment:$version +docker push volocr.azurecr.io/eshoponabp/service-payment:$version \ No newline at end of file From 1fac4559e7e92a5309cc0188955fc28f64f0eff5 Mon Sep 17 00:00:00 2001 From: selmankoc Date: Wed, 1 Jun 2022 15:06:23 +0300 Subject: [PATCH 04/12] fix ingress --- etc/azure/cert-manager.md | 5 +- .../k8s/eshoponabp/charts/web/values.yaml | 8 +- etc/azure/scripts/cluster-issuer.yaml | 2 +- etc/azure/scripts/corednsms.yaml | 8 - .../templates/administration-ingress.yaml | 3 +- .../templates/authserver-ingress.yaml | 5 +- .../basket/templates/basket-ingress.yaml | 3 +- .../catalog/templates/catalog-ingress.yaml | 3 +- .../templates/gateway-web-public-ingress.yaml | 5 +- .../templates/gateway-web-ingress.yaml | 3 +- .../identity/templates/identity-ingress.yaml | 3 +- .../ordering/templates/ordering-ingress.yaml | 3 +- .../payment/templates/payment-ingress.yaml | 3 +- .../templates/public-web-ingress.yaml | 5 +- .../charts/web/templates/web-ingress.yaml | 13 +- etc/k8s/eshoponabp/charts/web/values.yaml | 6 +- etc/k8s/eshoponabp/values.azure.yaml | 354 ++++++++++++++++++ 17 files changed, 389 insertions(+), 43 deletions(-) delete mode 100644 etc/azure/scripts/corednsms.yaml create mode 100644 etc/k8s/eshoponabp/values.azure.yaml diff --git a/etc/azure/cert-manager.md b/etc/azure/cert-manager.md index 13fdd863..354d952f 100644 --- a/etc/azure/cert-manager.md +++ b/etc/azure/cert-manager.md @@ -3,7 +3,7 @@ * Create the namespace for ingress-basic ```bash - kubectl create namespace cert-ingress-basic + kubectl create namespace ingress-basic ``` * Add the Jetstack Helm repository. @@ -39,7 +39,7 @@ kubectl get pods --namespace ingress-basic -o wide ``` -* Create `ClusterIssuer` with name of `tls-cluster-issuer-prod.yml` for the production certificate through `Let's Encrypt ACME` (Automated Certificate Management Environment) with following content by importing YAML file on Ranhcer and save it under `k8s` folder. *Note that certificate will only be created after annotating and updating the `Ingress` resource.* +* Create `ClusterIssuer` with name of `cluster-issuer.yml` for the production certificate through `Let's Encrypt ACME` (Automated Certificate Management Environment) with following content and save it under `azure/k8s` folder. *Note that certificate will only be created after annotating and updating the `Ingress` resource.* ```yaml apiVersion: cert-manager.io/v1 @@ -69,4 +69,3 @@ kubectl apply -f etc/azure/cluster-issuer.yaml kubectl get clusterissuers letsencrypt -n ingress-basic -o wide ``` -* Issue production Let’s Encrypt Certificate by annotating and adding ingress resource diff --git a/etc/azure/k8s/eshoponabp/charts/web/values.yaml b/etc/azure/k8s/eshoponabp/charts/web/values.yaml index ae67275d..4a3f419d 100644 --- a/etc/azure/k8s/eshoponabp/charts/web/values.yaml +++ b/etc/azure/k8s/eshoponabp/charts/web/values.yaml @@ -1,18 +1,18 @@ config: - selfUrl: https://www.admin.eshoponabp.com + selfUrl: https://www.eshoponabp.com gatewayUrl: "https://gateway.eshoponabp.com/" authServer: authority: https://auth.eshoponabp.com requireHttpsMetadata: "false" ingress: - host: admin.eshoponabp.com + host: eshop-st-web tlsSecret: eshop-wildcard-tls image: - repository: "volocr.azurecr.io/eshoponabp/app-web" + repository: eshoponabp/app-web tag: latest - + pullPolicy: IfNotPresent # Extra environment variables or configurations env: {} diff --git a/etc/azure/scripts/cluster-issuer.yaml b/etc/azure/scripts/cluster-issuer.yaml index c3445a09..8c0ef9c9 100644 --- a/etc/azure/scripts/cluster-issuer.yaml +++ b/etc/azure/scripts/cluster-issuer.yaml @@ -5,7 +5,7 @@ metadata: spec: acme: server: https://acme-v02.api.letsencrypt.org/directory - email: info@volosoft.com + email: selman.koc@volosoft.com privateKeySecretRef: name: letsencrypt solvers: diff --git a/etc/azure/scripts/corednsms.yaml b/etc/azure/scripts/corednsms.yaml deleted file mode 100644 index e8909107..00000000 --- a/etc/azure/scripts/corednsms.yaml +++ /dev/null @@ -1,8 +0,0 @@ -apiVersion: v1 -kind: ConfigMap -metadata: - name: coredns-custom - namespace: kube-system -data: - Corefile.override: | - rewrite name substring account.eshoponabp.io es-az-account \ No newline at end of file diff --git a/etc/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml b/etc/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml index de94cec3..8482c393 100644 --- a/etc/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml @@ -7,12 +7,13 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt spec: ingressClassName: nginx tls: - hosts: - {{ .Values.ingress.host }} - secretName: {{ .Values.ingress.tlsSecret }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: - host: "{{ .Values.ingress.host }}" http: diff --git a/etc/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml b/etc/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml index 30e7e89e..03fcc9e8 100644 --- a/etc/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml @@ -7,14 +7,15 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt nginx.ingress.kubernetes.io/configuration-snippet: | more_set_input_headers "from-ingress: true"; spec: ingressClassName: nginx tls: - hosts: - - "eshop-st-authserver" - secretName: "eshop-wildcard-tls" + - {{ .Values.ingress.host }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: - host: "{{ .Values.ingress.host }}" http: diff --git a/etc/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml b/etc/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml index de94cec3..8482c393 100644 --- a/etc/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml @@ -7,12 +7,13 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt spec: ingressClassName: nginx tls: - hosts: - {{ .Values.ingress.host }} - secretName: {{ .Values.ingress.tlsSecret }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: - host: "{{ .Values.ingress.host }}" http: diff --git a/etc/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml b/etc/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml index de94cec3..8482c393 100644 --- a/etc/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml @@ -7,12 +7,13 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt spec: ingressClassName: nginx tls: - hosts: - {{ .Values.ingress.host }} - secretName: {{ .Values.ingress.tlsSecret }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: - host: "{{ .Values.ingress.host }}" http: diff --git a/etc/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml b/etc/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml index a8d988f6..ef98642c 100644 --- a/etc/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml @@ -10,15 +10,16 @@ metadata: {{- if eq .Release.Name "es-az" }} nginx.ingress.kubernetes.io/from-to-www-redirect: "true" {{- end }} + cert-manager.io/cluster-issuer: letsencrypt spec: ingressClassName: nginx tls: - hosts: - {{ .Values.ingress.host }} {{- if eq .Release.Name "es-az" }} - - {{ print "www." .Values.global.ingress.host }} + - {{ print "www." .Values.ingress.host }} {{- end }} - secretName: {{ .Values.ingress.tlsSecret }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: {{- if eq .Release.Name "es-az" }} - host: "{{ print "www." .Values.ingress.host }}" diff --git a/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml b/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml index 0dedb3d3..ef98642c 100644 --- a/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml @@ -10,6 +10,7 @@ metadata: {{- if eq .Release.Name "es-az" }} nginx.ingress.kubernetes.io/from-to-www-redirect: "true" {{- end }} + cert-manager.io/cluster-issuer: letsencrypt spec: ingressClassName: nginx tls: @@ -18,7 +19,7 @@ spec: {{- if eq .Release.Name "es-az" }} - {{ print "www." .Values.ingress.host }} {{- end }} - secretName: {{ .Values.ingress.tlsSecret }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: {{- if eq .Release.Name "es-az" }} - host: "{{ print "www." .Values.ingress.host }}" diff --git a/etc/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml b/etc/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml index de94cec3..8482c393 100644 --- a/etc/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml @@ -7,12 +7,13 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt spec: ingressClassName: nginx tls: - hosts: - {{ .Values.ingress.host }} - secretName: {{ .Values.ingress.tlsSecret }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: - host: "{{ .Values.ingress.host }}" http: diff --git a/etc/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml b/etc/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml index de94cec3..8482c393 100644 --- a/etc/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml @@ -7,12 +7,13 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt spec: ingressClassName: nginx tls: - hosts: - {{ .Values.ingress.host }} - secretName: {{ .Values.ingress.tlsSecret }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: - host: "{{ .Values.ingress.host }}" http: diff --git a/etc/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml b/etc/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml index de94cec3..8482c393 100644 --- a/etc/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml @@ -7,12 +7,13 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" + cert-manager.io/cluster-issuer: letsencrypt spec: ingressClassName: nginx tls: - hosts: - {{ .Values.ingress.host }} - secretName: {{ .Values.ingress.tlsSecret }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: - host: "{{ .Values.ingress.host }}" http: diff --git a/etc/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml b/etc/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml index 18a5ed2f..ef98642c 100644 --- a/etc/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml @@ -10,6 +10,7 @@ metadata: {{- if eq .Release.Name "es-az" }} nginx.ingress.kubernetes.io/from-to-www-redirect: "true" {{- end }} + cert-manager.io/cluster-issuer: letsencrypt spec: ingressClassName: nginx tls: @@ -18,12 +19,12 @@ spec: {{- if eq .Release.Name "es-az" }} - {{ print "www." .Values.ingress.host }} {{- end }} - secretName: {{ .Values.ingress.tlsSecret }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: {{- if eq .Release.Name "es-az" }} - host: "{{ print "www." .Values.ingress.host }}" {{- else }} - - host: "{{ .Values.ingress.host }}" + - host: "{{ .Values.ingress.host }}" {{- end }} http: paths: diff --git a/etc/k8s/eshoponabp/charts/web/templates/web-ingress.yaml b/etc/k8s/eshoponabp/charts/web/templates/web-ingress.yaml index bbade7db..8482c393 100644 --- a/etc/k8s/eshoponabp/charts/web/templates/web-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/web/templates/web-ingress.yaml @@ -7,24 +7,15 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" -{{- if eq .Release.Name "es-az" }} - nginx.ingress.kubernetes.io/from-to-www-redirect: "true" -{{- end }} + cert-manager.io/cluster-issuer: letsencrypt spec: ingressClassName: nginx tls: - hosts: - {{ .Values.ingress.host }} -{{- if eq .Release.Name "eh-es" }} - - {{ print "www." .Values.ingress.host }} -{{- end }} - secretName: {{ .Values.ingress.tlsSecret }} + secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: -{{- if eq .Release.Name "eh-es" }} - - host: "{{ print "www." .Values.ingress.host }}" -{{- else }} - host: "{{ .Values.ingress.host }}" -{{- end }} http: paths: - path: / diff --git a/etc/k8s/eshoponabp/charts/web/values.yaml b/etc/k8s/eshoponabp/charts/web/values.yaml index 9a3418b7..a3f873eb 100644 --- a/etc/k8s/eshoponabp/charts/web/values.yaml +++ b/etc/k8s/eshoponabp/charts/web/values.yaml @@ -1,8 +1,8 @@ config: - selfUrl: https://eshop-st-web - gatewayUrl: "https://eshop-st-gateway-web/" + selfUrl: https://www.admin.eshoponabp.com + gatewayUrl: "https://www.gateway.eshoponabp.com/" authServer: - authority: http://eshop-st-authserver + authority: https://auth.eshoponabp.com requireHttpsMetadata: "false" ingress: diff --git a/etc/k8s/eshoponabp/values.azure.yaml b/etc/k8s/eshoponabp/values.azure.yaml new file mode 100644 index 00000000..53c1fad1 --- /dev/null +++ b/etc/k8s/eshoponabp/values.azure.yaml @@ -0,0 +1,354 @@ +# auth-server sub-chart override +authserver: + config: + selfUrl: https://auth.eshoponabp.com + corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://identity.eshoponabp.com,https://administration.eshoponabp.com,https://basket.eshoponabp.com,https://catalog.eshoponabp.com,https://order.eshoponabp.com,https://payment.eshoponabp.com + allowedRedirectUrls: https://admin.eshoponabp.com + connectionStrings: + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + identityService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: auth.eshoponabp.com + tlsSecret: eshop-wildcard-tls + image: + repository: "volocr.azurecr.io/eshoponabp/app-authserver" + tag: latest + +# web sub-chart override +web: + config: + selfUrl: https://admin.eshoponabp.com + gatewayUrl: https://www.gateway.eshoponabp.com + ingress: + host: admin.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/app-web" + tag: latest + +# public-web sub-chart override +public-web: + config: + selfUrl: https://www.eshoponabp.com + gatewayUrl: https://www.gateway-public.eshoponabp.com + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/app-publicweb" + tag: latest + +# identity-service sub-chart override +identity: + config: + selfUrl: https://identity.eshoponabp.com + corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com + connectionStrings: + identityService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + identityServerClients: # Seeded Clients + webRootUrl: https://admin.eshoponabp.com/ + publicWebRootUrl: https://www.eshoponabp.com/ + webGatewayRootUrl: https://www.gateway.eshoponabp.com/ + publicWebGatewayRootUrl: https://www.gateway-public.eshoponabp.com/ + identityServiceRootUrl: https://identity.eshoponabp.com/ + administrationServiceRootUrl: https://administration.eshoponabp.com/ + accountServiceRootUrl: https://auth.eshoponabp.com + basketServiceRootUrl: https://basket.eshoponabp.com/ + catalogServiceRootUrl: https://catalog.eshoponabp.com + orderingServiceRootUrl: https://order.eshoponabp.com + paymentServiceRootUrl: https://payment.eshoponabp.com + ingress: + host: identity.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-identity" + tag: latest + +# administration sub-chart override +administration: + config: + selfUrl: https://administration.eshoponabp.com + corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://eshop-az-gateway-internal + connectionStrings: + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + remoteServices: + abpIdentityBaseUrl: https://identity.eshoponabp.com + useCurrentToken: "false" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + synchedCommunication: # Used for server-to-server (client-credentials) communication with identityService for user permissions + authority: https://auth.eshoponabp.com + ingress: + host: administration.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-administration" + tag: latest + +# gateway-web sub-chart override +gateway-web: + config: + selfUrl: https://www.gateway.eshoponabp.com + corsOrigins: https://admin.eshoponabp.com + globalConfigurationBaseUrl: http://eshop-az-gateway-public + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: gateway.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/gateway-web" + tag: latest + reRoutes: + accountService: + url: https://auth.eshoponabp.com + identityService: + url: http://eshop-az-identity + administrationService: + url: http://eshop-az-administration + +# gateway-web-public sub-chart override +gateway-web-public: + config: + selfUrl: https://www.gateway-public.eshoponabp.com + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: gateway-public.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/gateway-web-public" + tag: latest + reRoutes: + accountService: + url: https://auth.eshoponabp.com + identityService: + url: http://eshop-az-identity + administrationService: + url: http://eshop-az-administration + catalogService: + url: http://eshop-az-catalog + basketService: + url: http://eshop-az-basket + orderingService: + url: http://eshop-az-ordering + paymentService: + url: http://eshop-az-payment + +# basket-service sub-chart override +basket: + config: + selfUrl: https://basket.eshoponabp.com + corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://publicweb.eshoponabp.com + connectionStrings: + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + remoteServices: + catalogBaseUrl: http://eshop-az-catalog + catalogGrpcUrl: http://eshop-az-catalog + ingress: + host: basket.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-basket" + tag: latest + +# catalog-service sub-chart override +catalog: + config: + selfUrl: https://catalog.eshoponabp.com + corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://publicweb.eshoponabp.com,https://admin.eshoponabp.com + connectionStrings: + catalogService: "mongodb://es-az-mongodb/EShopOnAbp_Catalog" + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + kestrel: + httpUrl: http://eshop-az-catalog:80 + httpProtocols: Http1AndHttp2 + grpcUrl: http://eshop-az-catalog:81 + grpcProtocols: Http2 + ingress: + host: catalog.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-catalog" + tag: latest + +# ordering-service sub-chart override +ordering: + config: + selfUrl: https://order.eshoponabp.com + corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com + connectionStrings: + orderingService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Ordering;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: order.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-ordering" + tag: latest + +# payment-service sub-chart override +payment: + config: + selfUrl: https://payment.eshoponabp.com + corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com + connectionStrings: + paymentService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Payment;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + swaggerClientId: WebGateway_Swagger + swaggerClientSecret: "1q2w3e*" + dotnetEnv: Production + redisHost: es-az-redis + rabbitmqHost: es-az-rabbitmq + elasticsearchHost: es-az-elasticsearch + ingress: + host: payment.eshoponabp.com + image: + repository: "volocr.azurecr.io/eshoponabp/service-payment" + tag: latest + +# Default values for eshoponabp. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + repository: nginx + pullPolicy: IfNotPresent + # Overrides the image tag whose default is the chart appVersion. + tag: "" + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "" + +podAnnotations: {} + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + port: 80 + +ingress: + enabled: false + className: "" + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: + - path: / + pathType: ImplementationSpecific + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 100 + targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + +nodeSelector: {} + +tolerations: [] + +affinity: {} \ No newline at end of file From c96f895d4b940de1d359154d156f8097842a75cb Mon Sep 17 00:00:00 2001 From: selmankoc Date: Fri, 3 Jun 2022 09:43:50 +0300 Subject: [PATCH 05/12] Update values.azure.yaml changed public web url --- etc/k8s/eshoponabp/values.azure.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/etc/k8s/eshoponabp/values.azure.yaml b/etc/k8s/eshoponabp/values.azure.yaml index 53c1fad1..19c20b17 100644 --- a/etc/k8s/eshoponabp/values.azure.yaml +++ b/etc/k8s/eshoponabp/values.azure.yaml @@ -175,7 +175,7 @@ gateway-web-public: basket: config: selfUrl: https://basket.eshoponabp.com - corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://publicweb.eshoponabp.com + corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://www.eshoponabp.com connectionStrings: administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" authServer: @@ -200,7 +200,7 @@ basket: catalog: config: selfUrl: https://catalog.eshoponabp.com - corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://publicweb.eshoponabp.com,https://admin.eshoponabp.com + corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://www.eshoponabp.com,https://admin.eshoponabp.com connectionStrings: catalogService: "mongodb://es-az-mongodb/EShopOnAbp_Catalog" administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" From 331e7868344af30619263bcd81f509ce45bd1ea9 Mon Sep 17 00:00:00 2001 From: selmankoc Date: Sat, 4 Jun 2022 10:57:59 +0300 Subject: [PATCH 06/12] fix web image name --- etc/azure/scripts/push-images.ps1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/etc/azure/scripts/push-images.ps1 b/etc/azure/scripts/push-images.ps1 index c0b79032..49bb9945 100644 --- a/etc/azure/scripts/push-images.ps1 +++ b/etc/azure/scripts/push-images.ps1 @@ -8,8 +8,8 @@ docker push volocr.azurecr.io/eshoponabp/app-web:$version docker tag eshoponabp/app-authserver:$version volocr.azurecr.io/eshoponabp/app-authserver:$version docker push volocr.azurecr.io/eshoponabp/app-authserver:$version -docker tag eshoponabp/apppublicweb:$version volocr.azurecr.io/eshoponabp/apppublicweb:$version -docker push volocr.azurecr.io/eshoponabp/apppublicweb:$version +docker tag eshoponabp/app-publicweb:$version volocr.azurecr.io/eshoponabp/app-publicweb:$version +docker push volocr.azurecr.io/eshoponabp/app-publicweb:$version docker tag eshoponabp/gateway-web:$version volocr.azurecr.io/eshoponabp/gateway-web:$version docker push volocr.azurecr.io/c:$version From 5a43034a561d9b746be719c41efadcc90f425ad2 Mon Sep 17 00:00:00 2001 From: selmankoc Date: Mon, 6 Jun 2022 15:46:31 +0300 Subject: [PATCH 07/12] fix intern url --- .../mongodb/templates/mongodb-deployment.yaml | 4 +- .../templates/postgres-deployment.yaml | 4 +- .../templates/public-web-ingress.yaml | 6 +- .../charts/web/templates/web-ingress.yaml | 6 +- .../templates/gateway-web-public-ingress.yaml | 6 +- .../templates/gateway-web-ingress.yaml | 6 +- .../mongodb/templates/mongodb-deployment.yaml | 4 +- .../templates/postgres-deployment.yaml | 4 +- .../templates/public-web-ingress.yaml | 6 +- etc/k8s/eshoponabp/values.azure.yaml | 113 +++++++++--------- 10 files changed, 81 insertions(+), 78 deletions(-) diff --git a/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml index c69e67fe..31e2613e 100644 --- a/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml +++ b/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml @@ -16,7 +16,7 @@ spec: containers: - image: mongo name: {{ .Release.Name }}-{{ .Chart.Name }} -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} volumeMounts: - mountPath: "/data/db" name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume @@ -25,7 +25,7 @@ spec: ports: - name: mongo containerPort: 27017 -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} volumeClaimTemplates: - metadata: name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume diff --git a/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml index 7597b4d7..50750abf 100644 --- a/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml +++ b/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml @@ -16,7 +16,7 @@ spec: containers: - image: postgres name: {{ .Release.Name }}-{{ .Chart.Name }} -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} volumeMounts: - mountPath: "/var/opt/postgres" name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume @@ -28,7 +28,7 @@ spec: env: - name: POSTGRES_PASSWORD value: "myPassw0rd" -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} volumeClaimTemplates: - metadata: name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml index ece99454..31cccb0c 100644 --- a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml +++ b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml @@ -8,7 +8,7 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} nginx.ingress.kubernetes.io/from-to-www-redirect: "true" {{- end }} cert-manager.io/cluster-issuer: letsencrypt @@ -17,12 +17,12 @@ spec: tls: - hosts: - {{ .Values.ingress.host }} -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} - {{ print "www." .Values.ingress.host }} {{- end }} secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} - host: "{{ print "www." .Values.ingress.host }}" {{- else }} - host: "{{ .Values.ingress.host }}" diff --git a/etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml index ece99454..31cccb0c 100644 --- a/etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml +++ b/etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml @@ -8,7 +8,7 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} nginx.ingress.kubernetes.io/from-to-www-redirect: "true" {{- end }} cert-manager.io/cluster-issuer: letsencrypt @@ -17,12 +17,12 @@ spec: tls: - hosts: - {{ .Values.ingress.host }} -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} - {{ print "www." .Values.ingress.host }} {{- end }} secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} - host: "{{ print "www." .Values.ingress.host }}" {{- else }} - host: "{{ .Values.ingress.host }}" diff --git a/etc/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml b/etc/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml index ef98642c..ccba5219 100644 --- a/etc/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml @@ -7,7 +7,7 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} nginx.ingress.kubernetes.io/from-to-www-redirect: "true" {{- end }} cert-manager.io/cluster-issuer: letsencrypt @@ -16,12 +16,12 @@ spec: tls: - hosts: - {{ .Values.ingress.host }} -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} - {{ print "www." .Values.ingress.host }} {{- end }} secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} - host: "{{ print "www." .Values.ingress.host }}" {{- else }} - host: "{{ .Values.ingress.host }}" diff --git a/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml b/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml index ef98642c..ccba5219 100644 --- a/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml @@ -7,7 +7,7 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} nginx.ingress.kubernetes.io/from-to-www-redirect: "true" {{- end }} cert-manager.io/cluster-issuer: letsencrypt @@ -16,12 +16,12 @@ spec: tls: - hosts: - {{ .Values.ingress.host }} -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} - {{ print "www." .Values.ingress.host }} {{- end }} secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} - host: "{{ print "www." .Values.ingress.host }}" {{- else }} - host: "{{ .Values.ingress.host }}" diff --git a/etc/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml b/etc/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml index 53beb942..fc01540b 100644 --- a/etc/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml +++ b/etc/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml @@ -16,7 +16,7 @@ spec: containers: - image: "mongo:4.2" name: {{ .Release.Name }}-{{ .Chart.Name }} -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} volumeMounts: - mountPath: "/data/db" name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume @@ -25,7 +25,7 @@ spec: ports: - name: mongo containerPort: 27017 -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} volumeClaimTemplates: - metadata: name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume diff --git a/etc/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml b/etc/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml index dba81cf4..50c455a6 100644 --- a/etc/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml +++ b/etc/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml @@ -16,7 +16,7 @@ spec: containers: - image: "postgres:14.1" name: {{ .Release.Name }}-{{ .Chart.Name }} -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} volumeMounts: - mountPath: "/var/opt/postgres" name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume @@ -28,7 +28,7 @@ spec: env: - name: POSTGRES_PASSWORD value: "myPassw0rd" -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} volumeClaimTemplates: - metadata: name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume diff --git a/etc/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml b/etc/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml index ef98642c..ccba5219 100644 --- a/etc/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml +++ b/etc/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml @@ -7,7 +7,7 @@ metadata: nginx.ingress.kubernetes.io/force-ssl-redirect: "true" nginx.ingress.kubernetes.io/proxy-buffer-size: 32k nginx.ingress.kubernetes.io/proxy-buffers-number: "8" -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} nginx.ingress.kubernetes.io/from-to-www-redirect: "true" {{- end }} cert-manager.io/cluster-issuer: letsencrypt @@ -16,12 +16,12 @@ spec: tls: - hosts: - {{ .Values.ingress.host }} -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} - {{ print "www." .Values.ingress.host }} {{- end }} secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls rules: -{{- if eq .Release.Name "es-az" }} +{{- if eq .Release.Name "eshop-az" }} - host: "{{ print "www." .Values.ingress.host }}" {{- else }} - host: "{{ .Values.ingress.host }}" diff --git a/etc/k8s/eshoponabp/values.azure.yaml b/etc/k8s/eshoponabp/values.azure.yaml index 19c20b17..e71a095b 100644 --- a/etc/k8s/eshoponabp/values.azure.yaml +++ b/etc/k8s/eshoponabp/values.azure.yaml @@ -4,13 +4,16 @@ authserver: selfUrl: https://auth.eshoponabp.com corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://identity.eshoponabp.com,https://administration.eshoponabp.com,https://basket.eshoponabp.com,https://catalog.eshoponabp.com,https://order.eshoponabp.com,https://payment.eshoponabp.com allowedRedirectUrls: https://admin.eshoponabp.com + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" connectionStrings: - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - identityService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + identityService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch + redisHost: eshop-az-redis + rabbitmqHost: eshop-az-rabbitmq + elasticsearchHost: eshop-az-elasticsearch ingress: host: auth.eshoponabp.com tlsSecret: eshop-wildcard-tls @@ -22,7 +25,7 @@ authserver: web: config: selfUrl: https://admin.eshoponabp.com - gatewayUrl: https://www.gateway.eshoponabp.com + gatewayUrl: http://eshop-az-gateway-web ingress: host: admin.eshoponabp.com image: @@ -33,14 +36,14 @@ web: public-web: config: selfUrl: https://www.eshoponabp.com - gatewayUrl: https://www.gateway-public.eshoponabp.com + gatewayUrl: https://www.gateway-public.eshoponabp.com/ authServer: - authority: https://auth.eshoponabp.com + authority: https://auth.eshoponabp.com requireHttpsMetadata: "false" dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch + redisHost: eshop-az-redis + rabbitmqHost: eshop-az-rabbitmq + elasticsearchHost: eshop-az-elasticsearch ingress: host: eshoponabp.com image: @@ -53,17 +56,17 @@ identity: selfUrl: https://identity.eshoponabp.com corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com connectionStrings: - identityService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + identityService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" authServer: - authority: https://auth.eshoponabp.com + authority: http://eshop-az-authserver requireHttpsMetadata: "false" swaggerClientId: WebGateway_Swagger swaggerClientSecret: "1q2w3e*" dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch + redisHost: eshop-az-redis + rabbitmqHost: eshop-az-rabbitmq + elasticsearchHost: eshop-az-elasticsearch identityServerClients: # Seeded Clients webRootUrl: https://admin.eshoponabp.com/ publicWebRootUrl: https://www.eshoponabp.com/ @@ -88,9 +91,9 @@ administration: selfUrl: https://administration.eshoponabp.com corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://eshop-az-gateway-internal connectionStrings: - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" authServer: - authority: https://auth.eshoponabp.com + authority: http://eshop-az-authserver requireHttpsMetadata: "false" swaggerClientId: WebGateway_Swagger swaggerClientSecret: "1q2w3e*" @@ -98,9 +101,9 @@ administration: abpIdentityBaseUrl: https://identity.eshoponabp.com useCurrentToken: "false" dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch + redisHost: eshop-az-redis + rabbitmqHost: eshop-az-rabbitmq + elasticsearchHost: eshop-az-elasticsearch synchedCommunication: # Used for server-to-server (client-credentials) communication with identityService for user permissions authority: https://auth.eshoponabp.com ingress: @@ -116,14 +119,14 @@ gateway-web: corsOrigins: https://admin.eshoponabp.com globalConfigurationBaseUrl: http://eshop-az-gateway-public authServer: - authority: https://auth.eshoponabp.com + authority: http://eshop-az-authserver requireHttpsMetadata: "false" swaggerClientId: WebGateway_Swagger swaggerClientSecret: "1q2w3e*" dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch + redisHost: eshop-az-redis + rabbitmqHost: eshop-az-rabbitmq + elasticsearchHost: eshop-az-elasticsearch ingress: host: gateway.eshoponabp.com image: @@ -131,7 +134,7 @@ gateway-web: tag: latest reRoutes: accountService: - url: https://auth.eshoponabp.com + url: http://eshop-az-authserver identityService: url: http://eshop-az-identity administrationService: @@ -142,14 +145,14 @@ gateway-web-public: config: selfUrl: https://www.gateway-public.eshoponabp.com authServer: - authority: https://auth.eshoponabp.com + authority: http://eshop-az-authserver requireHttpsMetadata: "false" swaggerClientId: WebGateway_Swagger swaggerClientSecret: "1q2w3e*" dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch + redisHost: eshop-az-redis + rabbitmqHost: eshop-az-rabbitmq + elasticsearchHost: eshop-az-elasticsearch ingress: host: gateway-public.eshoponabp.com image: @@ -157,7 +160,7 @@ gateway-web-public: tag: latest reRoutes: accountService: - url: https://auth.eshoponabp.com + url: http://eshop-az-authserver identityService: url: http://eshop-az-identity administrationService: @@ -177,16 +180,16 @@ basket: selfUrl: https://basket.eshoponabp.com corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://www.eshoponabp.com connectionStrings: - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" authServer: - authority: https://auth.eshoponabp.com + authority: http://eshop-az-authserver requireHttpsMetadata: "false" swaggerClientId: WebGateway_Swagger swaggerClientSecret: "1q2w3e*" dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch + redisHost: eshop-az-redis + rabbitmqHost: eshop-az-rabbitmq + elasticsearchHost: eshop-az-elasticsearch remoteServices: catalogBaseUrl: http://eshop-az-catalog catalogGrpcUrl: http://eshop-az-catalog @@ -202,17 +205,17 @@ catalog: selfUrl: https://catalog.eshoponabp.com corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://www.eshoponabp.com,https://admin.eshoponabp.com connectionStrings: - catalogService: "mongodb://es-az-mongodb/EShopOnAbp_Catalog" - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + catalogService: "mongodb://eshop-az-mongodb/EShopOnAbp_Catalog" + administrationService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" authServer: - authority: https://auth.eshoponabp.com + authority: http://eshop-az-authserver requireHttpsMetadata: "false" swaggerClientId: WebGateway_Swagger swaggerClientSecret: "1q2w3e*" dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch + redisHost: eshop-az-redis + rabbitmqHost: eshop-az-rabbitmq + elasticsearchHost: eshop-az-elasticsearch kestrel: httpUrl: http://eshop-az-catalog:80 httpProtocols: Http1AndHttp2 @@ -230,17 +233,17 @@ ordering: selfUrl: https://order.eshoponabp.com corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com connectionStrings: - orderingService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Ordering;User ID=postgres;password=myPassw0rd;Pooling=false" - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + orderingService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Ordering;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" authServer: - authority: https://auth.eshoponabp.com + authority: http://eshop-az-authserver requireHttpsMetadata: "false" swaggerClientId: WebGateway_Swagger swaggerClientSecret: "1q2w3e*" dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch + redisHost: eshop-az-redis + rabbitmqHost: eshop-az-rabbitmq + elasticsearchHost: eshop-az-elasticsearch ingress: host: order.eshoponabp.com image: @@ -253,17 +256,17 @@ payment: selfUrl: https://payment.eshoponabp.com corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com connectionStrings: - paymentService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Payment;User ID=postgres;password=myPassw0rd;Pooling=false" - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" + paymentService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Payment;User ID=postgres;password=myPassw0rd;Pooling=false" + administrationService: "Host=eshop-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" authServer: - authority: https://auth.eshoponabp.com + authority: http://eshop-az-authserver requireHttpsMetadata: "false" swaggerClientId: WebGateway_Swagger swaggerClientSecret: "1q2w3e*" dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch + redisHost: eshop-az-redis + rabbitmqHost: eshop-az-rabbitmq + elasticsearchHost: eshop-az-elasticsearch ingress: host: payment.eshoponabp.com image: From 5087d9850d43c3d81f6a3547006844207c2aff35 Mon Sep 17 00:00:00 2001 From: selmankoc Date: Mon, 6 Jun 2022 16:26:47 +0300 Subject: [PATCH 08/12] fix grcp --- .../charts/catalog/templates/catalog-deployment.yaml | 1 + .../eshoponabp/charts/catalog/templates/catalog-service.yaml | 2 ++ .../charts/public-web/templates/public-web-deployment.yaml | 2 ++ etc/k8s/eshoponabp/charts/public-web/values.yaml | 1 + etc/k8s/eshoponabp/values.azure.yaml | 5 +++-- 5 files changed, 9 insertions(+), 2 deletions(-) diff --git a/etc/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml b/etc/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml index a057014e..e66bd8ab 100644 --- a/etc/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml +++ b/etc/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml @@ -18,6 +18,7 @@ spec: ports: - name: http containerPort: 80 + protocol: TCP - name: grpc containerPort: 81 protocol: TCP diff --git a/etc/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml b/etc/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml index 28306a83..eae17053 100644 --- a/etc/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml +++ b/etc/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml @@ -8,6 +8,8 @@ spec: ports: - name: "http" port: 80 + targetPort: http + protocol: TCP - name: grpc targetPort: grpc protocol: TCP diff --git a/etc/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml b/etc/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml index 3519d65c..a6202ab9 100644 --- a/etc/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml +++ b/etc/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml @@ -39,6 +39,8 @@ spec: value: "{{ .Values.config.rabbitmqHost }}" - name: "ElasticSearch__Url" value: "{{ .Values.config.elasticsearchHost }}" + - name: "ReverseProxy__Clusters__cluster1__Destinations__destination1__Address" + value: "{{ .Values.config.gatewayUrl }}" {{- if .Values.env }} {{ toYaml .Values.env | indent 8 }} {{- end }} \ No newline at end of file diff --git a/etc/k8s/eshoponabp/charts/public-web/values.yaml b/etc/k8s/eshoponabp/charts/public-web/values.yaml index 390281e2..12e3ab42 100644 --- a/etc/k8s/eshoponabp/charts/public-web/values.yaml +++ b/etc/k8s/eshoponabp/charts/public-web/values.yaml @@ -9,6 +9,7 @@ config: rabbitmqHost: eshop-st-rabbitmq elasticsearchHost: eshop-st-elasticsearch stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 + ingress: host: eshop-st-public-web diff --git a/etc/k8s/eshoponabp/values.azure.yaml b/etc/k8s/eshoponabp/values.azure.yaml index e71a095b..b8b18a69 100644 --- a/etc/k8s/eshoponabp/values.azure.yaml +++ b/etc/k8s/eshoponabp/values.azure.yaml @@ -44,6 +44,7 @@ public-web: redisHost: eshop-az-redis rabbitmqHost: eshop-az-rabbitmq elasticsearchHost: eshop-az-elasticsearch + ingress: host: eshoponabp.com image: @@ -191,8 +192,8 @@ basket: rabbitmqHost: eshop-az-rabbitmq elasticsearchHost: eshop-az-elasticsearch remoteServices: - catalogBaseUrl: http://eshop-az-catalog - catalogGrpcUrl: http://eshop-az-catalog + catalogBaseUrl: http://eshop-az-catalog:80 + catalogGrpcUrl: http://eshop-az-catalog:81 ingress: host: basket.eshoponabp.com image: From 7a617a58021341834872ee7338829ca6a1381ed6 Mon Sep 17 00:00:00 2001 From: selmankoc Date: Tue, 7 Jun 2022 14:45:01 +0300 Subject: [PATCH 09/12] fix dyn-env --- apps/angular/dynamic-env.json | 22 +------------------ .../charts/web/templates/web-configmap.yaml | 4 ++-- etc/k8s/eshoponabp/charts/web/values.yaml | 8 +++---- etc/k8s/eshoponabp/values.azure.yaml | 9 ++++++-- 4 files changed, 14 insertions(+), 29 deletions(-) diff --git a/apps/angular/dynamic-env.json b/apps/angular/dynamic-env.json index a6f6c356..9e26dfee 100644 --- a/apps/angular/dynamic-env.json +++ b/apps/angular/dynamic-env.json @@ -1,21 +1 @@ -{ - "production": true, - "application": { - "baseUrl":"https://eshop-st-web", - "name": "EShopOnAbp", - "logoUrl": "" - }, - "oAuthConfig": { - "issuer": "https://eshop-st-authserver", - "redirectUri": "https://eshop-st-web", - "clientId": "Web", - "responseType": "code", - "scope": "offline_access openid profile email phone IdentityService AdministrationService" - }, - "apis": { - "default": { - "url": "https://eshop-st-gateway-web", - "rootNamespace": "EShopOnAbp" - } - } -} \ No newline at end of file +{} \ No newline at end of file diff --git a/etc/k8s/eshoponabp/charts/web/templates/web-configmap.yaml b/etc/k8s/eshoponabp/charts/web/templates/web-configmap.yaml index aa36193a..9f6a6a75 100644 --- a/etc/k8s/eshoponabp/charts/web/templates/web-configmap.yaml +++ b/etc/k8s/eshoponabp/charts/web/templates/web-configmap.yaml @@ -16,8 +16,8 @@ data: "redirectUri": "{{ .Values.config.selfUrl }}", "requireHttps": "{{ .Values.config.authServer.requireHttpsMetadata }}", "clientId": "Web", - "responseType": "code", - "scope": "offline_access openid profile email phone IdentityService AdministrationService" + "responseType": "{{ .Values.config.authServer.responseType }}", + "scope": "offline_access openid profile email phone AccountService IdentityService AdministrationService CatalogService OrderingService" }, "apis": { "default": { diff --git a/etc/k8s/eshoponabp/charts/web/values.yaml b/etc/k8s/eshoponabp/charts/web/values.yaml index a3f873eb..604bc8fb 100644 --- a/etc/k8s/eshoponabp/charts/web/values.yaml +++ b/etc/k8s/eshoponabp/charts/web/values.yaml @@ -1,10 +1,10 @@ config: - selfUrl: https://www.admin.eshoponabp.com - gatewayUrl: "https://www.gateway.eshoponabp.com/" + selfUrl: https://admin.eshoponabp.com + gatewayUrl: https://www.gateway.eshoponabp.com/ authServer: authority: https://auth.eshoponabp.com requireHttpsMetadata: "false" - + responseType: "code" ingress: host: eshop-st-web tlsSecret: eshop-wildcard-tls @@ -15,4 +15,4 @@ image: pullPolicy: IfNotPresent # Extra environment variables or configurations -env: {} +env: {} \ No newline at end of file diff --git a/etc/k8s/eshoponabp/values.azure.yaml b/etc/k8s/eshoponabp/values.azure.yaml index b8b18a69..c8dfe956 100644 --- a/etc/k8s/eshoponabp/values.azure.yaml +++ b/etc/k8s/eshoponabp/values.azure.yaml @@ -25,12 +25,17 @@ authserver: web: config: selfUrl: https://admin.eshoponabp.com - gatewayUrl: http://eshop-az-gateway-web + # gatewayUrl: http://eshop-az-gateway-web + gatewayUrl: https://www.gateway.eshoponabp.com/ + authServer: + authority: https://auth.eshoponabp.com + requireHttpsMetadata: "false" + responseType: "code" ingress: host: admin.eshoponabp.com image: repository: "volocr.azurecr.io/eshoponabp/app-web" - tag: latest + tag: 1 # public-web sub-chart override public-web: From 40ce266a98ef83918f197a3a4d9341100e4ae645 Mon Sep 17 00:00:00 2001 From: selmankoc Date: Tue, 7 Jun 2022 19:36:23 +0300 Subject: [PATCH 10/12] web-gateway fix --- .../templates/gateway-web-configmap.yaml | 14 +++++++ .../eshoponabp/charts/gateway-web/values.yaml | 4 ++ .../charts/web/templates/web-configmap.yaml | 40 +++++++++---------- .../charts/web/templates/web-deployment.yaml | 2 +- etc/k8s/eshoponabp/values.azure.yaml | 9 +++-- 5 files changed, 45 insertions(+), 24 deletions(-) diff --git a/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml b/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml index 5d905823..70a3c739 100644 --- a/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml +++ b/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml @@ -86,6 +86,20 @@ data: "Address": "{{ .Values.reRoutes.administrationService.url }}" } } + }, + "catalogCluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.catalogService.url }}" + } + } + }, + "orderingCluster": { + "Destinations": { + "destination1": { + "Address": "{{ .Values.reRoutes.orderingService.url }}" + } + } } } } diff --git a/etc/k8s/eshoponabp/charts/gateway-web/values.yaml b/etc/k8s/eshoponabp/charts/gateway-web/values.yaml index 49ac9ace..ab1df0f5 100644 --- a/etc/k8s/eshoponabp/charts/gateway-web/values.yaml +++ b/etc/k8s/eshoponabp/charts/gateway-web/values.yaml @@ -19,6 +19,10 @@ reRoutes: url: http://eshop-st-identity administrationService: url: http://eshop-st-administration + catalogService: + url: http://eshop-st-catalog + orderingService: + url: http://eshop-st-order ingress: host: # eshop-st-gateway-web tlsSecret: eshop-wildcard-tls diff --git a/etc/k8s/eshoponabp/charts/web/templates/web-configmap.yaml b/etc/k8s/eshoponabp/charts/web/templates/web-configmap.yaml index 9f6a6a75..bdcbe997 100644 --- a/etc/k8s/eshoponabp/charts/web/templates/web-configmap.yaml +++ b/etc/k8s/eshoponabp/charts/web/templates/web-configmap.yaml @@ -5,24 +5,24 @@ metadata: data: dynamic-env.json: |- { - "production": "true", - "application": { - "baseUrl": "{{ .Values.config.selfUrl }}", - "name": "EShopOnAbp", - "logoUrl": "" - }, - "oAuthConfig": { - "issuer": "{{ .Values.config.authServer.authority }}", - "redirectUri": "{{ .Values.config.selfUrl }}", - "requireHttps": "{{ .Values.config.authServer.requireHttpsMetadata }}", - "clientId": "Web", - "responseType": "{{ .Values.config.authServer.responseType }}", - "scope": "offline_access openid profile email phone AccountService IdentityService AdministrationService CatalogService OrderingService" - }, - "apis": { - "default": { - "url": "{{ .Values.config.gatewayUrl }}", - "rootNamespace": "EShopOnAbp" - } - } + "production": "true", + "application": { + "baseUrl": "{{ .Values.config.selfUrl }}", + "name": "EShopOnAbp", + "logoUrl": "" + }, + "oAuthConfig": { + "issuer": "{{ .Values.config.authServer.authority }}", + "redirectUri": "{{ .Values.config.selfUrl }}", + "requireHttps": "{{ .Values.config.authServer.requireHttpsMetadata }}", + "clientId": "Web", + "responseType": "{{ .Values.config.authServer.responseType }}", + "scope": "offline_access openid profile email phone AccountService IdentityService AdministrationService CatalogService OrderingService" + }, + "apis": { + "default": { + "url": "{{ .Values.config.gatewayUrl }}", + "rootNamespace": "EShopOnAbp" + } + } } \ No newline at end of file diff --git a/etc/k8s/eshoponabp/charts/web/templates/web-deployment.yaml b/etc/k8s/eshoponabp/charts/web/templates/web-deployment.yaml index cb7edabe..e9c29801 100644 --- a/etc/k8s/eshoponabp/charts/web/templates/web-deployment.yaml +++ b/etc/k8s/eshoponabp/charts/web/templates/web-deployment.yaml @@ -22,7 +22,7 @@ spec: containerPort: 443 volumeMounts: - name: config-volume - mountPath: /app/dynamic-env.json + mountPath: /usr/share/nginx/html/dynamic-env.json subPath: dynamic-env.json env: {{- if .Values.env }} diff --git a/etc/k8s/eshoponabp/values.azure.yaml b/etc/k8s/eshoponabp/values.azure.yaml index c8dfe956..db6e3ba9 100644 --- a/etc/k8s/eshoponabp/values.azure.yaml +++ b/etc/k8s/eshoponabp/values.azure.yaml @@ -25,8 +25,7 @@ authserver: web: config: selfUrl: https://admin.eshoponabp.com - # gatewayUrl: http://eshop-az-gateway-web - gatewayUrl: https://www.gateway.eshoponabp.com/ + gatewayUrl: https://www.gateway.eshoponabp.com authServer: authority: https://auth.eshoponabp.com requireHttpsMetadata: "false" @@ -35,7 +34,7 @@ web: host: admin.eshoponabp.com image: repository: "volocr.azurecr.io/eshoponabp/app-web" - tag: 1 + tag: latest # public-web sub-chart override public-web: @@ -145,6 +144,10 @@ gateway-web: url: http://eshop-az-identity administrationService: url: http://eshop-az-administration + catalogService: + url: http://eshop-st-catalog + orderingService: + url: http://eshop-st-ordering # gateway-web-public sub-chart override gateway-web-public: From 8bb61b251e9dde363e0cf9a3d5807d6c498eb7ae Mon Sep 17 00:00:00 2001 From: selmankoc Date: Tue, 7 Jun 2022 19:36:44 +0300 Subject: [PATCH 11/12] moved to azure file --- etc/azure/k8s/deploy-staging.ps1 | 1 - etc/azure/k8s/eshoponabp/.helmignore | 23 -- etc/azure/k8s/eshoponabp/Chart.yaml | 24 -- .../charts/administration/Chart.yaml | 6 - .../templates/administration-deployment.yaml | 56 --- .../templates/administration-ingress.yaml | 28 -- .../templates/administration-service.yaml | 14 - .../charts/administration/values.yaml | 36 -- .../eshoponabp/charts/authserver/Chart.yaml | 6 - .../templates/authserver-deployment.yaml | 55 --- .../templates/authserver-ingress.yaml | 30 -- .../templates/authserver-service.yaml | 14 - .../eshoponabp/charts/authserver/values.yaml | 28 -- .../k8s/eshoponabp/charts/basket/Chart.yaml | 6 - .../basket/templates/basket-deployment.yaml | 55 --- .../basket/templates/basket-ingress.yaml | 28 -- .../basket/templates/basket-service.yaml | 14 - .../k8s/eshoponabp/charts/basket/values.yaml | 30 -- .../k8s/eshoponabp/charts/catalog/Chart.yaml | 6 - .../catalog/templates/catalog-deployment.yaml | 64 ---- .../catalog/templates/catalog-ingress.yaml | 28 -- .../catalog/templates/catalog-service.yaml | 16 - .../k8s/eshoponabp/charts/catalog/values.yaml | 36 -- .../charts/gateway-web-public/Chart.yaml | 6 - .../gateway-web-public-configmap.yaml | 106 ------ .../gateway-web-public-deployment.yaml | 52 --- .../templates/gateway-web-public-ingress.yaml | 28 -- .../templates/gateway-web-public-service.yaml | 14 - .../charts/gateway-web-public/values.yaml | 38 -- .../eshoponabp/charts/gateway-web/Chart.yaml | 6 - .../templates/gateway-web-configmap.yaml | 92 ----- .../templates/gateway-web-deployment.yaml | 58 --- .../templates/gateway-web-ingress.yaml | 28 -- .../templates/gateway-web-service.yaml | 14 - .../eshoponabp/charts/gateway-web/values.yaml | 31 -- .../k8s/eshoponabp/charts/identity/Chart.yaml | 6 - .../templates/identity-deployment.yaml | 75 ---- .../identity/templates/identity-ingress.yaml | 28 -- .../identity/templates/identity-service.yaml | 14 - .../eshoponabp/charts/identity/values.yaml | 43 --- .../k8s/eshoponabp/charts/mongodb/Chart.yaml | 6 - .../mongodb/templates/mongodb-deployment.yaml | 38 -- .../mongodb/templates/mongodb-service.yaml | 14 - .../k8s/eshoponabp/charts/mongodb/values.yaml | 0 .../k8s/eshoponabp/charts/ordering/Chart.yaml | 6 - .../templates/ordering-deployment.yaml | 53 --- .../ordering/templates/ordering-ingress.yaml | 28 -- .../ordering/templates/ordering-service.yaml | 14 - .../eshoponabp/charts/ordering/values.yaml | 28 -- .../k8s/eshoponabp/charts/payment/Chart.yaml | 6 - .../payment/templates/payment-deployment.yaml | 53 --- .../payment/templates/payment-ingress.yaml | 28 -- .../payment/templates/payment-service.yaml | 14 - .../k8s/eshoponabp/charts/payment/values.yaml | 28 -- .../k8s/eshoponabp/charts/postgres/Chart.yaml | 6 - .../templates/postgres-deployment.yaml | 41 -- .../postgres/templates/postgres-service.yaml | 14 - .../eshoponabp/charts/postgres/values.yaml | 0 .../eshoponabp/charts/public-web/Chart.yaml | 6 - .../templates/public-web-deployment.yaml | 44 --- .../templates/public-web-ingress.yaml | 38 -- .../templates/public-web-service.yaml | 14 - .../eshoponabp/charts/public-web/values.yaml | 22 -- .../k8s/eshoponabp/charts/rabbitmq/Chart.yaml | 6 - .../rabbitmq/templates/rabbitmq-service.yaml | 20 - .../charts/rabbitmq/templates/rabbitmq.yaml | 25 -- .../eshoponabp/charts/rabbitmq/values.yaml | 0 .../k8s/eshoponabp/charts/redis/Chart.yaml | 6 - .../charts/redis/templates/redis-service.yaml | 13 - .../charts/redis/templates/redis.yaml | 20 - .../k8s/eshoponabp/charts/redis/values.yaml | 0 .../k8s/eshoponabp/charts/web/Chart.yaml | 6 - .../charts/web/templates/web-configmap.yaml | 28 -- .../charts/web/templates/web-deployment.yaml | 34 -- .../charts/web/templates/web-ingress.yaml | 38 -- .../charts/web/templates/web-service.yaml | 14 - .../k8s/eshoponabp/charts/web/values.yaml | 18 - etc/azure/k8s/eshoponabp/templates/NOTES.txt | 27 -- .../k8s/eshoponabp/templates/_helpers.tpl | 62 --- etc/azure/k8s/eshoponabp/values.azure.yaml | 354 ------------------ etc/azure/k8s/eshoponabp/values.yaml | 354 ------------------ etc/azure/k8s/kubectl-cert-manager.tar.gz | 1 - etc/azure/scripts/cluster-issuer.yaml | 18 - .../azure/scripts}/cert-manager.md | 0 .../azure/scripts}/cluster-issuer.yaml | 0 .../azure/scripts/install-ingress.ps1 | 0 etc/{ => k8s}/azure/scripts/push-images.ps1 | 0 87 files changed, 2788 deletions(-) delete mode 100644 etc/azure/k8s/deploy-staging.ps1 delete mode 100644 etc/azure/k8s/eshoponabp/.helmignore delete mode 100644 etc/azure/k8s/eshoponabp/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/administration/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/administration/templates/administration-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/administration/templates/administration-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/administration/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/authserver/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/authserver/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/basket/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/basket/templates/basket-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/basket/templates/basket-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/basket/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/catalog/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/catalog/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-configmap.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web-public/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/gateway-web/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/identity/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/identity/templates/identity-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/identity/templates/identity-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/identity/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/mongodb/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/mongodb/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/ordering/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/ordering/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/payment/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/payment/templates/payment-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/payment/templates/payment-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/payment/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/postgres/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/postgres/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/public-web/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/public-web/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/rabbitmq/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/rabbitmq/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/redis/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/redis/templates/redis-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/redis/templates/redis.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/redis/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/web/Chart.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/web/templates/web-configmap.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/web/templates/web-deployment.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/web/templates/web-service.yaml delete mode 100644 etc/azure/k8s/eshoponabp/charts/web/values.yaml delete mode 100644 etc/azure/k8s/eshoponabp/templates/NOTES.txt delete mode 100644 etc/azure/k8s/eshoponabp/templates/_helpers.tpl delete mode 100644 etc/azure/k8s/eshoponabp/values.azure.yaml delete mode 100644 etc/azure/k8s/eshoponabp/values.yaml delete mode 100644 etc/azure/k8s/kubectl-cert-manager.tar.gz delete mode 100644 etc/azure/scripts/cluster-issuer.yaml rename etc/{azure => k8s/azure/scripts}/cert-manager.md (100%) rename etc/{azure => k8s/azure/scripts}/cluster-issuer.yaml (100%) rename etc/{ => k8s}/azure/scripts/install-ingress.ps1 (100%) rename etc/{ => k8s}/azure/scripts/push-images.ps1 (100%) diff --git a/etc/azure/k8s/deploy-staging.ps1 b/etc/azure/k8s/deploy-staging.ps1 deleted file mode 100644 index 3b3b8f97..00000000 --- a/etc/azure/k8s/deploy-staging.ps1 +++ /dev/null @@ -1 +0,0 @@ -helm upgrade --install es-st eshoponabp --namespace eshop --create-namespace \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/.helmignore b/etc/azure/k8s/eshoponabp/.helmignore deleted file mode 100644 index 0e8a0eb3..00000000 --- a/etc/azure/k8s/eshoponabp/.helmignore +++ /dev/null @@ -1,23 +0,0 @@ -# Patterns to ignore when building packages. -# This supports shell glob matching, relative path matching, and -# negation (prefixed with !). Only one pattern per line. -.DS_Store -# Common VCS dirs -.git/ -.gitignore -.bzr/ -.bzrignore -.hg/ -.hgignore -.svn/ -# Common backup files -*.swp -*.bak -*.tmp -*.orig -*~ -# Various IDEs -.project -.idea/ -*.tmproj -.vscode/ diff --git a/etc/azure/k8s/eshoponabp/Chart.yaml b/etc/azure/k8s/eshoponabp/Chart.yaml deleted file mode 100644 index a1801db0..00000000 --- a/etc/azure/k8s/eshoponabp/Chart.yaml +++ /dev/null @@ -1,24 +0,0 @@ -apiVersion: v2 -name: eshoponabp -description: A Helm chart for Kubernetes - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -# Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.1.0 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. Versions are not expected to -# follow Semantic Versioning. They should reflect the version the application is using. -# It is recommended to use it with quotes. -appVersion: "1.16.0" diff --git a/etc/azure/k8s/eshoponabp/charts/administration/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/administration/Chart.yaml deleted file mode 100644 index 914a83f8..00000000 --- a/etc/azure/k8s/eshoponabp/charts/administration/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: administration -appVersion: "1.0" -description: eShopOnAbp Administration Microservice -version: 1.0.0 -type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-deployment.yaml deleted file mode 100644 index 7ddc0fe4..00000000 --- a/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-deployment.yaml +++ /dev/null @@ -1,56 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - env: - - name: App__SelfUrl - value: "{{ .Values.config.selfUrl }}" - - name: RemoteServices__AbpIdentity__BaseUrl - value: "{{ .Values.config.remoteServices.abpIdentityBaseUrl }}" - - name: RemoteServices__AbpIdentity__UseCurrentAccessToken - value: "{{ .Values.config.remoteServices.useCurrentToken }}" - - name: App__CorsOrigins - value: "{{ .Values.config.corsOrigins }}" - - name: IdentityClients__Default__Authority - value: "{{ .Values.synchedCommunication.authority }}" - - name: "ConnectionStrings__AdministrationService" - value: "{{ .Values.config.connectionStrings.administrationService }}" - - name: "DOTNET_ENVIRONMENT" - value: "{{ .Values.config.dotnetEnv }}" - - name: "Redis__Configuration" - value: "{{ .Values.config.redisHost }}" - - name: "AuthServer__Authority" - value: "{{ .Values.config.authServer.authority }}" - - name: "AuthServer__RequireHttpsMetadata" - value: "{{ .Values.config.authServer.requireHttpsMetadata }}" - - name: "AuthServer__SwaggerClientId" - value: "{{ .Values.config.authServer.swaggerClientId }}" - - name: "AuthServer__SwaggerClientSecret" - value: "{{ .Values.config.authServer.swaggerClientSecret }}" - - name: "StringEncryption__DefaultPassPhrase" - value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" - - name: "RabbitMQ__Connections__Default__HostName" - value: "{{ .Values.config.rabbitmqHost }}" - - name: "ElasticSearch__Url" - value: "{{ .Values.config.elasticsearchHost }}" - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} diff --git a/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml deleted file mode 100644 index 8749cf55..00000000 --- a/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-ingress.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" - cert-manager.io/cluster-issuer: letsencrypt -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: - - host: "{{ .Values.ingress.host }}" - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-service.yaml b/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-service.yaml deleted file mode 100644 index ee157c01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/administration/templates/administration-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "80" - port: 80 - - name: "443" - port: 443 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/administration/values.yaml b/etc/azure/k8s/eshoponabp/charts/administration/values.yaml deleted file mode 100644 index 0b87e671..00000000 --- a/etc/azure/k8s/eshoponabp/charts/administration/values.yaml +++ /dev/null @@ -1,36 +0,0 @@ -config: - selfUrl: # https://eshop-st-administration - corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web,https://eshop-st-gateway-internal - connectionStrings: - administrationService: # - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - remoteServices: - abpIdentityBaseUrl: # - useCurrentToken: "false" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: # - stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 - -synchedCommunication: - grantType: # "client_credentials" - clientId: # - clientSecret: # - authority: https://auth.eshoponabp.com - scope: # "IdentityService" - -ingress: - host: eshop-st-administration - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/service-administration - tag: latest - pullPolicy: IfNotPresent - -env: {} diff --git a/etc/azure/k8s/eshoponabp/charts/authserver/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/authserver/Chart.yaml deleted file mode 100644 index 2308e945..00000000 --- a/etc/azure/k8s/eshoponabp/charts/authserver/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: authserver -appVersion: "1.0" -description: eShopOnAbp AuthServer Application -version: 1.0.0 -type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-deployment.yaml deleted file mode 100644 index 7db227d3..00000000 --- a/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-deployment.yaml +++ /dev/null @@ -1,55 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - env: - - name: App__SelfUrl - value: "{{ .Values.config.selfUrl }}" - - name: App__CorsOrigins - value: "{{ .Values.config.corsOrigins }}" - - name: App__RedirectAllowedUrls - value: "{{ .Values.config.allowedRedirectUrls }}" - - name: "ConnectionStrings__IdentityService" - value: "{{ .Values.config.connectionStrings.identityService }}" - - name: "ConnectionStrings__AdministrationService" - value: "{{ .Values.config.connectionStrings.administrationService }}" - - name: "AuthServer__Authority" - value: "{{ .Values.config.authServer.authority }}" - - name: "AuthServer__RequireHttpsMetadata" - value: "{{ .Values.config.authServer.requireHttpsMetadata }}" - - name: "AuthServer__SwaggerClientId" - value: "{{ .Values.config.authServer.swaggerClientId }}" - - name: "AuthServer__SwaggerClientSecret" - value: "{{ .Values.config.authServer.swaggerClientSecret }}" - - name: "DOTNET_ENVIRONMENT" - value: "{{ .Values.config.dotnetEnv }}" - - name: "Redis__Configuration" - value: "{{ .Values.config.redisHost }}" - - name: "StringEncryption__DefaultPassPhrase" - value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" - - name: "RabbitMQ__Connections__Default__HostName" - value: "{{ .Values.config.rabbitmqHost }}" - - name: "ElasticSearch__Url" - value: "{{ .Values.config.elasticsearchHost }}" - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} - \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml deleted file mode 100644 index 44de900c..00000000 --- a/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-ingress.yaml +++ /dev/null @@ -1,30 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" - cert-manager.io/cluster-issuer: letsencrypt - nginx.ingress.kubernetes.io/configuration-snippet: | - more_set_input_headers "from-ingress: true"; -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: - - host: "{{ .Values.ingress.host }}" - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-service.yaml b/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-service.yaml deleted file mode 100644 index ee157c01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/authserver/templates/authserver-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "80" - port: 80 - - name: "443" - port: 443 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/authserver/values.yaml b/etc/azure/k8s/eshoponabp/charts/authserver/values.yaml deleted file mode 100644 index c498a1ea..00000000 --- a/etc/azure/k8s/eshoponabp/charts/authserver/values.yaml +++ /dev/null @@ -1,28 +0,0 @@ -config: - selfUrl: # https://eshop-st-authserver - corsOrigins: # https://eshop-st-identity,https://eshop-st-administration - allowedRedirectUrls: https://eshop-st-web - connectionStrings: - administrationService: # - identityService: # - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: # - redisHost: # - rabbitmqHost: # - elasticsearchHost: # - stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 - -ingress: - host: eshop-st-authserver - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/app-authserver - tag: latest - pullPolicy: IfNotPresent - -env: {} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/basket/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/basket/Chart.yaml deleted file mode 100644 index ca500582..00000000 --- a/etc/azure/k8s/eshoponabp/charts/basket/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: basket -appVersion: "1.0" -description: eShopOnAbp Basket Microservice -version: 1.0.0 -type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-deployment.yaml deleted file mode 100644 index 8105cacf..00000000 --- a/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-deployment.yaml +++ /dev/null @@ -1,55 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - env: - - name: App__SelfUrl - value: "{{ .Values.config.selfUrl }}" - - name: App__CorsOrigins - value: "{{ .Values.config.corsOrigins }}" - - name: "ConnectionStrings__AdministrationService" - value: {{ .Values.config.connectionStrings.administrationService }} - - name: "DOTNET_ENVIRONMENT" - value: "{{ .Values.config.dotnetEnv }}" - - name: "Redis__Configuration" - value: "{{ .Values.config.redisHost }}" - - name: "RabbitMQ__Connections__Default__HostName" - value: "{{ .Values.config.rabbitmqHost }}" - - name: "ElasticSearch__Url" - value: "{{ .Values.config.elasticsearchHost }}" - - name: "AuthServer__Authority" - value: "{{ .Values.config.authServer.authority }}" - - name: "AuthServer__RequireHttpsMetadata" - value: "{{ .Values.config.authServer.requireHttpsMetadata }}" - - name: "AuthServer__SwaggerClientId" - value: "{{ .Values.config.swaggerClientId }}" - - name: "AuthServer__SwaggerClientSecret" - value: "{{ .Values.config.swaggerClientSecret }}" - - name: "StringEncryption__DefaultPassPhrase" - value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" - - name: "RemoteServices__Catalog__BaseUrl" - value: "{{ .Values.config.remoteServices.catalogBaseUrl }}" - - name: "RemoteServices__Catalog__GrpcUrl" - value: "{{ .Values.config.remoteServices.catalogGrpcUrl }}" - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} - diff --git a/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml deleted file mode 100644 index 8749cf55..00000000 --- a/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-ingress.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" - cert-manager.io/cluster-issuer: letsencrypt -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: - - host: "{{ .Values.ingress.host }}" - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-service.yaml b/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-service.yaml deleted file mode 100644 index ee157c01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/basket/templates/basket-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "80" - port: 80 - - name: "443" - port: 443 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/basket/values.yaml b/etc/azure/k8s/eshoponabp/charts/basket/values.yaml deleted file mode 100644 index c69ad16a..00000000 --- a/etc/azure/k8s/eshoponabp/charts/basket/values.yaml +++ /dev/null @@ -1,30 +0,0 @@ -config: - selfUrl: # https://eshop-st-basket - corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web,https://eshop-st-public - connectionStrings: - administrationService: # - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: "WebGateway_Swagger" - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 - remoteServices: - catalogBaseUrl: # - catalogGrpcUrl: # - -ingress: - host: eshop-st-basket - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/service-basket - tag: latest - pullPolicy: IfNotPresent - -env: {} - \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/catalog/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/catalog/Chart.yaml deleted file mode 100644 index e8109a51..00000000 --- a/etc/azure/k8s/eshoponabp/charts/catalog/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: catalog -appVersion: "1.0" -description: eShopOnAbp Catalog Microservice -version: 1.0.0 -type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml deleted file mode 100644 index a057014e..00000000 --- a/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-deployment.yaml +++ /dev/null @@ -1,64 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: grpc - containerPort: 81 - protocol: TCP - env: - - name: "ASPNETCORE_URLS" - value: "http://+:80;http://+:81" - - name: "DOTNET_ENVIRONMENT" - value: "{{ .Values.config.dotnetEnv }}" - - name: App__SelfUrl - value: "{{ .Values.config.selfUrl }}" - - name: App__CorsOrigins - value: "{{ .Values.config.corsOrigins }}" - - name: "ConnectionStrings__CatalogService" - value: "{{ .Values.config.connectionStrings.catalogService }}" - - name: "ConnectionStrings__AdministrationService" - value: "{{ .Values.config.connectionStrings.administrationService }}" - - name: "Redis__Configuration" - value: "{{ .Values.config.redisHost }}" - - name: "RabbitMQ__Connections__Default__HostName" - value: "{{ .Values.config.rabbitmqHost }}" - - name: "ElasticSearch__Url" - value: "{{ .Values.config.elasticsearchHost }}" - - name: "AuthServer__Authority" - value: "{{ .Values.config.authServer.authority }}" - - name: "AuthServer__RequireHttpsMetadata" - value: "{{ .Values.config.authServer.requireHttpsMetadata }}" - - name: "AuthServer__SwaggerClientId" - value: "{{ .Values.config.authServer.swaggerClientId }}" - - name: "AuthServer__SwaggerClientSecret" - value: "{{ .Values.config.authServer.swaggerClientSecret }}" - - name: "StringEncryption__DefaultPassPhrase" - value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" - - name: "Kestrel__Endpoints__Http__Url" - value: "{{ .Values.config.kestrel.httpUrl }}" - - name: "Kestrel__Endpoints__Http__Protocols" - value: "{{ .Values.config.kestrel.httpProtocols }}" - - name: "Kestrel__Endpoints__gRPC__Url" - value: "{{ .Values.config.kestrel.grpcUrl }}" - - name: "Kestrel__Endpoints__gRPC__Protocols" - value: "{{ .Values.config.kestrel.grpcProtocols }}" - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} - diff --git a/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml deleted file mode 100644 index 8749cf55..00000000 --- a/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-ingress.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" - cert-manager.io/cluster-issuer: letsencrypt -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: - - host: "{{ .Values.ingress.host }}" - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml b/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml deleted file mode 100644 index 28306a83..00000000 --- a/etc/azure/k8s/eshoponabp/charts/catalog/templates/catalog-service.yaml +++ /dev/null @@ -1,16 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "http" - port: 80 - - name: grpc - targetPort: grpc - protocol: TCP - port: {{ .Values.config.grpcPort }} - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/catalog/values.yaml b/etc/azure/k8s/eshoponabp/charts/catalog/values.yaml deleted file mode 100644 index 8e65d499..00000000 --- a/etc/azure/k8s/eshoponabp/charts/catalog/values.yaml +++ /dev/null @@ -1,36 +0,0 @@ -config: - selfUrl: # https://eshop-st-catalog - corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web,https://eshop-st-public,https://eshop-st-web - connectionStrings: - catalogService: # - administrationService: # - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 - grpcPort: 81 - kestrel: - httpUrl: http://eshop-st-catalog:80 - httpProtocols: Http1AndHttp2 - grpcUrl: http://eshop-st-catalog:81 - grpcProtocols: Http2 - -ingress: - host: eshop-st-catalog - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/service-catalog - tag: latest - pullPolicy: IfNotPresent - -env: { - # ASPNETCORE_URLS=http://+:80;http://+:81 -} - \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/Chart.yaml deleted file mode 100644 index 50b051d8..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: gateway-web-public -appVersion: "1.0" -description: eShopOnAbp Web Public Gateway Application -version: 1.0.0 -type: application diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-configmap.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-configmap.yaml deleted file mode 100644 index d0548b41..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-configmap.yaml +++ /dev/null @@ -1,106 +0,0 @@ -apiVersion: v1 -kind: ConfigMap -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap -data: - yarp.json: |- - { - "ReverseProxy": { - "Routes": { - "Account Service": { - "ClusterId": "account-cluster", - "Match": { - "Path": "/api/account/{**everything}" - } - }, - "Administration Service": { - "ClusterId": "administration-cluster", - "Match": { - "Path": "/api/abp/{**everything}" - } - }, - "Catalog Service": { - "ClusterId": "catalog-cluster", - "Match": { - "Path": "/api/catalog/{**everything}" - } - }, - "Basket Service": { - "ClusterId": "basket-cluster", - "Match": { - "Path": "/api/basket/{**everything}" - } - }, - "Ordering Service": { - "ClusterId": "ordering-cluster", - "Match": { - "Path": "/api/ordering/{**everything}" - } - }, - "Payment Service": { - "ClusterId": "payment-cluster", - "Match": { - "Path": "/api/payment/{**everything}" - } - }, - "product-picture-route": { - "ClusterId": "product-picture-cluster", - "Match": { - "Path": "/product-images/{**everything}", - "Methods" : [ "GET" ] - } - } - }, - "Clusters": { - "account-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.accountService.url }}" - } - } - }, - "administration-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.administrationService.url }}" - } - } - }, - "catalog-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.catalogService.url }}" - } - } - }, - "product-picture-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.catalogService.url }}" - } - } - }, - "basket-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.basketService.url }}" - } - } - }, - "ordering-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.orderingService.url }}" - } - } - }, - "payment-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.paymentService.url }}" - } - } - } - } - } - } \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-deployment.yaml deleted file mode 100644 index 5e25b31e..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-deployment.yaml +++ /dev/null @@ -1,52 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - volumeMounts: - - name: config-volume - mountPath: /app/yarp.json - subPath: yarp.json - env: - - name: App__SelfUrl - value: "{{ .Values.config.selfUrl }}" - - name: "DOTNET_ENVIRONMENT" - value: "{{ .Values.config.dotnetEnv }}" - - name: "Redis__Configuration" - value: "{{ .Values.config.redisHost }}" - - name: "RabbitMQ__Connections__Default__HostName" - value: "{{ .Values.config.rabbitmqHost }}" - - name: "AuthServer__Authority" - value: "{{ .Values.config.authServer.authority }}" - - name: "AuthServer__RequireHttpsMetadata" - value: "{{ .Values.config.authServer.requireHttpsMetadata }}" - - name: "AuthServer__SwaggerClientId" - value: "{{ .Values.config.authServer.swaggerClientId }}" - - name: "AuthServer__SwaggerClientSecret" - value: "{{ .Values.config.authServer.swaggerClientSecret }}" - - name: "ElasticSearch__Url" - value: "{{ .Values.config.elasticsearchHost }}" - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} - volumes: - - name: config-volume - configMap: - name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml deleted file mode 100644 index 8749cf55..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-ingress.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" - cert-manager.io/cluster-issuer: letsencrypt -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: - - host: "{{ .Values.ingress.host }}" - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-service.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-service.yaml deleted file mode 100644 index ee157c01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/templates/gateway-web-public-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "80" - port: 80 - - name: "443" - port: 443 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/values.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web-public/values.yaml deleted file mode 100644 index e8b2cdfd..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web-public/values.yaml +++ /dev/null @@ -1,38 +0,0 @@ -config: - selfUrl: https://gateway-public.eshoponabp.com - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - -reRoutes: - accountService: - url: https://auth.eshoponabp.com - identityService: - url: https://identity.eshoponabp.com - administrationService: - url: https://administration.eshoponabp.com - catalogService: - url: https://catalog.eshoponabp.com - basketService: - url: https://basket.eshoponabp.com - orderingService: - url: https://order.eshoponabp.com - paymentService: - url: https://payment.eshoponabp.com - -ingress: - host: eshop-st-gateway-web-public - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/gateway-web-public - tag: latest - pullPolicy: IfNotPresent - -env: {} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/Chart.yaml deleted file mode 100644 index d251efb7..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: gateway-web -appVersion: "1.0" -description: eShopOnAbp Web Gateway Application -version: 1.0.0 -type: application diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml deleted file mode 100644 index 5d905823..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml +++ /dev/null @@ -1,92 +0,0 @@ -apiVersion: v1 -kind: ConfigMap -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap -data: - yarp.json: |- - { - "ReverseProxy": { - "Routes": { - "Account Service": { - "ClusterId": "account-cluster", - "Match": { - "Path": "/api/account/{**everything}" - } - }, - "Identity Service": { - "ClusterId": "identity-cluster", - "Match": { - "Path": "/api/identity/{**everything}" - } - }, - "Administration Service": { - "ClusterId": "administration-cluster", - "Match": { - "Path": "/api/abp/{**everything}" - } - }, - "feature-management-route": { - "ClusterId": "feature-management-cluster", - "Match": { - "Path": "/api/feature-management/{**everything}" - } - }, - "permission-management-route": { - "ClusterId": "permission-management-cluster", - "Match": { - "Path": "/api/permission-management/{**everything}" - } - }, - "setting-management-route": { - "ClusterId": "setting-management-cluster", - "Match": { - "Path": "/api/setting-management/{**everything}" - } - } - }, - "Clusters": { - "account-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.accountService.url }}" - } - } - }, - "identity-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.identityService.url }}" - } - } - }, - "administration-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.administrationService.url }}" - } - } - }, - "feature-management-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.administrationService.url }}" - } - } - }, - "permission-management-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.administrationService.url }}" - } - } - }, - "setting-management-cluster": { - "Destinations": { - "destination1": { - "Address": "{{ .Values.reRoutes.administrationService.url }}" - } - } - } - } - } - } \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-deployment.yaml deleted file mode 100644 index 81fb46d7..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-deployment.yaml +++ /dev/null @@ -1,58 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - volumeMounts: - - name: config-volume - mountPath: /app/yarp.json - subPath: yarp.json - env: - - name: App__SelfUrl - value: "{{ .Values.config.selfUrl }}" - - name: App__CorsOrigins - value: "{{ .Values.config.corsOrigins }}" - - name: GlobalConfiguration__BaseUrl - value: "{{ .Values.config.globalConfigurationBaseUrl }}" - - name: "DOTNET_ENVIRONMENT" - value: "{{ .Values.config.dotnetEnv }}" - - name: "Redis__Configuration" - value: "{{ .Values.config.redisHost }}" - - name: "RabbitMQ__Connections__Default__HostName" - value: "{{ .Values.config.rabbitmqHost }}" - - name: "AuthServer__Authority" - value: "{{ .Values.config.authServer.authority }}" - - name: "AuthServer__RequireHttpsMetadata" - value: "{{ .Values.config.authServer.requireHttpsMetadata }}" - - name: "AuthServer__SwaggerClientId" - value: "{{ .Values.config.authServer.swaggerClientId }}" - - name: "AuthServer__SwaggerClientSecret" - value: "{{ .Values.config.authServer.swaggerClientSecret }}" - - name: "ElasticSearch__Url" - value: "{{ .Values.config.elasticsearchHost }}" - - name: "StringEncryption__DefaultPassPhrase" - value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} - volumes: - - name: config-volume - configMap: - name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml deleted file mode 100644 index 8749cf55..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-ingress.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" - cert-manager.io/cluster-issuer: letsencrypt -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: - - host: "{{ .Values.ingress.host }}" - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-service.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-service.yaml deleted file mode 100644 index ee157c01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "80" - port: 80 - - name: "443" - port: 443 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/gateway-web/values.yaml b/etc/azure/k8s/eshoponabp/charts/gateway-web/values.yaml deleted file mode 100644 index 1f25d71a..00000000 --- a/etc/azure/k8s/eshoponabp/charts/gateway-web/values.yaml +++ /dev/null @@ -1,31 +0,0 @@ -config: - selfUrl: # https://eshop-st-gateway-web - corsOrigins: # localhost:4200 - globalConfigurationBaseUrl: # http://eshop-st-gateway-web - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: # - redisHost: # - rabbitmqHost: # - elasticsearchHost: # - stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 -reRoutes: - accountService: - url: http://eshop-st-authserver - identityService: - url: http://eshop-st-identity - administrationService: - url: http://eshop-st-administration -ingress: - host: # eshop-st-gateway-web - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/gateway-web - tag: latest - pullPolicy: IfNotPresent - -env: {} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/identity/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/identity/Chart.yaml deleted file mode 100644 index 967a2ca0..00000000 --- a/etc/azure/k8s/eshoponabp/charts/identity/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: identity -appVersion: "1.0" -description: eShopOnAbp Identity Microservice -version: 1.0.0 -type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-deployment.yaml deleted file mode 100644 index 00509ce0..00000000 --- a/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-deployment.yaml +++ /dev/null @@ -1,75 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - env: - - name: App__SelfUrl - value: "{{ .Values.config.selfUrl }}" - - name: App__CorsOrigins - value: "{{ .Values.config.corsOrigins }}" - - name: "ConnectionStrings__IdentityService" - value: {{ .Values.config.connectionStrings.identityService }} - - name: "ConnectionStrings__AdministrationService" - value: {{ .Values.config.connectionStrings.administrationService }} - - name: "DOTNET_ENVIRONMENT" - value: "{{ .Values.config.dotnetEnv }}" - - name: "Redis__Configuration" - value: "{{ .Values.config.redisHost }}" - - name: "RabbitMQ__Connections__Default__HostName" - value: "{{ .Values.config.rabbitmqHost }}" - - name: "ElasticSearch__Url" - value: "{{ .Values.config.elasticsearchHost }}" - - name: "AuthServer__Authority" - value: "{{ .Values.config.authServer.authority }}" - - name: "AuthServer__RequireHttpsMetadata" - value: "{{ .Values.config.authServer.requireHttpsMetadata }}" - - name: "AuthServer__SwaggerClientId" - value: "{{ .Values.config.authServer.swaggerClientId }}" - - name: "AuthServer__SwaggerClientSecret" - value: "{{ .Values.config.authServer.swaggerClientSecret }}" - - name: "StringEncryption__DefaultPassPhrase" - value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" - - name: "IdentityServerClients__Web__RootUrl" - value: {{ .Values.identityServerClients.webRootUrl }} - - name: "IdentityServerClients__PublicWeb__RootUrl" - value: {{ .Values.identityServerClients.publicWebRootUrl }} - - name: "IdentityServerClients__PublicWebGateway__RootUrl" - value: {{ .Values.identityServerClients.publicWebGatewayRootUrl }} - - name: "IdentityServerClients__WebGateway__RootUrl" - value: {{ .Values.identityServerClients.webGatewayRootUrl }} - - name: "IdentityServerClients__IdentityService__RootUrl" - value: {{ .Values.identityServerClients.identityServiceRootUrl }} - - name: "IdentityServerClients__AdministrationService__RootUrl" - value: {{ .Values.identityServerClients.administrationServiceRootUrl }} - - name: "IdentityServerClients__AccountService__RootUrl" - value: {{ .Values.identityServerClients.accountServiceRootUrl }} - - name: "IdentityServerClients__BasketService__RootUrl" - value: {{ .Values.identityServerClients.basketServiceRootUrl }} - - name: "IdentityServerClients__CatalogService__RootUrl" - value: {{ .Values.identityServerClients.catalogServiceRootUrl }} - - name: "IdentityServerClients__OrderingService__RootUrl" - value: {{ .Values.identityServerClients.orderingServiceRootUrl }} - - name: "IdentityServerClients__PaymentService__RootUrl" - value: {{ .Values.identityServerClients.paymentServiceRootUrl }} - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} - diff --git a/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml deleted file mode 100644 index 8749cf55..00000000 --- a/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-ingress.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" - cert-manager.io/cluster-issuer: letsencrypt -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: - - host: "{{ .Values.ingress.host }}" - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-service.yaml b/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-service.yaml deleted file mode 100644 index ee157c01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/identity/templates/identity-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "80" - port: 80 - - name: "443" - port: 443 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/identity/values.yaml b/etc/azure/k8s/eshoponabp/charts/identity/values.yaml deleted file mode 100644 index 34324d0b..00000000 --- a/etc/azure/k8s/eshoponabp/charts/identity/values.yaml +++ /dev/null @@ -1,43 +0,0 @@ -config: - selfUrl: # https://eshop-st-identity - corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web,https://eshop-st-gateway-internal - connectionStrings: - identityService: # - administrationService: # - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 - -# Seeded clients -identityServerClients: - webRootUrl: # - publicWebRootUrl: # - webGatewayRootUrl: # - publicWebGatewayRootUrl: # - accountServiceRootUrl: # - identityServiceRootUrl: # - administrationServiceRootUrl: # - basketServiceRootUrl: # - catalogServiceRootUrl: # - orderingServiceRootUrl: # - paymentServiceRootUrl: # - - -ingress: - host: eshop-st-identity - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/service-identity - tag: latest - pullPolicy: IfNotPresent - -env: {} - \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/mongodb/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/mongodb/Chart.yaml deleted file mode 100644 index d8a45394..00000000 --- a/etc/azure/k8s/eshoponabp/charts/mongodb/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: mongodb -appVersion: "1.0" -description: Runs Mongo DB Instance -version: 1.0.0 -type: application diff --git a/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml deleted file mode 100644 index 31e2613e..00000000 --- a/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-deployment.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: apps/v1 -kind: StatefulSet -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - serviceName: {{ .Release.Name }}-{{ .Chart.Name }} - replicas: 1 - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: mongo - name: {{ .Release.Name }}-{{ .Chart.Name }} -{{- if eq .Release.Name "eshop-az" }} - volumeMounts: - - mountPath: "/data/db" - name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume - subPath: mongodb-data -{{- end }} - ports: - - name: mongo - containerPort: 27017 -{{- if eq .Release.Name "eshop-az" }} - volumeClaimTemplates: - - metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume - spec: - accessModes: [ "ReadWriteOnce" ] - storageClassName: "managed-premium-retain" - resources: - requests: - storage: 32Gi -{{- end }} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-service.yaml b/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-service.yaml deleted file mode 100644 index 74fc1015..00000000 --- a/etc/azure/k8s/eshoponabp/charts/mongodb/templates/mongodb-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - type: ClusterIP - ports: - - name: mongodb - port: 27017 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} - diff --git a/etc/azure/k8s/eshoponabp/charts/mongodb/values.yaml b/etc/azure/k8s/eshoponabp/charts/mongodb/values.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/etc/azure/k8s/eshoponabp/charts/ordering/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/ordering/Chart.yaml deleted file mode 100644 index 08460269..00000000 --- a/etc/azure/k8s/eshoponabp/charts/ordering/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: ordering -appVersion: "1.0" -description: eShopOnAbp Ordering Microservice -version: 1.0.0 -type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-deployment.yaml deleted file mode 100644 index 78bcb82e..00000000 --- a/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-deployment.yaml +++ /dev/null @@ -1,53 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - env: - - name: App__SelfUrl - value: "{{ .Values.config.selfUrl }}" - - name: App__CorsOrigins - value: "{{ .Values.config.corsOrigins }}" - - name: "ConnectionStrings__OrderingService" - value: {{ .Values.config.connectionStrings.orderingService }} - - name: "ConnectionStrings__AdministrationService" - value: {{ .Values.config.connectionStrings.administrationService }} - - name: "DOTNET_ENVIRONMENT" - value: "{{ .Values.config.dotnetEnv }}" - - name: "Redis__Configuration" - value: "{{ .Values.config.redisHost }}" - - name: "RabbitMQ__Connections__Default__HostName" - value: "{{ .Values.config.rabbitmqHost }}" - - name: "ElasticSearch__Url" - value: "{{ .Values.config.elasticsearchHost }}" - - name: "AuthServer__Authority" - value: "{{ .Values.config.authServer.authority }}" - - name: "AuthServer__RequireHttpsMetadata" - value: "{{ .Values.config.authServer.requireHttpsMetadata }}" - - name: "AuthServer__SwaggerClientId" - value: "{{ .Values.config.authServer.swaggerClientId }}" - - name: "AuthServer__SwaggerClientSecret" - value: "{{ .Values.config.authServer.swaggerClientSecret }}" - - name: "StringEncryption__DefaultPassPhrase" - value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} - diff --git a/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml deleted file mode 100644 index 8749cf55..00000000 --- a/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-ingress.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" - cert-manager.io/cluster-issuer: letsencrypt -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: - - host: "{{ .Values.ingress.host }}" - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-service.yaml b/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-service.yaml deleted file mode 100644 index ee157c01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/ordering/templates/ordering-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "80" - port: 80 - - name: "443" - port: 443 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/ordering/values.yaml b/etc/azure/k8s/eshoponabp/charts/ordering/values.yaml deleted file mode 100644 index c9f8a55b..00000000 --- a/etc/azure/k8s/eshoponabp/charts/ordering/values.yaml +++ /dev/null @@ -1,28 +0,0 @@ -config: - selfUrl: # https://eshop-st-ordering - corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web - connectionStrings: - orderingService: # - administrationService: # - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 - -ingress: - host: eshop-st-ordering - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/service-ordering - tag: latest - pullPolicy: IfNotPresent - -env: {} - \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/payment/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/payment/Chart.yaml deleted file mode 100644 index 1cb23f7c..00000000 --- a/etc/azure/k8s/eshoponabp/charts/payment/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: payment -appVersion: "1.0" -description: eShopOnAbp Payment Microservice -version: 1.0.0 -type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-deployment.yaml deleted file mode 100644 index c3526b1b..00000000 --- a/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-deployment.yaml +++ /dev/null @@ -1,53 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - env: - - name: App__SelfUrl - value: "{{ .Values.config.selfUrl }}" - - name: App__CorsOrigins - value: "{{ .Values.config.corsOrigins }}" - - name: "ConnectionStrings__PaymentService" - value: {{ .Values.config.connectionStrings.paymentService }} - - name: "ConnectionStrings__AdministrationService" - value: {{ .Values.config.connectionStrings.administrationService }} - - name: "DOTNET_ENVIRONMENT" - value: "{{ .Values.config.dotnetEnv }}" - - name: "Redis__Configuration" - value: "{{ .Values.config.redisHost }}" - - name: "RabbitMQ__Connections__Default__HostName" - value: "{{ .Values.config.rabbitmqHost }}" - - name: "ElasticSearch__Url" - value: "{{ .Values.config.elasticsearchHost }}" - - name: "AuthServer__Authority" - value: "{{ .Values.config.authServer.authority }}" - - name: "AuthServer__RequireHttpsMetadata" - value: "{{ .Values.config.authServer.requireHttpsMetadata }}" - - name: "AuthServer__SwaggerClientId" - value: "{{ .Values.config.authServer.swaggerClientId }}" - - name: "AuthServer__SwaggerClientSecret" - value: "{{ .Values.config.authServer.swaggerClientSecret }}" - - name: "StringEncryption__DefaultPassPhrase" - value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} - diff --git a/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml deleted file mode 100644 index 8749cf55..00000000 --- a/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-ingress.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" - cert-manager.io/cluster-issuer: letsencrypt -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: - - host: "{{ .Values.ingress.host }}" - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-service.yaml b/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-service.yaml deleted file mode 100644 index ee157c01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/payment/templates/payment-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "80" - port: 80 - - name: "443" - port: 443 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/payment/values.yaml b/etc/azure/k8s/eshoponabp/charts/payment/values.yaml deleted file mode 100644 index 37ffd9cb..00000000 --- a/etc/azure/k8s/eshoponabp/charts/payment/values.yaml +++ /dev/null @@ -1,28 +0,0 @@ -config: - selfUrl: # https://eshop-st-payment - corsOrigins: # https://eshop-st-gateway-web,https://eshop-st-gateway-public-web - connectionStrings: - paymentService: # - administrationService: # - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 - -ingress: - host: eshop-st-payment - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/service-payment - tag: latest - pullPolicy: IfNotPresent - -env: {} - \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/postgres/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/postgres/Chart.yaml deleted file mode 100644 index eaddf3fb..00000000 --- a/etc/azure/k8s/eshoponabp/charts/postgres/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: postgresdb -appVersion: "1.0" -description: Runs Postgres DB Instance -version: 1.0.0 -type: application diff --git a/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml deleted file mode 100644 index 50750abf..00000000 --- a/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-deployment.yaml +++ /dev/null @@ -1,41 +0,0 @@ -apiVersion: apps/v1 -kind: StatefulSet -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - serviceName: {{ .Release.Name }}-{{ .Chart.Name }} - replicas: 1 - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: postgres - name: {{ .Release.Name }}-{{ .Chart.Name }} -{{- if eq .Release.Name "eshop-az" }} - volumeMounts: - - mountPath: "/var/opt/postgres" - name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume - subPath: postgres-data -{{- end }} - ports: - - name: postgres - containerPort: 5432 - env: - - name: POSTGRES_PASSWORD - value: "myPassw0rd" -{{- if eq .Release.Name "eshop-az" }} - volumeClaimTemplates: - - metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-database-volume - spec: - accessModes: [ "ReadWriteOnce" ] - storageClassName: "managed-premium-retain" - resources: - requests: - storage: 32Gi -{{- end }} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-service.yaml b/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-service.yaml deleted file mode 100644 index f17e1ba3..00000000 --- a/etc/azure/k8s/eshoponabp/charts/postgres/templates/postgres-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - type: ClusterIP - ports: - - name: postgres - port: 5432 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} - diff --git a/etc/azure/k8s/eshoponabp/charts/postgres/values.yaml b/etc/azure/k8s/eshoponabp/charts/postgres/values.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/Chart.yaml deleted file mode 100644 index b4dfae47..00000000 --- a/etc/azure/k8s/eshoponabp/charts/public-web/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: public-web -appVersion: "1.0" -description: eShopOnAbp Public Web Application -version: 1.0.0 -type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml deleted file mode 100644 index 3519d65c..00000000 --- a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-deployment.yaml +++ /dev/null @@ -1,44 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - env: - - name: App__SelfUrl - value: "{{ .Values.config.selfUrl }}" - - name: RemoteServices__Default__BaseUrl - value: "{{ .Values.config.gatewayUrl }}" - - name: "AuthServer__Authority" - value: "{{ .Values.config.authServer.authority }}" - - name: "AuthServer__RequireHttpsMetadata" - value: "{{ .Values.config.authServer.requireHttpsMetadata }}" - - name: "DOTNET_ENVIRONMENT" - value: "{{ .Values.config.dotnetEnv }}" - - name: "Redis__Configuration" - value: "{{ .Values.config.redisHost }}" - - name: "StringEncryption__DefaultPassPhrase" - value: "{{ .Values.config.stringEncryptionDefaultPassPhrase }}" - - name: "RabbitMQ__Connections__Default__HostName" - value: "{{ .Values.config.rabbitmqHost }}" - - name: "ElasticSearch__Url" - value: "{{ .Values.config.elasticsearchHost }}" - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml deleted file mode 100644 index 31cccb0c..00000000 --- a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-ingress.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" -{{- if eq .Release.Name "eshop-az" }} - nginx.ingress.kubernetes.io/from-to-www-redirect: "true" -{{- end }} - cert-manager.io/cluster-issuer: letsencrypt -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} -{{- if eq .Release.Name "eshop-az" }} - - {{ print "www." .Values.ingress.host }} -{{- end }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: -{{- if eq .Release.Name "eshop-az" }} - - host: "{{ print "www." .Values.ingress.host }}" -{{- else }} - - host: "{{ .Values.ingress.host }}" -{{- end }} - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-service.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-service.yaml deleted file mode 100644 index ee157c01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/public-web/templates/public-web-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "80" - port: 80 - - name: "443" - port: 443 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/public-web/values.yaml b/etc/azure/k8s/eshoponabp/charts/public-web/values.yaml deleted file mode 100644 index 660c55c7..00000000 --- a/etc/azure/k8s/eshoponabp/charts/public-web/values.yaml +++ /dev/null @@ -1,22 +0,0 @@ -config: - selfUrl: https://www.eshoponabp.com - gatewayUrl: "https://gateway.eshoponabp.com/" - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - stringEncryptionDefaultPassPhrase: gsKnGZ041HLL4IM8 - -ingress: - host: eshop-st-public-web - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/app-publicweb - tag: latest - pullPolicy: IfNotPresent - -env: {} diff --git a/etc/azure/k8s/eshoponabp/charts/rabbitmq/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/rabbitmq/Chart.yaml deleted file mode 100644 index 50b9af01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/rabbitmq/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: rabbitmq -appVersion: "1.0" -description: Runs RabbitMQ Message Broker Instance -version: 1.0.0 -type: application diff --git a/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq-service.yaml b/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq-service.yaml deleted file mode 100644 index 5e08c975..00000000 --- a/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq-service.yaml +++ /dev/null @@ -1,20 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - type: ClusterIP - ports: - - name: http - protocol: TCP - port: 15672 - targetPort: 15672 - - name: amqp - protocol: TCP - port: 5672 - targetPort: 5672 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} - diff --git a/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq.yaml b/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq.yaml deleted file mode 100644 index 7bf082c7..00000000 --- a/etc/azure/k8s/eshoponabp/charts/rabbitmq/templates/rabbitmq.yaml +++ /dev/null @@ -1,25 +0,0 @@ -apiVersion: apps/v1 -kind: StatefulSet -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - serviceName: {{ .Release.Name }}-{{ .Chart.Name }} - replicas: 1 - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: rabbitmq:management-alpine - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - protocol: TCP - containerPort: 15672 - - name: amqp - protocol: TCP - containerPort: 5672 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/rabbitmq/values.yaml b/etc/azure/k8s/eshoponabp/charts/rabbitmq/values.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/etc/azure/k8s/eshoponabp/charts/redis/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/redis/Chart.yaml deleted file mode 100644 index 11ec26ce..00000000 --- a/etc/azure/k8s/eshoponabp/charts/redis/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: redis -appVersion: "1.0" -description: Runs Redis instance -version: 1.0.0 -type: application diff --git a/etc/azure/k8s/eshoponabp/charts/redis/templates/redis-service.yaml b/etc/azure/k8s/eshoponabp/charts/redis/templates/redis-service.yaml deleted file mode 100644 index 23800f96..00000000 --- a/etc/azure/k8s/eshoponabp/charts/redis/templates/redis-service.yaml +++ /dev/null @@ -1,13 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - type: ClusterIP - ports: - - name: redis - port: 6379 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/redis/templates/redis.yaml b/etc/azure/k8s/eshoponabp/charts/redis/templates/redis.yaml deleted file mode 100644 index 102dfb59..00000000 --- a/etc/azure/k8s/eshoponabp/charts/redis/templates/redis.yaml +++ /dev/null @@ -1,20 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - replicas: 1 - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: redis:alpine - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: redis - containerPort: 6379 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/redis/values.yaml b/etc/azure/k8s/eshoponabp/charts/redis/values.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/etc/azure/k8s/eshoponabp/charts/web/Chart.yaml b/etc/azure/k8s/eshoponabp/charts/web/Chart.yaml deleted file mode 100644 index 3a66440f..00000000 --- a/etc/azure/k8s/eshoponabp/charts/web/Chart.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v2 -name: web -appVersion: "1.0" -description: eShopOnAbp BackOffice Web Application -version: 1.0.0 -type: application \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/web/templates/web-configmap.yaml b/etc/azure/k8s/eshoponabp/charts/web/templates/web-configmap.yaml deleted file mode 100644 index aa36193a..00000000 --- a/etc/azure/k8s/eshoponabp/charts/web/templates/web-configmap.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: v1 -kind: ConfigMap -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap -data: - dynamic-env.json: |- - { - "production": "true", - "application": { - "baseUrl": "{{ .Values.config.selfUrl }}", - "name": "EShopOnAbp", - "logoUrl": "" - }, - "oAuthConfig": { - "issuer": "{{ .Values.config.authServer.authority }}", - "redirectUri": "{{ .Values.config.selfUrl }}", - "requireHttps": "{{ .Values.config.authServer.requireHttpsMetadata }}", - "clientId": "Web", - "responseType": "code", - "scope": "offline_access openid profile email phone IdentityService AdministrationService" - }, - "apis": { - "default": { - "url": "{{ .Values.config.gatewayUrl }}", - "rootNamespace": "EShopOnAbp" - } - } - } \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/web/templates/web-deployment.yaml b/etc/azure/k8s/eshoponabp/charts/web/templates/web-deployment.yaml deleted file mode 100644 index cb7edabe..00000000 --- a/etc/azure/k8s/eshoponabp/charts/web/templates/web-deployment.yaml +++ /dev/null @@ -1,34 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - selector: - matchLabels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - template: - metadata: - labels: - app: {{ .Release.Name }}-{{ .Chart.Name }} - spec: - containers: - - image: {{ .Values.image.repository }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ .Release.Name }}-{{ .Chart.Name }} - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - volumeMounts: - - name: config-volume - mountPath: /app/dynamic-env.json - subPath: dynamic-env.json - env: - {{- if .Values.env }} -{{ toYaml .Values.env | indent 8 }} - {{- end }} - volumes: - - name: config-volume - configMap: - name: {{ .Release.Name }}-{{ .Chart.Name }}-configmap \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml b/etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml deleted file mode 100644 index 31cccb0c..00000000 --- a/etc/azure/k8s/eshoponabp/charts/web/templates/web-ingress.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ .Release.Name }}-{{ .Chart.Name }}-ingress - annotations: - #kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: / - nginx.ingress.kubernetes.io/force-ssl-redirect: "true" - nginx.ingress.kubernetes.io/proxy-buffer-size: 32k - nginx.ingress.kubernetes.io/proxy-buffers-number: "8" -{{- if eq .Release.Name "eshop-az" }} - nginx.ingress.kubernetes.io/from-to-www-redirect: "true" -{{- end }} - cert-manager.io/cluster-issuer: letsencrypt -spec: - #ingressClassName: nginx - tls: - - hosts: - - {{ .Values.ingress.host }} -{{- if eq .Release.Name "eshop-az" }} - - {{ print "www." .Values.ingress.host }} -{{- end }} - secretName: {{ .Release.Name }}-{{ .Chart.Name }}-tls - rules: -{{- if eq .Release.Name "eshop-az" }} - - host: "{{ print "www." .Values.ingress.host }}" -{{- else }} - - host: "{{ .Values.ingress.host }}" -{{- end }} - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ .Release.Name }}-{{ .Chart.Name }} - port: - number: 80 \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/charts/web/templates/web-service.yaml b/etc/azure/k8s/eshoponabp/charts/web/templates/web-service.yaml deleted file mode 100644 index ee157c01..00000000 --- a/etc/azure/k8s/eshoponabp/charts/web/templates/web-service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - name: {{ .Release.Name }}-{{ .Chart.Name }} - name: {{ .Release.Name }}-{{ .Chart.Name }} -spec: - ports: - - name: "80" - port: 80 - - name: "443" - port: 443 - selector: - app: {{ .Release.Name }}-{{ .Chart.Name }} diff --git a/etc/azure/k8s/eshoponabp/charts/web/values.yaml b/etc/azure/k8s/eshoponabp/charts/web/values.yaml deleted file mode 100644 index 4a3f419d..00000000 --- a/etc/azure/k8s/eshoponabp/charts/web/values.yaml +++ /dev/null @@ -1,18 +0,0 @@ -config: - selfUrl: https://www.eshoponabp.com - gatewayUrl: "https://gateway.eshoponabp.com/" - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - -ingress: - host: eshop-st-web - tlsSecret: eshop-wildcard-tls - -image: - repository: eshoponabp/app-web - tag: latest - pullPolicy: IfNotPresent - -# Extra environment variables or configurations -env: {} diff --git a/etc/azure/k8s/eshoponabp/templates/NOTES.txt b/etc/azure/k8s/eshoponabp/templates/NOTES.txt deleted file mode 100644 index 044f1a72..00000000 --- a/etc/azure/k8s/eshoponabp/templates/NOTES.txt +++ /dev/null @@ -1,27 +0,0 @@ -1. Web (Back Office) angular application URL:{{- if .Values.web.config.selfUrl }} {{ .Values.web.config.selfUrl }} {{- end }} -2. Public Web mvc application URL:{{- if index .Values "public-web" "config" "selfUrl" }} {{ index .Values "public-web" "config" "selfUrl" }} {{- end }} -3. Authentication Server URL:{{- if .Values.authserver.config.selfUrl }} {{ .Values.authserver.config.selfUrl }} - -For RabbitMq Administration use: -"kubectl port-forward services/{{ .Release.Name }}-rabbitmq 15672:15672 -n {{ .Release.Namespace }}" -{{- else if .Values.ingress.enabled }} -{{- range $host := .Values.ingress.hosts }} - {{- range .paths }} - http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ .path }} - {{- end }} -{{- end }} -{{- else if contains "NodePort" .Values.service.type }} - export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "eshoponabp.fullname" . }}) - export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") - echo http://$NODE_IP:$NODE_PORT -{{- else if contains "LoadBalancer" .Values.service.type }} - NOTE: It may take a few minutes for the LoadBalancer IP to be available. - You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "eshoponabp.fullname" . }}' - export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "eshoponabp.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") - echo http://$SERVICE_IP:{{ .Values.service.port }} -{{- else if contains "ClusterIP" .Values.service.type }} - export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "eshoponabp.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") - export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") - echo "Visit http://127.0.0.1:8080 to use your application" - kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:$CONTAINER_PORT -{{- end }} diff --git a/etc/azure/k8s/eshoponabp/templates/_helpers.tpl b/etc/azure/k8s/eshoponabp/templates/_helpers.tpl deleted file mode 100644 index 901e5bb0..00000000 --- a/etc/azure/k8s/eshoponabp/templates/_helpers.tpl +++ /dev/null @@ -1,62 +0,0 @@ -{{/* -Expand the name of the chart. -*/}} -{{- define "eshoponabp.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} -{{- end }} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "eshoponabp.fullname" -}} -{{- if .Values.fullnameOverride }} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} -{{- else }} -{{- $name := default .Chart.Name .Values.nameOverride }} -{{- if contains $name .Release.Name }} -{{- .Release.Name | trunc 63 | trimSuffix "-" }} -{{- else }} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} -{{- end }} -{{- end }} -{{- end }} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "eshoponabp.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} -{{- end }} - -{{/* -Common labels -*/}} -{{- define "eshoponabp.labels" -}} -helm.sh/chart: {{ include "eshoponabp.chart" . }} -{{ include "eshoponabp.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end }} - -{{/* -Selector labels -*/}} -{{- define "eshoponabp.selectorLabels" -}} -app.kubernetes.io/name: {{ include "eshoponabp.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end }} - -{{/* -Create the name of the service account to use -*/}} -{{- define "eshoponabp.serviceAccountName" -}} -{{- if .Values.serviceAccount.create }} -{{- default (include "eshoponabp.fullname" .) .Values.serviceAccount.name }} -{{- else }} -{{- default "default" .Values.serviceAccount.name }} -{{- end }} -{{- end }} diff --git a/etc/azure/k8s/eshoponabp/values.azure.yaml b/etc/azure/k8s/eshoponabp/values.azure.yaml deleted file mode 100644 index 184a6726..00000000 --- a/etc/azure/k8s/eshoponabp/values.azure.yaml +++ /dev/null @@ -1,354 +0,0 @@ -# auth-server sub-chart override -authserver: - config: - selfUrl: https://auth.eshoponabp.com - corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com,https://identity.eshoponabp.com,https://administration.eshoponabp.com,https://basket.eshoponabp.com,https://catalog.eshoponabp.com,https://payment.eshoponabp.com,https://payment.eshoponabp.com - allowedRedirectUrls: https://www.eshoponabp.com - connectionStrings: - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - identityService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" - dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch - ingress: - host: auth.eshoponabp.com - tlsSecret: eshop-wildcard-tls - image: - repository: "volocr.azurecr.io/eshoponabp/app-authserver" - tag: latest - -# web sub-chart override -web: - config: - selfUrl: https://www.admin.eshoponabp.com - gatewayUrl: https://gateway.eshoponabp.com - ingress: - host: admin.eshoponabp.com - image: - repository: "volocr.azurecr.io/eshoponabp/app-web" - tag: latest - -# public-web sub-chart override -public-web: - config: - selfUrl: https://www.eshoponabp.com - gatewayUrl: https://gateway-public.eshoponabp.com - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch - ingress: - host: eshoponabp.com - image: - repository: "volocr.azurecr.io/eshoponabp/app-publicweb" - tag: latest - -# identity-service sub-chart override -identity: - config: - selfUrl: https://identity.eshoponabp.com - corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com - connectionStrings: - identityService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch - identityServerClients: # Seeded Clients - webRootUrl: https://www.eshoponabp.com/ - publicWebRootUrl: https://publicweb.eshoponabp.com/ - webGatewayRootUrl: https://gateway.eshoponabp.com/ - publicWebGatewayRootUrl: https://gateway-public.eshoponabp.com/ - identityServiceRootUrl: https://identity.eshoponabp.com/ - administrationServiceRootUrl: https://administration.eshoponabp.com/ - accountServiceRootUrl: https://auth.eshoponabp.com - basketServiceRootUrl: https://basket.eshoponabp.com/ - catalogServiceRootUrl: https://catalog.eshoponabp.com - orderingServiceRootUrl: https://order.eshoponabp.com - paymentServiceRootUrl: https://payment.eshoponabp.com - ingress: - host: identity.eshoponabp.com - image: - repository: "volocr.azurecr.io/eshoponabp/service-identity" - tag: latest - -# administration sub-chart override -administration: - config: - selfUrl: https://administration.eshoponabp.com - corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com,https://eshop-az-gateway-internal - connectionStrings: - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - remoteServices: - abpIdentityBaseUrl: https://identity.eshoponabp.com - useCurrentToken: "false" - dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch - synchedCommunication: # Used for server-to-server (client-credentials) communication with identityService for user permissions - authority: https://auth.eshoponabp.com - ingress: - host: administration.eshoponabp.com - image: - repository: "volocr.azurecr.io/eshoponabp/service-administration" - tag: latest - -# gateway-web sub-chart override -gateway-web: - config: - selfUrl: https://gateway.eshoponabp.com - corsOrigins: https://www.eshoponabp.com - globalConfigurationBaseUrl: http://eshop-az-gateway-public - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch - ingress: - host: gateway.eshoponabp.com - image: - repository: "volocr.azurecr.io/eshoponabp/gateway-web" - tag: latest - reRoutes: - accountService: - url: https://auth.eshoponabp.com - identityService: - url: http://eshop-az-identity - administrationService: - url: http://eshop-az-administration - -# gateway-web-public sub-chart override -gateway-web-public: - config: - selfUrl: https://gateway-public.eshoponabp.com - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch - ingress: - host: gateway-public.eshoponabp.com - image: - repository: "volocr.azurecr.io/eshoponabp/gateway-web-public" - tag: latest - reRoutes: - accountService: - url: https://auth.eshoponabp.com - identityService: - url: http://eshop-az-identity - administrationService: - url: http://eshop-az-administration - catalogService: - url: http://eshop-az-catalog - basketService: - url: http://eshop-az-basket - orderingService: - url: http://eshop-az-ordering - paymentService: - url: http://eshop-az-payment - -# basket-service sub-chart override -basket: - config: - selfUrl: https://basket.eshoponabp.com - corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com,https://publicweb.eshoponabp.com - connectionStrings: - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch - remoteServices: - catalogBaseUrl: http://eshop-az-catalog - catalogGrpcUrl: http://eshop-az-catalog - ingress: - host: basket.eshoponabp.com - image: - repository: "volocr.azurecr.io/eshoponabp/service-basket" - tag: latest - -# catalog-service sub-chart override -catalog: - config: - selfUrl: https://catalog.eshoponabp.com - corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com,https://publicweb.eshoponabp.com,https://www.eshoponabp.com - connectionStrings: - catalogService: "mongodb://es-az-mongodb/EShopOnAbp_Catalog" - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch - kestrel: - httpUrl: http://eshop-az-catalog:80 - httpProtocols: Http1AndHttp2 - grpcUrl: http://eshop-az-catalog:81 - grpcProtocols: Http2 - ingress: - host: catalog.eshoponabp.com - image: - repository: "volocr.azurecr.io/eshoponabp/service-catalog" - tag: latest - -# ordering-service sub-chart override -ordering: - config: - selfUrl: https://order.eshoponabp.com - corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com - connectionStrings: - orderingService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Ordering;User ID=postgres;password=myPassw0rd;Pooling=false" - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch - ingress: - host: order.eshoponabp.com - image: - repository: "volocr.azurecr.io/eshoponabp/service-ordering" - tag: latest - -# payment-service sub-chart override -payment: - config: - selfUrl: https://payment.eshoponabp.com - corsOrigins: https://gateway.eshoponabp.com,https://gateway-public.eshoponabp.com - connectionStrings: - paymentService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Payment;User ID=postgres;password=myPassw0rd;Pooling=false" - administrationService: "Host=es-az-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: https://auth.eshoponabp.com - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Production - redisHost: es-az-redis - rabbitmqHost: es-az-rabbitmq - elasticsearchHost: es-az-elasticsearch - ingress: - host: payment.eshoponabp.com - image: - repository: "volocr.azurecr.io/eshoponabp/service-payment" - tag: latest - -# Default values for eshoponabp. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - repository: nginx - pullPolicy: IfNotPresent - # Overrides the image tag whose default is the chart appVersion. - tag: "" - -imagePullSecrets: [] -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "" - -podAnnotations: {} - -podSecurityContext: {} - # fsGroup: 2000 - -securityContext: {} - # capabilities: - # drop: - # - ALL - # readOnlyRootFilesystem: true - # runAsNonRoot: true - # runAsUser: 1000 - -service: - type: ClusterIP - port: 80 - -ingress: - enabled: false - className: "" - annotations: {} - # kubernetes.io/ingress.class: nginx - # kubernetes.io/tls-acme: "true" - hosts: - - host: chart-example.local - paths: - - path: / - pathType: ImplementationSpecific - tls: [] - # - secretName: chart-example-tls - # hosts: - # - chart-example.local - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -autoscaling: - enabled: false - minReplicas: 1 - maxReplicas: 100 - targetCPUUtilizationPercentage: 80 - # targetMemoryUtilizationPercentage: 80 - -nodeSelector: {} - -tolerations: [] - -affinity: {} \ No newline at end of file diff --git a/etc/azure/k8s/eshoponabp/values.yaml b/etc/azure/k8s/eshoponabp/values.yaml deleted file mode 100644 index c3bb8651..00000000 --- a/etc/azure/k8s/eshoponabp/values.yaml +++ /dev/null @@ -1,354 +0,0 @@ -# auth-server sub-chart override -authserver: - config: - selfUrl: https://eshop-st-authserver - corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public,https://eshop-st-identity,https://eshop-st-administration,https://eshop-st-basket,https://eshop-st-catalog,https://eshop-st-ordering,https://eshop-st-payment - allowedRedirectUrls: https://eshop-st-web - connectionStrings: - administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - identityService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - ingress: - host: eshop-st-authserver - tlsSecret: eshop-wildcard-tls - image: - repository: "volocr.azurecr.io/eshoponabp/app-authserver" - tag: latest - -# web sub-chart override -web: - config: - selfUrl: https://eshop-st-web - gatewayUrl: "https://eshop-st-gateway-web/" - ingress: - host: eshop-st-web - image: - repository: "volocr.azurecr.io/eshoponabp/app-web" - tag: latest - -# public-web sub-chart override -public-web: - config: - selfUrl: https://eshop-st-public-web - gatewayUrl: http://eshop-st-gateway-web-public - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - ingress: - host: eshop-st-public-web - image: - repository: "volocr.azurecr.io/eshoponabp/app-publicweb" - tag: latest - -# identity-service sub-chart override -identity: - config: - selfUrl: https://eshop-st-identity - corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public - connectionStrings: - identityService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Identity;User ID=postgres;password=myPassw0rd;Pooling=false" - administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - identityServerClients: # Seeded Clients - webRootUrl: https://eshop-st-web/ - publicWebRootUrl: https://eshop-st-public-web/ - webGatewayRootUrl: https://eshop-st-gateway-web/ - publicWebGatewayRootUrl: https://eshop-st-gateway-web-public/ - identityServiceRootUrl: https://eshop-st-identity/ - administrationServiceRootUrl: https://eshop-st-administration/ - accountServiceRootUrl: https://eshop-st-authserver/ - basketServiceRootUrl: https://eshop-st-basket/ - catalogServiceRootUrl: https://eshop-st-catalog/ - orderingServiceRootUrl: https://eshop-st-ordering/ - paymentServiceRootUrl: https://eshop-st-payment/ - ingress: - host: eshop-st-identity - image: - repository: "volocr.azurecr.io/eshoponabp/service-identity" - tag: latest - -# administration sub-chart override -administration: - config: - selfUrl: https://eshop-st-administration - corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public,https://eshop-st-gateway-internal - connectionStrings: - administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - remoteServices: - abpIdentityBaseUrl: https://eshop-st-identity - useCurrentToken: "false" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - synchedCommunication: # Used for server-to-server (client-credentials) communication with identityService for user permissions - authority: https://eshop-st-authserver - ingress: - host: eshop-st-administration - image: - repository: "volocr.azurecr.io/eshoponabp/service-administration" - tag: latest - -# gateway-web sub-chart override -gateway-web: - config: - selfUrl: https://eshop-st-gateway-web - corsOrigins: https://eshop-st-web - globalConfigurationBaseUrl: http://eshop-st-gateway-public - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - ingress: - host: eshop-st-gateway-web - image: - repository: "volocr.azurecr.io/eshoponabp/gateway-web" - tag: latest - reRoutes: - accountService: - url: http://eshop-st-authserver - identityService: - url: http://eshop-st-identity - administrationService: - url: http://eshop-st-administration - -# gateway-web-public sub-chart override -gateway-web-public: - config: - selfUrl: https://eshop-st-gateway-web-public - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - ingress: - host: eshop-st-gateway-web-public - image: - repository: "volocr.azurecr.io/eshoponabp/gateway-web-public" - tag: latest - reRoutes: - accountService: - url: http://eshop-st-authserver - identityService: - url: http://eshop-st-identity - administrationService: - url: http://eshop-st-administration - catalogService: - url: http://eshop-st-catalog - basketService: - url: http://eshop-st-basket - orderingService: - url: http://eshop-st-ordering - paymentService: - url: http://eshop-st-payment - -# basket-service sub-chart override -basket: - config: - selfUrl: https://eshop-st-basket - corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public,https://eshop-st-public-web - connectionStrings: - administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - remoteServices: - catalogBaseUrl: http://eshop-st-catalog - catalogGrpcUrl: http://eshop-st-catalog - ingress: - host: eshop-st-basket - image: - repository: "volocr.azurecr.io/eshoponabp/service-basket" - tag: latest - -# catalog-service sub-chart override -catalog: - config: - selfUrl: https://eshop-st-catalog - corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public,https://eshop-st-public-web,https://eshop-st-web - connectionStrings: - catalogService: "mongodb://es-st-mongodb/EShopOnAbp_Catalog" - administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - kestrel: - httpUrl: http://eshop-st-catalog:80 - httpProtocols: Http1AndHttp2 - grpcUrl: http://eshop-st-catalog:81 - grpcProtocols: Http2 - ingress: - host: eshop-st-catalog - image: - repository: "volocr.azurecr.io/eshoponabp/service-catalog" - tag: latest - -# ordering-service sub-chart override -ordering: - config: - selfUrl: https://eshop-st-ordering - corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public - connectionStrings: - orderingService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Ordering;User ID=postgres;password=myPassw0rd;Pooling=false" - administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - ingress: - host: eshop-st-ordering - image: - repository: "volocr.azurecr.io/eshoponabp/service-ordering" - tag: latest - -# payment-service sub-chart override -payment: - config: - selfUrl: https://eshop-st-payment - corsOrigins: https://eshop-st-gateway-web,https://eshop-st-gateway-web-public - connectionStrings: - paymentService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Payment;User ID=postgres;password=myPassw0rd;Pooling=false" - administrationService: "Host=es-st-postgresdb;Port=5432;Database=EShopOnAbp_Administration;User ID=postgres;password=myPassw0rd;Pooling=false" - authServer: - authority: http://eshop-st-authserver - requireHttpsMetadata: "false" - swaggerClientId: WebGateway_Swagger - swaggerClientSecret: "1q2w3e*" - dotnetEnv: Staging - redisHost: es-st-redis - rabbitmqHost: es-st-rabbitmq - elasticsearchHost: es-st-elasticsearch - ingress: - host: eshop-st-payment - image: - repository: "volocr.azurecr.io/eshoponabp/service-payment" - tag: latest - -# Default values for eshoponabp. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - repository: nginx - pullPolicy: IfNotPresent - # Overrides the image tag whose default is the chart appVersion. - tag: "" - -imagePullSecrets: [] -nameOverride: "" -fullnameOverride: "" - -serviceAccount: - # Specifies whether a service account should be created - create: true - # Annotations to add to the service account - annotations: {} - # The name of the service account to use. - # If not set and create is true, a name is generated using the fullname template - name: "" - -podAnnotations: {} - -podSecurityContext: {} - # fsGroup: 2000 - -securityContext: {} - # capabilities: - # drop: - # - ALL - # readOnlyRootFilesystem: true - # runAsNonRoot: true - # runAsUser: 1000 - -service: - type: ClusterIP - port: 80 - -ingress: - enabled: false - className: "" - annotations: {} - # kubernetes.io/ingress.class: nginx - # kubernetes.io/tls-acme: "true" - hosts: - - host: chart-example.local - paths: - - path: / - pathType: ImplementationSpecific - tls: [] - # - secretName: chart-example-tls - # hosts: - # - chart-example.local - -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi - -autoscaling: - enabled: false - minReplicas: 1 - maxReplicas: 100 - targetCPUUtilizationPercentage: 80 - # targetMemoryUtilizationPercentage: 80 - -nodeSelector: {} - -tolerations: [] - -affinity: {} \ No newline at end of file diff --git a/etc/azure/k8s/kubectl-cert-manager.tar.gz b/etc/azure/k8s/kubectl-cert-manager.tar.gz deleted file mode 100644 index 85373076..00000000 --- a/etc/azure/k8s/kubectl-cert-manager.tar.gz +++ /dev/null @@ -1 +0,0 @@ -Not Found \ No newline at end of file diff --git a/etc/azure/scripts/cluster-issuer.yaml b/etc/azure/scripts/cluster-issuer.yaml deleted file mode 100644 index 8c0ef9c9..00000000 --- a/etc/azure/scripts/cluster-issuer.yaml +++ /dev/null @@ -1,18 +0,0 @@ -apiVersion: cert-manager.io/v1 -kind: ClusterIssuer -metadata: - name: letsencrypt -spec: - acme: - server: https://acme-v02.api.letsencrypt.org/directory - email: selman.koc@volosoft.com - privateKeySecretRef: - name: letsencrypt - solvers: - - http01: - ingress: - class: nginx - podTemplate: - spec: - nodeSelector: - "kubernetes.io/os": linux \ No newline at end of file diff --git a/etc/azure/cert-manager.md b/etc/k8s/azure/scripts/cert-manager.md similarity index 100% rename from etc/azure/cert-manager.md rename to etc/k8s/azure/scripts/cert-manager.md diff --git a/etc/azure/cluster-issuer.yaml b/etc/k8s/azure/scripts/cluster-issuer.yaml similarity index 100% rename from etc/azure/cluster-issuer.yaml rename to etc/k8s/azure/scripts/cluster-issuer.yaml diff --git a/etc/azure/scripts/install-ingress.ps1 b/etc/k8s/azure/scripts/install-ingress.ps1 similarity index 100% rename from etc/azure/scripts/install-ingress.ps1 rename to etc/k8s/azure/scripts/install-ingress.ps1 diff --git a/etc/azure/scripts/push-images.ps1 b/etc/k8s/azure/scripts/push-images.ps1 similarity index 100% rename from etc/azure/scripts/push-images.ps1 rename to etc/k8s/azure/scripts/push-images.ps1 From bbdaff21b95bac40d711a2468c543e133afe4a6c Mon Sep 17 00:00:00 2001 From: selmankoc Date: Tue, 7 Jun 2022 20:01:55 +0300 Subject: [PATCH 12/12] catalog and ordering cluster added --- .../gateway-web/templates/gateway-web-configmap.yaml | 12 ++++++++++++ etc/k8s/eshoponabp/values.azure.yaml | 6 +++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml b/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml index 70a3c739..6a55b3b1 100644 --- a/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml +++ b/etc/k8s/eshoponabp/charts/gateway-web/templates/gateway-web-configmap.yaml @@ -42,6 +42,18 @@ data: "Match": { "Path": "/api/setting-management/{**everything}" } + }, + "Catalog Service": { + "ClusterId": "catalogCluster", + "Match": { + "Path": "/api/catalog/{**everything}" + } + }, + "Ordering Service": { + "ClusterId": "orderingCluster", + "Match": { + "Path": "/api/ordering/{**everything}" + } } }, "Clusters": { diff --git a/etc/k8s/eshoponabp/values.azure.yaml b/etc/k8s/eshoponabp/values.azure.yaml index db6e3ba9..5dddcc35 100644 --- a/etc/k8s/eshoponabp/values.azure.yaml +++ b/etc/k8s/eshoponabp/values.azure.yaml @@ -2,7 +2,7 @@ authserver: config: selfUrl: https://auth.eshoponabp.com - corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://identity.eshoponabp.com,https://administration.eshoponabp.com,https://basket.eshoponabp.com,https://catalog.eshoponabp.com,https://order.eshoponabp.com,https://payment.eshoponabp.com + corsOrigins: https://www.gateway.eshoponabp.com,https://www.gateway-public.eshoponabp.com,https://identity.eshoponabp.com,https://administration.eshoponabp.com,https://basket.eshoponabp.com,https://catalog.eshoponabp.com,https://order.eshoponabp.com,https://payment.eshoponabp.com,https://admin.eshoponabp.com,https://eshoponabp.com allowedRedirectUrls: https://admin.eshoponabp.com authServer: authority: https://auth.eshoponabp.com @@ -145,9 +145,9 @@ gateway-web: administrationService: url: http://eshop-az-administration catalogService: - url: http://eshop-st-catalog + url: http://eshop-az-catalog orderingService: - url: http://eshop-st-ordering + url: http://eshop-az-ordering # gateway-web-public sub-chart override gateway-web-public: