SUSE/stratos

View on GitHub
angular.json

Summary

Maintainability
Test Coverage
{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "newProjectRoot": "src/frontend/packages",
  "projects": {
    "stratos": {
      "root": "src/frontend/packages",
      "sourceRoot": "src/frontend/packages",
      "projectType": "application",
      "architect": {
        "build": {
          "builder": "@angular-builders/custom-webpack:browser",
          "options": {
            "allowedCommonJsDependencies": [
              "moment-timezone",
              "js-yaml",
              "webcola",
              "dagre",
              "lodash/isEqual",
              "ajv",
              "lodash/filter",
              "lodash/map",
              "lodash/uniqueId",
              "lodash/cloneDeep"
            ],
            "customWebpackConfig": {
              "path": "./dist-devkit/build/main.js"
            },
            "indexTransform": "./dist-devkit/build/index.transform.js",
            "preserveSymlinks": true,
            "outputPath": "dist",
            "index": "src/frontend/packages/core/src/index.html",
            "main": "src/frontend/packages/core/src/main.ts",
            "tsConfig": "src/frontend/packages/core/tsconfig.app.json",
            "polyfills": "src/frontend/packages/core/src/polyfills.ts",
            "assets": [
              "src/frontend/packages/core/assets",
              {
                "glob": "**/*",
                "input": "custom-src/frontend/assets/custom",
                "output": "/core/assets/custom"
              },
              "src/frontend/packages/core/favicon.ico",
              {
                "glob": "**/*",
                "input": "node_modules/ngx-monaco-editor/assets/monaco",
                "output": "/core/assets/monaco"
              },
              {
                "glob": "**/*",
                "input": "node_modules/@cfstratos/monaco-yaml/lib",
                "output": "/core/assets/monaco/vs/language/yaml"
              }
            ],
            "styles": [
              "src/frontend/packages/core/src/styles.scss",
              "node_modules/xterm/css/xterm.css"
            ],
            "scripts": []
          },
          "configurations": {
            "production": {
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "namedChunks": false,
              "aot": true,
              "extractLicenses": true,
              "vendorChunk": false,
              "buildOptimizer": true,
              "fileReplacements": [{
                "replace": "src/frontend/packages/core/src/environments/environment.ts",
                "with": "src/frontend/packages/core/src/environments/environment.prod.ts"
              }]
            },
            "desktop": {
              "optimization": false,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "namedChunks": false,
              "aot": false,
              "extractLicenses": true,
              "vendorChunk": false,
              "buildOptimizer": false,
              "fileReplacements": [{
                "replace": "src/frontend/packages/core/src/environments/environment.ts",
                "with": "src/frontend/packages/core/src/environments/environment.desktop.ts"
              }]
            }

          }
        },
        "serve": {
          "builder": "@angular-builders/custom-webpack:dev-server",
          "options": {
            "aot": true,
            "sslCert": "dev-ssl/server.crt",
            "proxyConfig": "proxy.conf.js",
            "ssl": true,
            "sslKey": "dev-ssl/server.key",
            "browserTarget": "stratos:build"
          },
          "configurations": {
            "production": {
              "browserTarget": "stratos:build:production"
            },
            "desktop": {
              "browserTarget": "stratos:build:desktop"
            }
          }
        },
        "extract-i18n": {
          "builder": "@angular-devkit/build-angular:extract-i18n",
          "options": {
            "browserTarget": "stratos:build"
          }
        }
      }
    },
    "stratos-e2e": {
      "root": "e2e",
      "sourceRoot": "",
      "projectType": "application",
      "architect": {
        "e2e": {
          "builder": "@angular-devkit/build-angular:protractor",
          "options": {
            "protractorConfig": "./protractor.conf.js",
            "devServerTarget": "stratos:serve"
          }
        }
      }
    },
    "theme": {
      "root": "src/frontend/packages/theme/",
      "sourceRoot": "",
      "projectType": "library",
      "architect": {
        "build": {
          "builder": "./dist-devkit:stratos-theme",
          "options": {
            "outputPath": "dist/theme"
          }
        }
      }
    },
    "core": {
      "root": "src/frontend/packages/core/",
      "sourceRoot": "src/frontend/packages/core",
      "projectType": "library",
      "prefix": "app",
      "schematics": {},
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-ng-packagr:build",
          "options": {
            "preserveSymlinks": true,
            "outputPath": "dist/core",
            "index": "src/frontend/packages/core/src/index.html",
            "main": "src/frontend/packages/core/src/main.ts",
            "polyfills": "src/frontend/packages/core/src/polyfills.ts",
            "tsConfig": "src/frontend/packages/core/tsconfig.app.json",
            "assets": [],
            "styles": [],
            "scripts": []
          },
          "configurations": {
            "production": {
              "budgets": [{
                "type": "anyComponentStyle",
                "maximumWarning": "6kb"
              }],
              "fileReplacements": [{
                "replace": "src/frontend/packages/core/src/environments/environment.ts",
                "with": "src/frontend/packages/core/src/environments/environment.prod.ts"
              }],
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "namedChunks": false,
              "aot": true,
              "extractLicenses": true,
              "vendorChunk": false,
              "buildOptimizer": true
            }
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "preserveSymlinks": true,
            "main": "src/frontend/packages/core/src/test.ts",
            "polyfills": "src/frontend/packages/core/src/polyfills.ts",
            "tsConfig": "src/frontend/packages/core/tsconfig.spec.json",
            "karmaConfig": "src/frontend/packages/core/karma.conf.js",
            "styles": [
              "src/frontend/packages/core/src/styles.css"
            ],
            "scripts": [],
            "assets": [
              "src/frontend/packages/core/src/favicon.ico",
              {
                "glob": "**/*",
                "input": "src/frontend/packages/core/assets",
                "output": "/core/assets/custom"
              },
              {
                "glob": "**/*",
                "input": "custom-src/frontend/assets/custom",
                "output": "/core/assets/custom"
              }
            ]
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "src/tsconfig.json"
            ],
            "tslintConfig": "src/frontend/packages/core/tslint.json",
            "files": [
              "src/frontend/packages/core/src/**/*.ts"
            ]
          }
        }
      }
    },
    "store": {
      "root": "src/frontend/packages/store",
      "sourceRoot": "src/frontend/packages/store/src",
      "projectType": "library",
      "prefix": "lib",
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-ng-packagr:build",
          "options": {
            "tsConfig": "src/frontend/packages/store/tsconfig.lib.json",
            "project": "src/frontend/packages/store/ng-package.json"
          },
          "configurations": {
            "production": {
              "tsConfig": "src/frontend/packages/store/tsconfig.lib.prod.json"
            }
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/frontend/packages/store/src/test.ts",
            "tsConfig": "src/frontend/packages/store/tsconfig.spec.json",
            "karmaConfig": "src/frontend/packages/store/karma.conf.js"
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "src/tsconfig.json"
            ],
            "tslintConfig": "src/frontend/packages/store/tslint.json",
            "files": [
              "src/frontend/packages/store/src/**/*.ts"
            ]
          }
        }
      }
    },
    "shared": {
      "root": "src/frontend/packages/shared",
      "sourceRoot": "src/frontend/packages/shared/src",
      "projectType": "library",
      "prefix": "lib",
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-ng-packagr:build",
          "options": {
            "tsConfig": "src/frontend/packages/shared/tsconfig.lib.json",
            "project": "src/frontend/packages/shared/ng-package.json"
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/frontend/packages/shared/src/test.ts",
            "tsConfig": "src/frontend/packages/shared/tsconfig.spec.json",
            "karmaConfig": "src/frontend/packages/shared/karma.conf.js"
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": ["src/tsconfig.json"],
            "tslintConfig": "src/frontend/packages/shared/tslint.json",
            "files": ["src/frontend/packages/shared/src/**/*.ts"]
          }
        }
      }
    },
    "cloud-foundry": {
      "root": "src/frontend/packages/cloud-foundry",
      "sourceRoot": "src/frontend/packages/cloud-foundry/src",
      "projectType": "library",
      "prefix": "lib",
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-ng-packagr:build",
          "options": {
            "tsConfig": "src/frontend/packages/cloud-foundry/tsconfig.lib.json",
            "project": "src/frontend/packages/cloud-foundry/ng-package.json"
          },
          "configurations": {
            "production": {
              "tsConfig": "src/frontend/packages/cloud-foundry/tsconfig.lib.prod.json"
            }
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/frontend/packages/cloud-foundry/src/test.ts",
            "tsConfig": "src/frontend/packages/cloud-foundry/tsconfig.spec.json",
            "karmaConfig": "src/frontend/packages/cloud-foundry/karma.conf.js"
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "src/tsconfig.json"
            ],
            "tslintConfig": "src/frontend/packages/cloud-foundry/tslint.json",
            "files": [
              "src/frontend/packages/cloud-foundry/src/**/*.ts"
            ]
          }
        }
      }
    },
    "cf-autoscaler": {
      "root": "src/frontend/packages/cf-autoscaler",
      "sourceRoot": "src/frontend/packages/cf-autoscaler/src",
      "projectType": "library",
      "prefix": "lib",
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-ng-packagr:build",
          "options": {
            "tsConfig": "src/frontend/packages/cf-autoscaler/tsconfig.lib.json",
            "project": "src/frontend/packages/cf-autoscaler/ng-package.json"
          },
          "configurations": {
            "production": {
              "tsConfig": "src/frontend/packages/cf-autoscaler/tsconfig.lib.prod.json"
            }
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/frontend/packages/cf-autoscaler/src/test.ts",
            "tsConfig": "src/frontend/packages/cf-autoscaler/tsconfig.spec.json",
            "karmaConfig": "src/frontend/packages/cf-autoscaler/karma.conf.js"
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "src/tsconfig.json"
            ],
            "tslintConfig": "src/frontend/packages/cf-autoscaler/tslint.json",
            "files": [
              "src/frontend/packages/cf-autoscaler/src/**/*.ts"
            ]
          }
        }
      }
    },
    "extensions": {
      "root": "src/frontend/packages/suse-extensions",
      "sourceRoot": "src/frontend/packages/suse-extensions/src",
      "projectType": "library",
      "prefix": "lib",
      "architect": {
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/frontend/packages/suse-extensions/src/test.ts",
            "tsConfig": "src/frontend/packages/suse-extensions/tsconfig.spec.json",
            "karmaConfig": "src/frontend/packages/suse-extensions/karma.conf.js"
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "src/tsconfig.json"
            ],
            "tslintConfig": "src/frontend/packages/suse-extensions/tslint.json",
            "files": [
              "src/frontend/packages/suse-extensions/src/**/*.ts"
            ]
          }
        }
      }
    },
    "kubernetes": {
      "root": "src/frontend/packages/kubernetes",
      "sourceRoot": "src/frontend/packages/kubernetes/src",
      "projectType": "library",
      "prefix": "lib",
      "architect": {
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/frontend/packages/kubernetes/src/test.ts",
            "tsConfig": "src/frontend/packages/kubernetes/tsconfig.spec.json",
            "karmaConfig": "src/frontend/packages/kubernetes/karma.conf.js"
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "src/tsconfig.json"
            ],
            "tslintConfig": "src/frontend/packages/kubernetes/tslint.json",
            "files": [
              "src/frontend/packages/kubernetes/src/**/*.ts"
            ]
          }
        }
      }
    },
    "git": {
      "root": "src/frontend/packages/git",
      "sourceRoot": "src/frontend/packages/git/src",
      "projectType": "library",
      "prefix": "lib",
      "architect": {
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/frontend/packages/git/src/test.ts",
            "tsConfig": "src/frontend/packages/git/tsconfig.spec.json",
            "karmaConfig": "src/frontend/packages/git/karma.conf.js"
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "src/tsconfig.json"
            ],
            "tslintConfig": "src/frontend/packages/git/tslint.json",
            "files": [
              "src/frontend/packages/git/src/**/*.ts"
            ]
          }
        }
      }
    }

  },
  "defaultProject": "stratos",
  "schematics": {
    "@schematics/angular:component": {
      "prefix": "app",
      "style": "scss"
    },
    "@schematics/angular:directive": {
      "prefix": "app"
    }
  }
}