cloud-mta-build-tool
cloud-mta-build-tool copied to clipboard
Circular dependency on mta and mtaext issue
Hello colleagues, We are using the cf deploy command to deploy an mtar. Now the mta yaml file contains a configuration which is written in the mtaext configuration file. When we try to deploy we receive the following error:
Error resolving merged descriptor properties and parameters: Circular reference detected in "dis-cloud-broker#SBF_SERVICE_CONFIG" Process failed.
The mta file is:
ID: dis-cloud-broker _schema-version: 3.1.0 description: "dis-cloud-broker" version: 3.0.11
parameters: enable-parallel-deployments: true async-callback-timeout-in-ms: 900 # 15 Minutes top-level-domain: cloud.sap brand-subdomain: dim sbf-service-config-url: "https://dis-integration-service-${space}.${region-subdomain}.${brand-subdomain}.${top-level-domain}"
modules:
- name: dis-cloud-broker
type: nodejs
path: srv
parameters:
buildpack: https://github.com/cloudfoundry/nodejs-buildpack
routes:
- route: https://${provider-subdomain}-dis-cloud-broker-${space}.${internal-custom-subdomain}.${internal-target-domain}
memory: 128M
instances: ${instances-count}
env:
NODE_OPTIONS: --max-old-space-size=96
NODE_ENV: production
service-broker-url: https://${org}-${space}-dis-cloud-broker.${internal-target-domain}
build-parameters:
build-result: ./
builder: custom
commands:
- cp -r ../mtaext .
- npm ci
- npm run lint:ci --verbose
- npm run test:ci
ignore: [
".env*",
".git",
".gitignore",
".npm",
".prettierrc",
"cilint.xml",
"coverage",
"default-services.json",
"eslint.config.js",
"jest-unit.config.js",
"jsconfig.json",
"test"
] properties: DIS_INTEGRATION_SERVICE_INTERNAL_URL: "https://${provider-subdomain}-dis-integration-service-${space}.${internal-custom-subdomain}.${internal-target-domain}"This sets max_old_space_size based on the available memory in the instance. This avoids that instances are occasionally restarted due to memory constraints
OPTIMIZE_MEMORY: true NODE_ENV: production health-check-type: http health-check-http-endpoint: /healthSBF_SECURE_INCOMING_CONNECTIONS: true
SBF_SERVICE_MANAGER_CERTIFICATE_SUBJECT: "/C=DE/O=SAP SE/OU=SAP Cloud Platform Clients/OU=Canary/OU=svcmgr-cf-eu12/L=service-manager/CN=service-manager"
SBF_CATALOG_FILE: ${catalog-path} SBF_CREDENTIALS_PROVIDER_SERVICE: dis-xsuaa SBF_SERVICE_CONFIG: > ${catalog-service-config}
I have ommited some parameters for clarity. And our mtaext file is:
ID: dis-cloud-broker.catena-qa _schema-version: '3.1.0' extends: dis-cloud-broker
parameters: internal-target-domain: ${default-domain} internal-custom-subdomain: "dis-cloud-qa" tenant-subdomain: "*" provider-subdomain: "disquality" region-subdomain: eu12-canary loglevel: info serviceName: "decentralizedidentityserviceqa" serviceDisplayName: "Decentralized Identity Verification - Service" saasName: "db271708-8cc0-47d6-bd42-ab385bff4506" saasDisplayName: "Decentralized Identity Verification - Application" catalog-path: "./catalog/catalog-qa.json" instances-count: 2 catalog-service-config: "{"${serviceName}":{"extend_credentials":{"shared":{"vendor":"SAP"},"per_plan":{"development":{"url":"${sbf-service-config-url}"},"standard":{"url":"${sbf-service-config-url}"}}},"extend_xssecurity":{"shared":{"scopes":[{"name":"$XSMASTERAPPNAME.InvokeSaaSCallbacks","grant-as-authority-to-apps":["$XSMASTERAPPNAME(application, sap-provisioning, tenant-onboarding)"]}],"oauth2-configuration":{"credential-types":["binding-secret","x509"]}},"per_plan":{"development":{"authorities":["$XSMASTERAPPNAME.TechnicalAdmin"]},"standard":{"authorities":["$XSMASTERAPPNAME.TechnicalAdmin"]}}}}}" modules:
- name: dis-cloud-broker
requires:
- name: dis-autoscaler parameters: path: mtaext/autoscaler/autoscaler-config.json
I do not understand from where the circular dependency is coming from.
Thank you, Bruno.