first commit

This commit is contained in:
Zeeshaun
2026-03-11 11:18:25 -05:00
commit f3cb730f3b
472 changed files with 53651 additions and 0 deletions
@@ -0,0 +1,46 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: online-loan-app-api
spec:
replicas: 1
selector:
matchLabels:
app: online-loan-app-api
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 25%
type: RollingUpdate
template:
metadata:
labels:
app: online-loan-app-api
spec:
volumes: []
containers:
- name: online-loan-app-api
env: []
volumeMounts: []
image: online-loan-app-api
resources:
limits:
memory: "1536Mi"
requests:
memory: "1536Mi"
cpu: "100m"
ports:
- containerPort: 8080
livenessProbe:
initialDelaySeconds: 5
periodSeconds: 5
httpGet:
path: /api/status/api/status
port: 8080
readinessProbe:
initialDelaySeconds: 5
periodSeconds: 5
httpGet:
path: /api/status/api/status
port: 8080
@@ -0,0 +1,11 @@
---
apiVersion: v1
kind: Service
metadata:
name: online-loan-app-api
spec:
selector:
app: online-loan-app-api
ports:
- port: 8080
targetPort: 8080
@@ -0,0 +1,9 @@
resources:
- Deployment.yaml
- Service.yaml
- secrets-provider-class.yaml
- virtual-service.yaml
images:
- name: online-loan-app-api
newName: landmarkcu/lcu.api.internal.onlineloanappapi
@@ -0,0 +1,11 @@
---
apiVersion: secrets-store.csi.x-k8s.io/v1
kind: SecretProviderClass
metadata:
name: online-loan-app-api-csi-key-vault-secrets-provider
spec:
provider: azure
parameters:
usePodIdentity: "false"
useVMManagedIdentity: "true"
tenantId: 63cd1554-2783-4a86-ae50-b9e6c21c9499
@@ -0,0 +1,19 @@
---
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
name: online-loan-app-api
spec:
hosts: []
gateways:
- istio-system/ingress-gateway
http:
- name: online-loan-app-api
match:
- uri:
prefix: /
route:
- destination:
host: online-loan-app-api
port:
number: 8080
@@ -0,0 +1,10 @@
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component
patches:
- target:
kind: Deployment
path: set_secrets_deployment.yaml
- target:
kind: SecretProviderClass
path: set_secrets_provider.yaml
@@ -0,0 +1,89 @@
- op: add
path: /spec/template/spec/volumes/-
value:
name: online-loan-app-api-secrets
csi:
driver: secrets-store.csi.k8s.io
readOnly: true
volumeAttributes:
secretProviderClass: normal-online-loan-app-api-csi-key-vault-secrets-provider
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: online-loan-app-api-secrets
mountPath: /vault/secrets/online-loan-app-api-primary-seq-key.json
readOnly: true
subPath: online-loan-app-api-primary-seq-key
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: online-loan-app-api-secrets
mountPath: /vault/secrets/online-loan-app-api-usps-settings-username.json
readOnly: true
subPath: online-loan-app-api-usps-settings-username
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: online-loan-app-api-secrets
mountPath: /vault/secrets/online-loan-app-api-application-storage-password.json
readOnly: true
subPath: online-loan-app-api-application-storage-password
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: online-loan-app-api-secrets
mountPath: /vault/secrets/online-loan-app-api-crif-settings-api-settings-username.json
readOnly: true
subPath: online-loan-app-api-crif-settings-api-settings-username
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: online-loan-app-api-secrets
mountPath: /vault/secrets/online-loan-app-api-security-settings-private-cert-azure-thumbprint.json
readOnly: true
subPath: online-loan-app-api-security-settings-private-cert-azure-thumbprint
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: online-loan-app-api-secrets
mountPath: /vault/secrets/online-loan-app-api-security-settings-public-cert-azure-thumbprint.json
readOnly: true
subPath: online-loan-app-api-security-settings-public-cert-azure-thumbprint
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: online-loan-app-api-secrets
mountPath: /vault/secrets/online-loan-app-api-security-settings-token-secret.json
readOnly: true
subPath: online-loan-app-api-security-settings-token-secret
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: online-loan-app-api-secrets
mountPath: /vault/secrets/online-loan-app-api-security-settings-digital-insight-consumer-key.json
readOnly: true
subPath: online-loan-app-api-security-settings-digital-insight-consumer-key
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: online-loan-app-api-secrets
mountPath: /vault/secrets/online-loan-app-api-security-settings-digital-insight-consumer-secret.json
readOnly: true
subPath: online-loan-app-api-security-settings-digital-insight-consumer-secret
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: online-loan-app-api-secrets
mountPath: /vault/secrets/online-loan-app-api-blob-storage-connection-settings-account-key.json
readOnly: true
subPath: online-loan-app-api-blob-storage-connection-settings-account-key
@@ -0,0 +1,44 @@
- op: add
path: /spec/parameters/objects
value: |
array:
- |
objectName: online-loan-app-api-primary-seq-key
objectType: secret
objectVersion: ""
- |
objectName: online-loan-app-api-usps-settings-username
objectType: secret
objectVersion: ""
- |
objectName: online-loan-app-api-application-storage-password
objectType: secret
objectVersion: ""
- |
objectName: online-loan-app-api-crif-settings-api-settings-username
objectType: secret
objectVersion: ""
- |
objectName: online-loan-app-api-security-settings-private-cert-azure-thumbprint
objectType: secret
objectVersion: ""
- |
objectName: online-loan-app-api-security-settings-public-cert-azure-thumbprint
objectType: secret
objectVersion: ""
- |
objectName: online-loan-app-api-security-settings-token-secret
objectType: secret
objectVersion: ""
- |
objectName: online-loan-app-api-security-settings-digital-insight-consumer-key
objectType: secret
objectVersion: ""
- |
objectName: online-loan-app-api-security-settings-digital-insight-consumer-secret
objectType: secret
objectVersion: ""
- |
objectName: online-loan-app-api-blob-storage-connection-settings-account-key
objectType: secret
objectVersion: ""
@@ -0,0 +1,40 @@
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component
#Test istio process
namePrefix: normal-
configMapGenerator:
- name: online-loan-app-api-appsettings
files:
- appsettings/appsettings.json
generatorOptions:
disableNameSuffixHash: true
patches:
- target:
kind: Deployment
path: set_appsettings_deployment.yaml
replacements:
- source:
kind: Deployment
fieldPath: metadata.name
targets:
- select:
kind: Deployment
fieldPaths:
- spec.selector.matchLabels.app
- spec.template.metadata.labels.app
- spec.template.spec.containers.*.name
- select:
kind: Service
fieldPaths:
- spec.selector.app
- select:
kind: VirtualService
fieldPaths:
- spec.http.*.route.*.destination.host
- spec.http.*.name
@@ -0,0 +1,12 @@
- op: add
path: /spec/template/spec/volumes/-
value:
name: volume-appsettings
configMap:
name: online-loan-app-api-appsettings
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: volume-appsettings
mountPath: /app/config/workload-appsettings
@@ -0,0 +1,40 @@
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component
#Test istio process
namePrefix: normal-
configMapGenerator:
- name: online-loan-app-api-appsettings
files:
- appsettings/appsettings.json
generatorOptions:
disableNameSuffixHash: true
patches:
- target:
kind: Deployment
path: set_appsettings_deployment.yaml
replacements:
- source:
kind: Deployment
fieldPath: metadata.name
targets:
- select:
kind: Deployment
fieldPaths:
- spec.selector.matchLabels.app
- spec.template.metadata.labels.app
- spec.template.spec.containers.*.name
- select:
kind: Service
fieldPaths:
- spec.selector.app
- select:
kind: VirtualService
fieldPaths:
- spec.http.*.route.*.destination.host
- spec.http.*.name
@@ -0,0 +1,12 @@
- op: add
path: /spec/template/spec/volumes/-
value:
name: volume-appsettings
configMap:
name: online-loan-app-api-appsettings
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: volume-appsettings
mountPath: /app/config/workload-appsettings
@@ -0,0 +1,8 @@
resources:
- ../../../base
patchesStrategicMerge:
- set_appsettings_deployment.yaml
- set_secrets_provider_class.yaml
images:
- name: online-loan-app-api
newName: landmarkcu/lcu.api.internal.onlineloanappapi-onlineloanappapi
@@ -0,0 +1,12 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: online-loan-app-api
spec:
template:
spec:
containers:
- name: online-loan-app-api
env:
- name: ASPNETCORE_ENVIRONMENT
value: "Development"
@@ -0,0 +1,9 @@
---
apiVersion: secrets-store.csi.x-k8s.io/v1
kind: SecretProviderClass
metadata:
name: online-loan-app-api-csi-key-vault-secrets-provider
spec:
parameters:
userAssignedIdentityID: 3286ed9a-f85c-4c50-b742-dbd3c1c3fe1f
keyvaultName: kv-lz-apps-qa-uscz
@@ -0,0 +1,2 @@
resources:
- normal
@@ -0,0 +1,17 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: online-loan-app-api-configmap
data:
primary.json: |
{
"Primary": {
"SeqUrl": "https://qa-seq.lcu-internal.com",
"CorsAllowedOrigins": [
"http://localhost:3000",
"http://lcu-internal.com",
"https://lcu-internal.com",
"https://qa-api.lcu-internal.com"
]
}
}
@@ -0,0 +1,5 @@
resources:
- configmap.yaml
- ../common
patchesStrategicMerge:
- set_virtual_service.yaml
@@ -0,0 +1,8 @@
---
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
name: online-loan-app-api
spec:
hosts:
- online-loan-app-api.apps.azure.lcu-internal.com
@@ -0,0 +1,67 @@
{
"Primary": {
"SeqUrl": "https://seq.lcu-internal.com/"
},
"ApplicationControl": {
"HomePageUrl": "https://prd-online-loan-app.apps.azure.lcu-internal.com"
},
"ApplicationStorage": {
"UserName": "loan-app-prod",
"Host": "loan-app-prod.documents.azure.com"
},
"CrifSettings": {
"ApiSettings": {
"EndpointUrl": "https://www-lc3cs.myappro.com/ACS/ConnectorService.svc/ConnectorService"
},
"CustomFieldMappings": {
"LoanTypeToPromoId": {
"132": "-114",
"133": "-114",
"134": "-114",
"136": "-114",
"139": "-118",
"148": "-118",
"149": "-118",
"146": "-118",
"125": "-117",
"126": "-117",
"129": "-117",
"131": "-117",
"130": "-117",
"140": "-115"
},
"CustomFieldID": {
"LicensePlateNumber": "-76",
"CountyTitled": "-96",
"MunicipalityType": "-171",
"MunicipalityWhereKept": "-172"
},
"MunicipalityTypeCode": {
"CITY": "401",
"TOWN": "402",
"VILLAGE": "403"
}
}
},
"SecuritySettings": {
"SAMLSuccessRedirectRoute": "https://apply.landmarkcu.com/select-loan?referrer=NCR",
"SAMLFailureRedirectRoute": "https://apply.landmarkcu.com/error?referrer=NCR",
"DigitalInsightPostTokenURI": "https://diapis.digitalinsight.com/v1/oauth/token"
},
"NotificationsApiConfiguration": {
"Url": "https://prd-notifications-api.apps.azure.lcu-internal.com",
"ErrorRecipients": [ "[email protected]" ]
},
"CoreSettings": {
"EndPoint": "https://prd-core-api-wrapper-api.apps.azure.lcu-internal.com/"
},
"BlobStorageConnectionSettings": {
"AccountName": "prodloanappsa"
},
"DealershipEmailSettings": {
"RedBannerMessage": "",
"Recipients": [ "[email protected]" ],
"ActionLink": "https://actiona6.criflending.com/Core/Application/AppSecurity.aspx?orgCode=landmarkcu&resID=&resTypeID=-995&appID=",
"EmailAPIUrl": "https://notificationsapi.lcu-internal.com/api/Email"
}
}
@@ -0,0 +1,10 @@
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component
patches:
- target:
kind: Deployment
path: set_appsettings_deployment.yaml
- target:
kind: SecretProviderClass
path: set_secrets_provider_class.yaml
@@ -0,0 +1,5 @@
- op: add
path: /spec/template/spec/containers/0/env/-
value:
name: ASPNETCORE_ENVIRONMENT
value: "Production"
@@ -0,0 +1,7 @@
- op: add
path: /spec/parameters/userAssignedIdentityID
value: 9eaefc49-e5d3-48d4-a2b9-b42cf2d8ca03
- op: add
path: /spec/parameters/keyvaultName
value: kv-lz-apps-prod-uscz
@@ -0,0 +1,14 @@
resources:
- normal
configMapGenerator:
- name: online-loan-app-api-environment-appsettings
files:
- appsettings/appsettings.json
generatorOptions:
disableNameSuffixHash: true
patches:
- target:
kind: Deployment
path: set_configmap_deployment.yaml
@@ -0,0 +1,12 @@
resources:
- ../../../base
components:
- ../component
- ../../../components/keyvaults/normal
- ../../../components/workloads/normal-prod
patches:
- target:
kind: VirtualService
path: set_virtual_service.yaml
@@ -0,0 +1,3 @@
- op: add
path: /spec/hosts/-
value: prd-online-loan-app-api.apps.azure.lcu-internal.com
@@ -0,0 +1,12 @@
- op: add
path: /spec/template/spec/volumes/-
value:
name: volume-environment-appsettings
configMap:
name: online-loan-app-api-environment-appsettings
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: volume-environment-appsettings
mountPath: /app/config/environment-appsettings
@@ -0,0 +1,67 @@
{
"Primary": {
"SeqUrl": "https://qa-seq.lcu-internal.com/"
},
"ApplicationControl": {
"HomePageUrl": "https://qa-online-loan-app.apps.azure.lcu-internal.com"
},
"ApplicationStorage": {
"UserName": "loan-app-dvl",
"Host": "loan-app-dvl.documents.azure.com"
},
"CrifSettings": {
"ApiSettings": {
"EndpointUrl": "https://www-lc3cst.myappro.com/ACS/ConnectorService.svc/ConnectorService"
},
"CustomFieldMappings": {
"LoanTypeToPromoId": {
"132": "-114",
"133": "-114",
"134": "-114",
"136": "-114",
"139": "-118",
"148": "-118",
"149": "-118",
"146": "-118",
"125": "-117",
"126": "-117",
"129": "-117",
"131": "-117",
"130": "-117",
"140": "-115"
},
"CustomFieldID": {
"LicensePlateNumber": "-76",
"CountyTitled": "-96",
"MunicipalityType": "-173",
"MunicipalityWhereKept": "-174"
},
"MunicipalityTypeCode": {
"CITY": "402",
"TOWN": "403",
"VILLAGE": "404"
}
}
},
"SecuritySettings": {
"SAMLSuccessRedirectRoute": "https://applydev.landmarkcu.com/select-loan?referrer=NCR",
"SAMLFailureRedirectRoute": "https://applydev.landmarkcu.com/error?referrer=NCR",
"DigitalInsightPostTokenURI": "https://diapis.stg1.digitalinsight.com/v1/oauth/token"
},
"NotificationsApiConfiguration": {
"Url": "https://qa-notifications-api.apps.azure.lcu-internal.com",
"ErrorRecipients": [ "[email protected]" ]
},
"CoreSettings": {
"EndPoint": "https://qa-core-api-wrapper-api.apps.azure.lcu-internal.com/"
},
"BlobStorageConnectionSettings": {
"AccountName": "devloanappsa"
},
"DealershipEmailSettings": {
"RedBannerMessage": "This is from the QA test environment.",
"Recipients": [ "[email protected]" ],
"ActionLink": "https://actiona6t.criflending.com/Core/Application/AppSecurity.aspx?orgCode=landmarkcu&resID=&resTypeID=-995&appID=",
"EmailAPIUrl": "https://qa-notificationsapi.lcu-internal.com/api/Email"
}
}
@@ -0,0 +1,10 @@
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component
patches:
- target:
kind: Deployment
path: set_appsettings_deployment.yaml
- target:
kind: SecretProviderClass
path: set_secrets_provider_class.yaml
@@ -0,0 +1,5 @@
- op: add
path: /spec/template/spec/containers/0/env/-
value:
name: ASPNETCORE_ENVIRONMENT
value: Development
@@ -0,0 +1,7 @@
- op: add
path: /spec/parameters/userAssignedIdentityID
value: 3286ed9a-f85c-4c50-b742-dbd3c1c3fe1f
- op: add
path: /spec/parameters/keyvaultName
value: kv-lz-apps-qa-uscz
@@ -0,0 +1,14 @@
resources:
- normal
configMapGenerator:
- name: online-loan-app-api-environment-appsettings
files:
- appsettings/appsettings.json
generatorOptions:
disableNameSuffixHash: true
patches:
- target:
kind: Deployment
path: set_configmap_deployment.yaml
@@ -0,0 +1,12 @@
resources:
- ../../../base
components:
- ../component
- ../../../components/keyvaults/normal
- ../../../components/workloads/normal
patches:
- target:
kind: VirtualService
path: set_virtual_service.yaml
@@ -0,0 +1,3 @@
- op: add
path: /spec/hosts/-
value: qa-online-loan-app-api.apps.azure.lcu-internal.com
@@ -0,0 +1,12 @@
- op: add
path: /spec/template/spec/volumes/-
value:
name: volume-environment-appsettings
configMap:
name: online-loan-app-api-environment-appsettings
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: volume-environment-appsettings
mountPath: /app/config/environment-appsettings
@@ -0,0 +1,67 @@
{
"Primary": {
"SeqUrl": "https://uat-seq.lcu-internal.com/"
},
"ApplicationControl": {
"HomePageUrl": "https://uat-online-loan-app.apps.azure.lcu-internal.com"
},
"ApplicationStorage": {
"UserName": "loan-app-qa",
"Host": "loan-app-qa.documents.azure.com"
},
"CrifSettings": {
"ApiSettings": {
"EndpointUrl": "https://www-lc3cst.myappro.com/ACS/ConnectorService.svc/ConnectorService"
},
"CustomFieldMappings": {
"LoanTypeToPromoId": {
"132": "-114",
"133": "-114",
"134": "-114",
"136": "-114",
"139": "-118",
"148": "-118",
"149": "-118",
"146": "-118",
"125": "-117",
"126": "-117",
"129": "-117",
"131": "-117",
"130": "-117",
"140": "-115"
},
"CustomFieldID": {
"LicensePlateNumber": "-76",
"CountyTitled": "-96",
"MunicipalityType": "-173",
"MunicipalityWhereKept": "-174"
},
"MunicipalityTypeCode": {
"CITY": "402",
"TOWN": "403",
"VILLAGE": "404"
}
}
},
"SecuritySettings": {
"SAMLSuccessRedirectRoute": "https://applyqa.landmarkcu.com/select-loan?referrer=NCR",
"SAMLFailureRedirectRoute": "https://applyqa.landmarkcu.com/error?referrer=NCR",
"DigitalInsightPostTokenURI": "https://diapis.stg1.digitalinsight.com/v1/oauth/token"
},
"NotificationsApiConfiguration": {
"Url": "https://uat-notifications-api.apps.azure.lcu-internal.com",
"ErrorRecipients": [ "[email protected]" ]
},
"CoreSettings": {
"EndPoint": "https://uat-core-api-wrapper-api.apps.azure.lcu-internal.com/"
},
"BlobStorageConnectionSettings": {
"AccountName": "qaloanappsa"
},
"DealershipEmailSettings": {
"RedBannerMessage": "This is from the UAT test environment.",
"Recipients": [ "[email protected]", "[email protected]" ],
"ActionLink": "https://actiona6t.criflending.com/Core/Application/AppSecurity.aspx?orgCode=landmarkcu&resID=&resTypeID=-995&appID=",
"EmailAPIUrl": "https://uat-notificationsapi.lcu-internal.com/api/Email"
}
}
@@ -0,0 +1,10 @@
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component
patches:
- target:
kind: Deployment
path: set_appsettings_deployment.yaml
- target:
kind: SecretProviderClass
path: set_secrets_provider_class.yaml
@@ -0,0 +1,5 @@
- op: add
path: /spec/template/spec/containers/0/env/-
value:
name: ASPNETCORE_ENVIRONMENT
value: "Staging"
@@ -0,0 +1,7 @@
- op: add
path: /spec/parameters/userAssignedIdentityID
value: 64ba01ed-1ecc-4c9b-b56e-8d618f2b81ce
- op: add
path: /spec/parameters/keyvaultName
value: kv-lz-apps-uat-uscz
@@ -0,0 +1,14 @@
resources:
- normal
configMapGenerator:
- name: online-loan-app-api-environment-appsettings
files:
- appsettings/appsettings.json
generatorOptions:
disableNameSuffixHash: true
patches:
- target:
kind: Deployment
path: set_configmap_deployment.yaml
@@ -0,0 +1,12 @@
resources:
- ../../../base
components:
- ../component
- ../../../components/keyvaults/normal
- ../../../components/workloads/normal
patches:
- target:
kind: VirtualService
path: set_virtual_service.yaml
@@ -0,0 +1,3 @@
- op: add
path: /spec/hosts/-
value: uat-online-loan-app-api.apps.azure.lcu-internal.com
@@ -0,0 +1,12 @@
- op: add
path: /spec/template/spec/volumes/-
value:
name: volume-environment-appsettings
configMap:
name: online-loan-app-api-environment-appsettings
- op: add
path: /spec/template/spec/containers/0/volumeMounts/-
value:
name: volume-environment-appsettings
mountPath: /app/config/environment-appsettings