UNPKG

@sap/cds-mtxs

Version:

SAP Cloud Application Programming Model - Multitenancy library

31 lines (23 loc) 1.18 kB
const cds = require('@sap/cds') const LOG = cds.log('mtx') const [major] = cds.version.split('.').map(Number) if (major < 9) throw new Error('@sap/cds-mtxs 3 requires @sap/cds version 9 or higher. Current version: ' + cds.version) const cdscDefaults = Object.fromEntries( Object.entries(cds.env.defaults?.cdsc || {}).filter(([key]) => !key.startsWith('[') ) ) require('./srv/extensibility/linter').legacyCheck() const main = require('./srv/config') if (main.env.cdsc && cds.env.requires['cds.xt.ModelProviderService']?._in_sidecar === true) { if (cds.env.cdsc && !(cds.env.requires['cds.xt.ModelProviderService']?.['use-local-cdsc-config'] === true)) { // should not be used in MTX delete cds.env.cdsc.tenantDiscriminator delete main.env.cdsc.tenantDiscriminator const stringifiedEnv = JSON.stringify(cds.env.cdsc) if (stringifiedEnv !== JSON.stringify(main.env.cdsc) && stringifiedEnv !== JSON.stringify(cdscDefaults)) { LOG.warn('inconsistent compiler configuration: using cds.cdsc configuration of root project') } cds.env.cdsc = main.env.cdsc } } else { cds.env.cdsc = main.env.cdsc }