# Conflicts: # README.md # docker-compose.override.yml # docker-compose.yml # k8s/helm/deploy-all.ps1 # k8s/helm/webstatus/values.yaml # src/ApiGateways/ApiGw-Base/Dockerfile # src/ApiGateways/ApiGw-Base/OcelotApiGw.csproj # src/ApiGateways/Mobile.Bff.Shopping/aggregator/Dockerfile # src/ApiGateways/Mobile.Bff.Shopping/aggregator/Mobile.Shopping.HttpAggregator.csproj # src/ApiGateways/Web.Bff.Shopping/aggregator/Dockerfile # src/ApiGateways/Web.Bff.Shopping/aggregator/Web.Shopping.HttpAggregator.csproj # src/BuildingBlocks/EventBus/EventBus.Tests/EventBus.Tests.csproj # src/BuildingBlocks/EventBus/IntegrationEventLogEF/IntegrationEventLogEF.csproj # src/BuildingBlocks/WebHostCustomization/WebHost.Customization/WebHost.Customization.csproj # src/Mobile/eShopOnContainers/eShopOnContainers.Core/eShopOnContainers.Core.csproj # src/Mobile/eShopOnContainers/eShopOnContainers.UnitTests/eShopOnContainers.UnitTests.csproj # src/Services/Basket/Basket.API/Basket.API.csproj # src/Services/Basket/Basket.API/Dockerfile # src/Services/Basket/Basket.FunctionalTests/Basket.FunctionalTests.csproj # src/Services/Basket/Basket.UnitTests/Basket.UnitTests.csproj # src/Services/Catalog/Catalog.API/Catalog.API.csproj # src/Services/Catalog/Catalog.API/Dockerfile # src/Services/Catalog/Catalog.FunctionalTests/Catalog.FunctionalTests.csproj # src/Services/Catalog/Catalog.UnitTests/Catalog.UnitTests.csproj # src/Services/Identity/Identity.API/Dockerfile # src/Services/Identity/Identity.API/Identity.API.csproj # src/Services/Location/Locations.API/Dockerfile # src/Services/Location/Locations.API/Locations.API.csproj # src/Services/Location/Locations.FunctionalTests/Locations.FunctionalTests.csproj # src/Services/Marketing/Infrastructure/AzureFunctions/marketing-functions.csproj # src/Services/Marketing/Marketing.API/Dockerfile # src/Services/Marketing/Marketing.API/Marketing.API.csproj # src/Services/Marketing/Marketing.FunctionalTests/Marketing.FunctionalTests.csproj # src/Services/Ordering/Ordering.API/Dockerfile # src/Services/Ordering/Ordering.API/Ordering.API.csproj # src/Services/Ordering/Ordering.BackgroundTasks/Dockerfile # src/Services/Ordering/Ordering.BackgroundTasks/Ordering.BackgroundTasks.csproj # src/Services/Ordering/Ordering.Domain/Ordering.Domain.csproj # src/Services/Ordering/Ordering.FunctionalTests/Ordering.FunctionalTests.csproj # src/Services/Ordering/Ordering.Infrastructure/Ordering.Infrastructure.csproj # src/Services/Ordering/Ordering.SignalrHub/Dockerfile # src/Services/Ordering/Ordering.SignalrHub/Ordering.SignalrHub.csproj # src/Services/Ordering/Ordering.UnitTests/Ordering.UnitTests.csproj # src/Services/Payment/Payment.API/Dockerfile # src/Services/Payment/Payment.API/Payment.API.csproj # src/Services/Webhooks/Webhooks.API/Dockerfile # src/Services/Webhooks/Webhooks.API/Webhooks.API.csproj # src/Web/WebMVC/Dockerfile # src/Web/WebMVC/WebMVC.csproj # src/Web/WebSPA/Dockerfile # src/Web/WebSPA/WebSPA.csproj # src/Web/WebStatus/Dockerfile # src/Web/WebStatus/WebStatus.csproj # src/Web/WebStatus/appsettings.Development.json # src/Web/WebhookClient/Dockerfile # test/ServicesTests/Application.FunctionalTests/Application.FunctionalTests.csprojdotnet3-migration/dev-dotnet3
@ -1,14 +0,0 @@ | |||
version: '3.4' | |||
services: | |||
sql.data: | |||
environment: | |||
- MSSQL_SA_PASSWORD=Pass@word | |||
- ACCEPT_EULA=Y | |||
- MSSQL_PID=Developer | |||
ports: | |||
- "5433:1433" | |||
nosql.data: | |||
ports: | |||
- "27017:27017" |
@ -1,18 +0,0 @@ | |||
version: '3.4' | |||
services: | |||
sql.data: | |||
image: microsoft/mssql-server-linux:2017-latest | |||
basket.data: | |||
image: redis | |||
ports: | |||
- "6379:6379" | |||
rabbitmq: | |||
image: rabbitmq | |||
ports: | |||
- "5672:5672" | |||
nosql.data: | |||
image: mongo |
@ -1,83 +0,0 @@ | |||
version: '3.4' | |||
services: | |||
basket.api: | |||
image: eshop/basket.api | |||
depends_on: | |||
- basket.data | |||
- identity.api | |||
- rabbitmq | |||
catalog.api: | |||
image: eshop/catalog.api | |||
depends_on: | |||
- sql.data | |||
- rabbitmq | |||
identity.api: | |||
image: eshop/identity.api | |||
depends_on: | |||
- sql.data | |||
ordering.api: | |||
image: eshop/ordering.api | |||
depends_on: | |||
- sql.data | |||
- rabbitmq | |||
marketing.api: | |||
image: eshop/marketing.api | |||
depends_on: | |||
- sql.data | |||
- nosql.data | |||
- identity.api | |||
- rabbitmq | |||
webspa: | |||
image: eshop/webspa | |||
depends_on: | |||
- catalog.api | |||
- ordering.api | |||
- identity.api | |||
- basket.api | |||
- marketing.api | |||
webmvc: | |||
image: eshop/webmvc | |||
depends_on: | |||
- catalog.api | |||
- ordering.api | |||
- identity.api | |||
- basket.api | |||
- marketing.api | |||
webstatus: | |||
image: eshop/webstatus | |||
payment.api: | |||
image: eshop/payment.api | |||
depends_on: | |||
- rabbitmq | |||
locations.api: | |||
image: eshop/locations.api | |||
depends_on: | |||
- nosql.data | |||
- rabbitmq | |||
sql.data: | |||
image: microsoft/mssql-server-linux:2017-latest | |||
nosql.data: | |||
image: mongo | |||
basket.data: | |||
image: redis | |||
ports: | |||
- "6379:6379" | |||
rabbitmq: | |||
image: rabbitmq:3-management | |||
ports: | |||
- "5672:5672" | |||
@ -1,29 +0,0 @@ | |||
apiVersion: v1 | |||
kind: Service | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: basket-data | |||
name: basket-data | |||
spec: | |||
ports: | |||
- port: 6379 | |||
selector: | |||
app: eshop | |||
component: basket-data | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: basket-data | |||
spec: | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: basket-data | |||
spec: | |||
containers: | |||
- name: basket-data | |||
image: redis | |||
@ -1,928 +0,0 @@ | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: basket | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: basket | |||
spec: | |||
containers: | |||
- name: basket | |||
image: eshop/basket.api | |||
imagePullPolicy: Always | |||
env: | |||
- name: PATH_BASE | |||
value: /basket-api | |||
- name: ConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: basket__ConnectionString | |||
- name: EventBusConnection | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EventBusConnection | |||
- name: AzureServiceBusEnabled | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__UseAzureServiceBus | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: IdentityUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: identity_e | |||
- name: UseLoadTest | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EnableLoadTest | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: catalog | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: catalog | |||
spec: | |||
containers: | |||
- name: catalog | |||
image: eshop/catalog.api | |||
imagePullPolicy: Always | |||
env: | |||
- name: PATH_BASE | |||
value: /catalog-api | |||
- name: ConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: catalog__ConnectionString | |||
- name: PicBaseUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: PicBaseUrl | |||
- name: AzureStorageEnabled | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: catalog__AzureStorageEnabled | |||
- name: EventBusConnection | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EventBusConnection | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: identity | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: identity | |||
spec: | |||
containers: | |||
- name: identity | |||
image: eshop/identity.api | |||
imagePullPolicy: Always | |||
env: | |||
- name: PATH_BASE | |||
value: /identity | |||
- name: ConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: identity__ConnectionString | |||
- name: DPConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: keystore | |||
- name: IsClusterEnv | |||
value: 'True' | |||
- name: MvcClient | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: mvc_e | |||
- name: SpaClient | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: spa_e | |||
- name: LocationApiClient | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: locations_e | |||
- name: MarketingApiClient | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: marketing_e | |||
- name: BasketApiClient | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: basket_e | |||
- name: OrderingApiClient | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: ordering_e | |||
- name: MobileShoppingAggClient | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: mobileshoppingagg_e | |||
- name: WebShoppingAggClient | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: webshoppingagg_e | |||
- name: XamarinCallback | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: xamarin_callback_e | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: ordering | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: ordering | |||
spec: | |||
containers: | |||
- name: ordering | |||
image: eshop/ordering.api | |||
imagePullPolicy: Always | |||
env: | |||
- name: PATH_BASE | |||
value: /ordering-api | |||
- name: ConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: ordering__ConnectionString | |||
- name: EventBusConnection | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EventBusConnection | |||
- name: AzureServiceBusEnabled | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__UseAzureServiceBus | |||
- name: IdentityUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: identity_e | |||
- name: CheckUpdateTime | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: GracePeriodManager__CheckUpdateTime | |||
- name: GracePeriodTime | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: GracePeriodManager__GracePeriodTime | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: UseLoadTest | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EnableLoadTest | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: ordering-backgroundtasks | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: ordering-backgroundtasks | |||
spec: | |||
containers: | |||
- name: ordering-backgroundtasks | |||
image: eshop/ordering.backgroundtasks | |||
imagePullPolicy: Always | |||
env: | |||
- name: ConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: ordering__ConnectionString | |||
- name: EventBusConnection | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EventBusConnection | |||
- name: AzureServiceBusEnabled | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__UseAzureServiceBus | |||
- name: CheckUpdateTime | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: GracePeriodManager__CheckUpdateTime | |||
- name: GracePeriodTime | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: GracePeriodManager__GracePeriodTime | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: UseLoadTest | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EnableLoadTest | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: ordering-signalrhub | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: ordering-signalrhub | |||
spec: | |||
containers: | |||
- name: ordering-signalrhub | |||
image: eshop/ordering.signalrhub | |||
imagePullPolicy: Always | |||
env: | |||
- name: EventBusConnection | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EventBusConnection | |||
- name: IdentityUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: identity_e | |||
- name: AzureServiceBusEnabled | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__UseAzureServiceBus | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
- name: IsClusterEnv | |||
value: 'True' | |||
- name: SignalrStoreConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: keystore | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: locations | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: locations | |||
spec: | |||
containers: | |||
- name: locations | |||
image: eshop/locations.api | |||
imagePullPolicy: Always | |||
env: | |||
- name: PATH_BASE | |||
value: /locations-api | |||
- name: ConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: locations__ConnectionString | |||
- name: Database | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: locations__Database | |||
- name: AzureServiceBusEnabled | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__UseAzureServiceBus | |||
- name: EventBusConnection | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EventBusConnection | |||
- name: IdentityUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: identity | |||
- name: IdentityUrlExternal | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: identity_e | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: UseLoadTest | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EnableLoadTest | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: marketing | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: marketing | |||
spec: | |||
containers: | |||
- name: marketing | |||
image: eshop/marketing.api | |||
imagePullPolicy: Always | |||
env: | |||
- name: PATH_BASE | |||
value: /marketing-api | |||
- name: ConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: marketing__ConnectionString | |||
- name: MongoConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: marketing__MongoConnectionString | |||
- name: MongoDatabase | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: marketing__MongoDatabase | |||
- name: AzureServiceBusEnabled | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__UseAzureServiceBus | |||
- name: EventBusConnection | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EventBusConnection | |||
- name: IdentityUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: identity | |||
- name: IdentityUrlExternal | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: identity_e | |||
- name: PicBaseUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: Marketing_PicBaseUrl | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: UseLoadTest | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EnableLoadTest | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: payment | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: payment | |||
spec: | |||
containers: | |||
- name: payment | |||
image: eshop/payment.api | |||
imagePullPolicy: Always | |||
env: | |||
- name: PATH_BASE | |||
value: /payment-api | |||
- name: AzureServiceBusEnabled | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__UseAzureServiceBus | |||
- name: EventBusConnection | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EventBusConnection | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: webmvc | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: webmvc | |||
spec: | |||
containers: | |||
- name: webmvc | |||
image: eshop/webmvc | |||
imagePullPolicy: Always | |||
env: | |||
- name: PATH_BASE | |||
value: /webmvc | |||
- name: DPConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: keystore | |||
- name: IsClusterEnv | |||
value: 'True' | |||
- name: PurchaseUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: apigwws | |||
- name: ExternalPurchaseUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: webshoppingapigw_e | |||
- name: CallBackUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: mvc_e | |||
- name: IdentityUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: identity_e | |||
- name: MarketingUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: apigwwm | |||
- name: BasketUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: basket__hc | |||
- name: CatalogUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: catalog__hc | |||
- name: IdentityUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: identity__hc | |||
- name: OrderingUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: ordering__hc | |||
- name: MarketingUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: marketing__hc | |||
- name: PaymentUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: payment__hc | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: UseLoadTest | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__EnableLoadTest | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
- name: SignalrHubUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: webshoppingapigw_e | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: webstatus | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: webstatus | |||
spec: | |||
containers: | |||
- name: webstatus | |||
image: eshop/webstatus | |||
imagePullPolicy: Always | |||
env: | |||
- name: PATH_BASE | |||
value: /webstatus | |||
- name: BasketUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: basket__hc | |||
- name: CatalogUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: catalog__hc | |||
- name: IdentityUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: identity__hc | |||
- name: OrderingUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: ordering__hc | |||
- name: OrderingBackgroundTasksUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: ordering-background__hc | |||
- name: LocationsUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: locations__hc | |||
- name: MarketingUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: marketing__hc | |||
- name: mvc | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: mvc__hc | |||
- name: spa | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: spa__hc | |||
- name: PaymentUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: payment__hc | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: webspa | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: webspa | |||
spec: | |||
containers: | |||
- name: webspa | |||
image: eshop/webspa | |||
imagePullPolicy: Always | |||
env: | |||
- name: ASPNETCORE_URLS | |||
value: http://0.0.0.0:80 | |||
- name: DPConnectionString | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: keystore | |||
- name: IsClusterEnv | |||
value: 'True' | |||
- name: PurchaseUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: webshoppingapigw_e | |||
- name: CallBackUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: spa_e | |||
- name: IdentityUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: identity_e | |||
- name: MarketingUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: marketingapigw_e | |||
- name: BasketUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: basket__hc | |||
- name: CatalogUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: catalog__hc | |||
- name: IdentityUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: identity__hc | |||
- name: OrderingUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: ordering__hc | |||
- name: MarketingUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: marketing__hc | |||
- name: PaymentUrlHC | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: payment__hc | |||
- name: ApplicationInsights__InstrumentationKey | |||
valueFrom: | |||
configMapKeyRef: | |||
name: externalcfg | |||
key: all__InstrumentationKey | |||
- name: OrchestratorType | |||
value: 'K8S' | |||
- name: SignalrHubUrl | |||
valueFrom: | |||
configMapKeyRef: | |||
name: urls | |||
key: webshoppingapigw_e | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: webshoppingagg | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: webshoppingagg | |||
spec: | |||
containers: | |||
- name: webshoppingagg | |||
image: eshop/webshoppingagg | |||
imagePullPolicy: Always | |||
env: | |||
- name: ASPNETCORE_URLS | |||
value: http://0.0.0.0:80 | |||
- name: urls__basket | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: basket | |||
- name: urls__catalog | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: catalog | |||
- name: urls__orders | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: ordering | |||
- name: urls__identity | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: identity | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- | |||
apiVersion: extensions/v1beta1 | |||
kind: Deployment | |||
metadata: | |||
name: mobileshoppingagg | |||
spec: | |||
paused: true | |||
template: | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: mobileshoppingagg | |||
spec: | |||
containers: | |||
- name: mobileshoppingagg | |||
image: eshop/mobileshoppingagg | |||
imagePullPolicy: Always | |||
env: | |||
- name: ASPNETCORE_URLS | |||
value: http://0.0.0.0:80 | |||
- name: urls__basket | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: basket | |||
- name: urls__catalog | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: catalog | |||
- name: urls__orders | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: ordering | |||
- name: urls__identity | |||
valueFrom: | |||
configMapKeyRef: | |||
name: internalurls | |||
key: identity | |||
ports: | |||
- containerPort: 80 | |||
imagePullSecrets: | |||
- name: registry-key | |||
--- |
@ -1,5 +0,0 @@ | |||
apiVersion: v1 | |||
kind: Namespace | |||
metadata: | |||
name: eshop | |||
@ -1,33 +0,0 @@ | |||
Param( | |||
[parameter(Mandatory=$true)][string]$resourceGroupName, | |||
[parameter(Mandatory=$true)][string]$location, | |||
[parameter(Mandatory=$false)][string]$registryName, | |||
[parameter(Mandatory=$true)][string]$orchestratorName, | |||
[parameter(Mandatory=$true)][string]$dnsName, | |||
[parameter(Mandatory=$true)][string]$createAcr=$true, | |||
[parameter(Mandatory=$false)][int]$agentCount=2, | |||
[parameter(Mandatory=$false)][string]$agentVMSize="Standard_D2_v2", | |||
[parameter(Mandatory=$false)][int]$masterCount=1 | |||
) | |||
# Create resource group | |||
Write-Host "Creating resource group..." -ForegroundColor Yellow | |||
az group create --name=$resourceGroupName --location=$location | |||
if ($createAcr -eq $true) { | |||
# Create Azure Container Registry | |||
Write-Host "Creating Azure Container Registry..." -ForegroundColor Yellow | |||
az acr create -n $registryName -g $resourceGroupName -l $location --admin-enabled true --sku Basic | |||
} | |||
# Create kubernetes orchestrator | |||
Write-Host "Creating kubernetes orchestrator..." -ForegroundColor Yellow | |||
az acs create --orchestrator-type=kubernetes --resource-group $resourceGroupName --name=$orchestratorName --dns-prefix=$dnsName --generate-ssh-keys --agent-count=$agentCount --agent-vm-size=$agentVMSize --master-count=$masterCount | |||
# Retrieve kubernetes cluster configuration and save it under ~/.kube/config | |||
az acs kubernetes get-credentials --resource-group=$resourceGroupName --name=$orchestratorName | |||
if ($createAcr -eq $true) { | |||
# Show ACR credentials | |||
az acr credential show -n $registryName | |||
} |
@ -1,34 +0,0 @@ | |||
{ | |||
"ReRoutes": [ | |||
{ | |||
"DownstreamPathTemplate": "/api/{version}/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "marketing", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/api/{version}/m/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/api/{version}/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "locations", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/api/{version}/l/{everything}", | |||
"UpstreamHttpMethod": [] | |||
} | |||
], | |||
"GlobalConfiguration": { | |||
"RequestIdKey": "OcRequestId", | |||
"AdministrationPath": "/administration" | |||
} | |||
} | |||
@ -0,0 +1,75 @@ | |||
admin: | |||
access_log_path: "/dev/null" | |||
address: | |||
socket_address: | |||
address: 0.0.0.0 | |||
port_value: 8001 | |||
static_resources: | |||
listeners: | |||
- address: | |||
socket_address: | |||
address: 0.0.0.0 | |||
port_value: 80 | |||
filter_chains: | |||
- filters: | |||
- name: envoy.http_connection_manager | |||
config: | |||
codec_type: auto | |||
stat_prefix: ingress_http | |||
route_config: | |||
name: eshop_backend_route | |||
virtual_hosts: | |||
- name: eshop_backend | |||
domains: | |||
- "*" | |||
routes: | |||
- name: "m-short" | |||
match: | |||
prefix: "/m/" | |||
route: | |||
auto_host_rewrite: true | |||
prefix_rewrite: "/marketing-api/" | |||
cluster: marketing | |||
- name: "m-long" | |||
match: | |||
prefix: "/marketing-api/" | |||
route: | |||
auto_host_rewrite: true | |||
cluster: marketing | |||
http_filters: | |||
- name: envoy.router | |||
access_log: | |||
- name: envoy.file_access_log | |||
filter: | |||
not_health_check_filter: {} | |||
config: | |||
json_format: | |||
time: "%START_TIME%" | |||
protocol: "%PROTOCOL%" | |||
duration: "%DURATION%" | |||
request_method: "%REQ(:METHOD)%" | |||
request_host: "%REQ(HOST)%" | |||
path: "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%" | |||
response_flags: "%RESPONSE_FLAGS%" | |||
route_name: "%ROUTE_NAME%" | |||
upstream_host: "%UPSTREAM_HOST%" | |||
upstream_cluster: "%UPSTREAM_CLUSTER%" | |||
upstream_local_address: "%UPSTREAM_LOCAL_ADDRESS%" | |||
path: "/tmp/access.log" | |||
clusters: | |||
- name: marketing | |||
connect_timeout: 0.25s | |||
type: logical_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: marketing-api | |||
port_value: 80 | |||
- name: locations | |||
connect_timeout: 0.25s | |||
type: logical_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: locations-api | |||
port_value: 80 |
@ -1,21 +0,0 @@ | |||
{{- $name := include "apigwmm.fullname" . -}} | |||
apiVersion: v1 | |||
kind: ConfigMap | |||
metadata: | |||
name: "cfg-{{ $name }}" | |||
labels: | |||
app: {{ template "apigwmm.name" . }} | |||
chart: {{ template "apigwmm.chart" .}} | |||
release: {{ .Release.Name }} | |||
heritage: {{ .Release.Service }} | |||
data: | |||
internalurls__identity: http://{{ .Values.app.svc.identity }} | |||
internalurls__basket__hc: http://{{ .Values.app.svc.basket }}/hc | |||
internalurls__catalog__hc: http://{{ .Values.app.svc.catalog }}/hc | |||
internalurls__identity__hc: http://{{ .Values.app.svc.identity }}/hc | |||
internalurls__ordering__hc: http://{{ .Values.app.svc.ordering }}/hc | |||
internalurls__marketing__hc: http://{{ .Values.app.svc.marketing }}/hc | |||
internalurls__payment__hc: http://{{ .Values.app.svc.payment }}/hc | |||
internalurls__location__hc: http://{{ .Values.app.svc.locations }}/hc | |||
@ -1,142 +0,0 @@ | |||
{ | |||
"ReRoutes": [ | |||
{ | |||
"DownstreamPathTemplate": "/api/{version}/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "catalog", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/api/{version}/c/{everything}", | |||
"UpstreamHttpMethod": [ "GET" ] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/api/{version}/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "basket", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/api/{version}/b/{everything}", | |||
"UpstreamHttpMethod": [], | |||
"AuthenticationOptions": { | |||
"AuthenticationProviderKey": "IdentityApiKey", | |||
"AllowedScopes": [] | |||
} | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/api/{version}/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "ordering", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/api/{version}/o/{everything}", | |||
"UpstreamHttpMethod": [], | |||
"AuthenticationOptions": { | |||
"AuthenticationProviderKey": "IdentityApiKey", | |||
"AllowedScopes": [] | |||
} | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "mobileshoppingagg", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/{everything}", | |||
"UpstreamHttpMethod": [ "POST", "PUT", "GET" ], | |||
"AuthenticationOptions": { | |||
"AuthenticationProviderKey": "IdentityApiKey", | |||
"AllowedScopes": [] | |||
} | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "ordering", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/orders-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "basket", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/basket-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "catalog", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/catalog-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "marketing", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/marketing-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "payment", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/payment-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "locations.api", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/location-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
} | |||
], | |||
"GlobalConfiguration": { | |||
"RequestIdKey": "OcRequestId", | |||
"AdministrationPath": "/administration" | |||
} | |||
} | |||
@ -0,0 +1,124 @@ | |||
admin: | |||
access_log_path: "/dev/null" | |||
address: | |||
socket_address: | |||
address: 0.0.0.0 | |||
port_value: 8001 | |||
static_resources: | |||
listeners: | |||
- address: | |||
socket_address: | |||
address: 0.0.0.0 | |||
port_value: 80 | |||
filter_chains: | |||
- filters: | |||
- name: envoy.http_connection_manager | |||
config: | |||
codec_type: auto | |||
stat_prefix: ingress_http | |||
route_config: | |||
name: eshop_backend_route | |||
virtual_hosts: | |||
- name: eshop_backend | |||
domains: | |||
- "*" | |||
routes: | |||
- name: "c-short" | |||
match: | |||
prefix: "/c/" | |||
route: | |||
auto_host_rewrite: true | |||
prefix_rewrite: "/catalog-api/" | |||
cluster: catalog | |||
- name: "c-long" | |||
match: | |||
prefix: "/catalog-api/" | |||
route: | |||
auto_host_rewrite: true | |||
cluster: catalog | |||
- name: "o-short" | |||
match: | |||
prefix: "/o/" | |||
route: | |||
auto_host_rewrite: true | |||
prefix_rewrite: "/ordering-api/" | |||
cluster: ordering | |||
- name: "o-long" | |||
match: | |||
prefix: "/ordering-api/" | |||
route: | |||
auto_host_rewrite: true | |||
cluster: ordering | |||
- name: "b-short" | |||
match: | |||
prefix: "/b/" | |||
route: | |||
auto_host_rewrite: true | |||
prefix_rewrite: "/basket-api/" | |||
cluster: basket | |||
- name: "b-long" | |||
match: | |||
prefix: "/basket-api/" | |||
route: | |||
auto_host_rewrite: true | |||
cluster: basket | |||
- name: "agg" | |||
match: | |||
prefix: "/" | |||
route: | |||
auto_host_rewrite: true | |||
prefix_rewrite: "/" | |||
cluster: shoppingagg | |||
http_filters: | |||
- name: envoy.router | |||
access_log: | |||
- name: envoy.file_access_log | |||
filter: | |||
not_health_check_filter: {} | |||
config: | |||
json_format: | |||
time: "%START_TIME%" | |||
protocol: "%PROTOCOL%" | |||
duration: "%DURATION%" | |||
request_method: "%REQ(:METHOD)%" | |||
request_host: "%REQ(HOST)%" | |||
path: "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%" | |||
response_flags: "%RESPONSE_FLAGS%" | |||
route_name: "%ROUTE_NAME%" | |||
upstream_host: "%UPSTREAM_HOST%" | |||
upstream_cluster: "%UPSTREAM_CLUSTER%" | |||
upstream_local_address: "%UPSTREAM_LOCAL_ADDRESS%" | |||
path: "/tmp/access.log" | |||
clusters: | |||
- name: shoppingagg | |||
connect_timeout: 0.25s | |||
type: strict_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: webshoppingagg | |||
port_value: 80 | |||
- name: catalog | |||
connect_timeout: 0.25s | |||
type: strict_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: catalog-api | |||
port_value: 80 | |||
- name: basket | |||
connect_timeout: 0.25s | |||
type: strict_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: basket-api | |||
port_value: 80 | |||
- name: ordering | |||
connect_timeout: 0.25s | |||
type: strict_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: ordering-api | |||
port_value: 80 |
@ -1,21 +0,0 @@ | |||
{{- $name := include "apigwms.fullname" . -}} | |||
apiVersion: v1 | |||
kind: ConfigMap | |||
metadata: | |||
name: "cfg-{{ $name }}" | |||
labels: | |||
app: {{ template "apigwms.name" . }} | |||
chart: {{ template "apigwms.chart" .}} | |||
release: {{ .Release.Name }} | |||
heritage: {{ .Release.Service }} | |||
data: | |||
internalurls__identity: http://{{ .Values.app.svc.identity }} | |||
internalurls__basket__hc: http://{{ .Values.app.svc.basket }}/hc | |||
internalurls__catalog__hc: http://{{ .Values.app.svc.catalog }}/hc | |||
internalurls__identity__hc: http://{{ .Values.app.svc.identity }}/hc | |||
internalurls__ordering__hc: http://{{ .Values.app.svc.ordering }}/hc | |||
internalurls__marketing__hc: http://{{ .Values.app.svc.marketing }}/hc | |||
internalurls__payment__hc: http://{{ .Values.app.svc.payment }}/hc | |||
internalurls__location__hc: http://{{ .Values.app.svc.locations }}/hc | |||
@ -1,34 +0,0 @@ | |||
{ | |||
"ReRoutes": [ | |||
{ | |||
"DownstreamPathTemplate": "/api/{version}/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "marketing", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/api/{version}/m/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/api/{version}/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "locations", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/api/{version}/l/{everything}", | |||
"UpstreamHttpMethod": [] | |||
} | |||
], | |||
"GlobalConfiguration": { | |||
"RequestIdKey": "OcRequestId", | |||
"AdministrationPath": "/administration" | |||
} | |||
} | |||
@ -0,0 +1,75 @@ | |||
admin: | |||
access_log_path: "/dev/null" | |||
address: | |||
socket_address: | |||
address: 0.0.0.0 | |||
port_value: 8001 | |||
static_resources: | |||
listeners: | |||
- address: | |||
socket_address: | |||
address: 0.0.0.0 | |||
port_value: 80 | |||
filter_chains: | |||
- filters: | |||
- name: envoy.http_connection_manager | |||
config: | |||
codec_type: auto | |||
stat_prefix: ingress_http | |||
route_config: | |||
name: eshop_backend_route | |||
virtual_hosts: | |||
- name: eshop_backend | |||
domains: | |||
- "*" | |||
routes: | |||
- name: "m-short" | |||
match: | |||
prefix: "/m/" | |||
route: | |||
auto_host_rewrite: true | |||
prefix_rewrite: "/marketing-api/" | |||
cluster: marketing | |||
- name: "m-long" | |||
match: | |||
prefix: "/marketing-api/" | |||
route: | |||
auto_host_rewrite: true | |||
cluster: marketing | |||
http_filters: | |||
- name: envoy.router | |||
access_log: | |||
- name: envoy.file_access_log | |||
filter: | |||
not_health_check_filter: {} | |||
config: | |||
json_format: | |||
time: "%START_TIME%" | |||
protocol: "%PROTOCOL%" | |||
duration: "%DURATION%" | |||
request_method: "%REQ(:METHOD)%" | |||
request_host: "%REQ(HOST)%" | |||
path: "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%" | |||
response_flags: "%RESPONSE_FLAGS%" | |||
route_name: "%ROUTE_NAME%" | |||
upstream_host: "%UPSTREAM_HOST%" | |||
upstream_cluster: "%UPSTREAM_CLUSTER%" | |||
upstream_local_address: "%UPSTREAM_LOCAL_ADDRESS%" | |||
path: "/tmp/access.log" | |||
clusters: | |||
- name: marketing | |||
connect_timeout: 0.25s | |||
type: strict_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: marketing-api | |||
port_value: 80 | |||
- name: locations | |||
connect_timeout: 0.25s | |||
type: strict_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: locations-api | |||
port_value: 80 |
@ -1,21 +0,0 @@ | |||
{{- $name := include "apigwwm.fullname" . -}} | |||
apiVersion: v1 | |||
kind: ConfigMap | |||
metadata: | |||
name: "cfg-{{ $name }}" | |||
labels: | |||
app: {{ template "apigwwm.name" . }} | |||
chart: {{ template "apigwwm.chart" .}} | |||
release: {{ .Release.Name }} | |||
heritage: {{ .Release.Service }} | |||
data: | |||
internalurls__identity: http://{{ .Values.app.svc.identity }} | |||
internalurls__basket__hc: http://{{ .Values.app.svc.basket }}/hc | |||
internalurls__catalog__hc: http://{{ .Values.app.svc.catalog }}/hc | |||
internalurls__identity__hc: http://{{ .Values.app.svc.identity }}/hc | |||
internalurls__ordering__hc: http://{{ .Values.app.svc.ordering }}/hc | |||
internalurls__marketing__hc: http://{{ .Values.app.svc.marketing }}/hc | |||
internalurls__payment__hc: http://{{ .Values.app.svc.payment }}/hc | |||
internalurls__location__hc: http://{{ .Values.app.svc.locations }}/hc | |||
@ -1,154 +0,0 @@ | |||
{ | |||
"ReRoutes": [ | |||
{ | |||
"DownstreamPathTemplate": "/api/{version}/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "catalog", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/api/{version}/c/{everything}", | |||
"UpstreamHttpMethod": [ "GET" ] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/api/{version}/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "basket", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/api/{version}/b/{everything}", | |||
"UpstreamHttpMethod": [], | |||
"AuthenticationOptions": { | |||
"AuthenticationProviderKey": "IdentityApiKey", | |||
"AllowedScopes": [] | |||
} | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/api/{version}/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "ordering", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/api/{version}/o/{everything}", | |||
"UpstreamHttpMethod": [], | |||
"AuthenticationOptions": { | |||
"AuthenticationProviderKey": "IdentityApiKey", | |||
"AllowedScopes": [] | |||
} | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "webshoppingagg", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/{everything}", | |||
"UpstreamHttpMethod": [ "POST", "PUT", "GET" ], | |||
"AuthenticationOptions": { | |||
"AuthenticationProviderKey": "IdentityApiKey", | |||
"AllowedScopes": [] | |||
} | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "ordering", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/orders-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "ordering-signalrhub", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/hub/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "basket", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/basket-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "catalog", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/catalog-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "marketing", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/marketing-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "payment", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/payment-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
}, | |||
{ | |||
"DownstreamPathTemplate": "/{everything}", | |||
"DownstreamScheme": "http", | |||
"DownstreamHostAndPorts": [ | |||
{ | |||
"Host": "locations.api", | |||
"Port": 80 | |||
} | |||
], | |||
"UpstreamPathTemplate": "/location-api/{everything}", | |||
"UpstreamHttpMethod": [] | |||
} | |||
], | |||
"GlobalConfiguration": { | |||
"RequestIdKey": "OcRequestId", | |||
"AdministrationPath": "/administration" | |||
} | |||
} | |||
@ -0,0 +1,124 @@ | |||
admin: | |||
access_log_path: "/dev/null" | |||
address: | |||
socket_address: | |||
address: 0.0.0.0 | |||
port_value: 8001 | |||
static_resources: | |||
listeners: | |||
- address: | |||
socket_address: | |||
address: 0.0.0.0 | |||
port_value: 80 | |||
filter_chains: | |||
- filters: | |||
- name: envoy.http_connection_manager | |||
config: | |||
codec_type: auto | |||
stat_prefix: ingress_http | |||
route_config: | |||
name: eshop_backend_route | |||
virtual_hosts: | |||
- name: eshop_backend | |||
domains: | |||
- "*" | |||
routes: | |||
- name: "c-short" | |||
match: | |||
prefix: "/c/" | |||
route: | |||
auto_host_rewrite: true | |||
prefix_rewrite: "/catalog-api/" | |||
cluster: catalog | |||
- name: "c-long" | |||
match: | |||
prefix: "/catalog-api/" | |||
route: | |||
auto_host_rewrite: true | |||
cluster: catalog | |||
- name: "o-short" | |||
match: | |||
prefix: "/o/" | |||
route: | |||
auto_host_rewrite: true | |||
prefix_rewrite: "/ordering-api/" | |||
cluster: ordering | |||
- name: "o-long" | |||
match: | |||
prefix: "/ordering-api/" | |||
route: | |||
auto_host_rewrite: true | |||
cluster: ordering | |||
- name: "b-short" | |||
match: | |||
prefix: "/b/" | |||
route: | |||
auto_host_rewrite: true | |||
prefix_rewrite: "/basket-api/" | |||
cluster: basket | |||
- name: "b-long" | |||
match: | |||
prefix: "/basket-api/" | |||
route: | |||
auto_host_rewrite: true | |||
cluster: basket | |||
- name: "agg" | |||
match: | |||
prefix: "/" | |||
route: | |||
auto_host_rewrite: true | |||
prefix_rewrite: "/" | |||
cluster: shoppingagg | |||
http_filters: | |||
- name: envoy.router | |||
access_log: | |||
- name: envoy.file_access_log | |||
filter: | |||
not_health_check_filter: {} | |||
config: | |||
json_format: | |||
time: "%START_TIME%" | |||
protocol: "%PROTOCOL%" | |||
duration: "%DURATION%" | |||
request_method: "%REQ(:METHOD)%" | |||
request_host: "%REQ(HOST)%" | |||
path: "%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%" | |||
response_flags: "%RESPONSE_FLAGS%" | |||
route_name: "%ROUTE_NAME%" | |||
upstream_host: "%UPSTREAM_HOST%" | |||
upstream_cluster: "%UPSTREAM_CLUSTER%" | |||
upstream_local_address: "%UPSTREAM_LOCAL_ADDRESS%" | |||
path: "/tmp/access.log" | |||
clusters: | |||
- name: shoppingagg | |||
connect_timeout: 0.25s | |||
type: strict_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: webshoppingagg | |||
port_value: 80 | |||
- name: catalog | |||
connect_timeout: 0.25s | |||
type: strict_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: catalog-api | |||
port_value: 80 | |||
- name: basket | |||
connect_timeout: 0.25s | |||
type: strict_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: basket-api | |||
port_value: 80 | |||
- name: ordering | |||
connect_timeout: 0.25s | |||
type: strict_dns | |||
lb_policy: round_robin | |||
hosts: | |||
- socket_address: | |||
address: ordering-api | |||
port_value: 80 |
@ -1,21 +0,0 @@ | |||
{{- $name := include "apigwws.fullname" . -}} | |||
apiVersion: v1 | |||
kind: ConfigMap | |||
metadata: | |||
name: "cfg-{{ $name }}" | |||
labels: | |||
app: {{ template "apigwws.name" . }} | |||
chart: {{ template "apigwws.chart" .}} | |||
release: {{ .Release.Name }} | |||
heritage: {{ .Release.Service }} | |||
data: | |||
internalurls__identity: http://{{ .Values.app.svc.identity }} | |||
internalurls__basket__hc: http://{{ .Values.app.svc.basket }}/hc | |||
internalurls__catalog__hc: http://{{ .Values.app.svc.catalog }}/hc | |||
internalurls__identity__hc: http://{{ .Values.app.svc.identity }}/hc | |||
internalurls__ordering__hc: http://{{ .Values.app.svc.ordering }}/hc | |||
internalurls__marketing__hc: http://{{ .Values.app.svc.marketing }}/hc | |||
internalurls__payment__hc: http://{{ .Values.app.svc.payment }}/hc | |||
internalurls__location__hc: http://{{ .Values.app.svc.locations }}/hc | |||
@ -0,0 +1,33 @@ | |||
{{- if .Values.ingress.enabled -}} | |||
{{- if .Values.inf.k8s.local -}} | |||
{{- $ingressPath := include "pathBase" . -}} | |||
{{- $serviceName := .Values.app.svc.identity }} | |||
{{- $name := include "identity-api.fullname" . -}} | |||
apiVersion: extensions/v1beta1 | |||
kind: Ingress | |||
metadata: | |||
name: {{ $name }}-local | |||
labels: | |||
app: {{ template "identity-api.name" . }} | |||
chart: {{ template "identity-api.chart" . }} | |||
release: {{ .Release.Name }} | |||
heritage: {{ .Release.Service }} | |||
{{- with .Values.ingress.annotations }} | |||
annotations: | |||
{{ toYaml . | indent 4 }} | |||
{{- end }} | |||
{{- if .Values.inf.mesh.enabled }} | |||
{{- with .Values.ingress.mesh.annotations }} | |||
{{ toYaml . | indent 4 }} | |||
{{- end }} | |||
{{- end }} | |||
spec: | |||
rules: | |||
- http: | |||
paths: | |||
- backend: | |||
serviceName: {{ $serviceName }} | |||
servicePort: http | |||
path: {{ $ingressPath }} | |||
{{- end -}} | |||
{{- end -}} |
@ -1,5 +1,8 @@ | |||
# This file contains common ingress annotations when using AKS with Http Application Routing | |||
ingress: | |||
annotations: | |||
kubernetes.io/ingress.class: addon-http-application-routing | |||
ingress.kubernetes.io/ssl-redirect: "false" | |||
nginx.ingress.kubernetes.io/ssl-redirect: "false" | |||
@ -0,0 +1,16 @@ | |||
# This file contains extra annotations to make Linkerd work with ingress. | |||
# ingress.mesh.annotations are inserted into ingress.annotations of the resource being generated, if mesh is deployed | |||
# | |||
# It is designed to work with NGINX ingress controller or the Http Application Routing | |||
# | |||
# Check https://linkerd.io/2/tasks/using-ingress/ for more info or other ingress controllers | |||
# | |||
# If using your custom file, use -ingressMeshAnnotationsFile parameter in deploy-all.ps1 | |||
ingress: | |||
mesh: | |||
annotations: | |||
nginx.ingress.kubernetes.io/configuration-snippet: | | |||
proxy_set_header l5d-dst-override $service_name.$namespace.svc.cluster.local:$service_port; | |||
proxy_hide_header l5d-remote-ip; | |||
proxy_hide_header l5d-server-id; |
@ -0,0 +1,33 @@ | |||
{{- if .Values.ingress.enabled -}} | |||
{{- if .Values.inf.k8s.local -}} | |||
{{- $ingressPath := include "pathBase" . -}} | |||
{{- $serviceName := .Values.app.svc.mvc }} | |||
{{- $name := include "webmvc.fullname" . -}} | |||
apiVersion: extensions/v1beta1 | |||
kind: Ingress | |||
metadata: | |||
name: {{ $name }}-local | |||
labels: | |||
app: {{ template "webmvc.name" . }} | |||
chart: {{ template "webmvc.chart" . }} | |||
release: {{ .Release.Name }} | |||
heritage: {{ .Release.Service }} | |||
{{- with .Values.ingress.annotations }} | |||
annotations: | |||
{{ toYaml . | indent 4 }} | |||
{{- end }} | |||
{{- if .Values.inf.mesh.enabled }} | |||
{{- with .Values.ingress.mesh.annotations }} | |||
{{ toYaml . | indent 4 }} | |||
{{- end }} | |||
{{- end }} | |||
spec: | |||
rules: | |||
- http: | |||
paths: | |||
- backend: | |||
serviceName: {{ $serviceName }} | |||
servicePort: http | |||
path: {{ $ingressPath }} | |||
{{- end -}} | |||
{{- end -}} |
@ -1,59 +0,0 @@ | |||
apiVersion: extensions/v1beta1 | |||
kind: Ingress | |||
metadata: | |||
labels: | |||
app: eshop | |||
component: frontend | |||
name: eshop-ingress | |||
annotations: | |||
ingress.kubernetes.io/ssl-redirect: "false" | |||
spec: | |||
rules: | |||
- http: | |||
paths: | |||
- path: /identity | |||
backend: | |||
serviceName: identity | |||
servicePort: 80 | |||
- path: /webmvc | |||
backend: | |||
serviceName: webmvc | |||
servicePort: 80 | |||
- path: /webstatus | |||
backend: | |||
serviceName: webstatus | |||
servicePort: 80 | |||
- path: /webshoppingapigw | |||
backend: | |||
serviceName: ocelotapigw-ws | |||
servicePort: 80 | |||
- path: /webmarketingapigw | |||
backend: | |||
serviceName: ocelotapigw-wm | |||
servicePort: 80 | |||
- path: /mobilemarketingapigw | |||
backend: | |||
serviceName: ocelotapigw-mm | |||
servicePort: 80 | |||
- path: /mobileshoppingapigw | |||
backend: | |||
serviceName: ocelotapigw-ms | |||
servicePort: 80 | |||
- path: /webshoppingagg | |||
backend: | |||
serviceName: webshoppingagg | |||
servicePort: 80 | |||
- path: /mobileshoppingagg | |||
backend: | |||
serviceName: mobileshoppingagg | |||
servicePort: 80 | |||
- path: /payment-api | |||
backend: | |||
serviceName: payment | |||
servicePort: 80 | |||
- path: / | |||
backend: | |||
serviceName: webspa | |||
servicePort: 80 | |||