diff --git a/ui/app/app.js b/ui/app/app.js index 23f2396edb..1f17e4ce66 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -48,6 +48,24 @@ export default class App extends Application { }, }, }, + pki: { + dependencies: { + services: [ + 'auth', + 'flash-messages', + 'namespace', + 'path-help', + 'router', + 'store', + 'version', + 'wizard', + 'secret-mount-path', + ], + externalRoutes: { + secrets: 'vault.cluster.secrets.backends', + }, + }, + }, }; } diff --git a/ui/app/router.js b/ui/app/router.js index 0640b2b520..e59a5c6d7c 100644 --- a/ui/app/router.js +++ b/ui/app/router.js @@ -114,6 +114,9 @@ Router.map(function () { this.route('backends', { path: '/' }); this.route('backend', { path: '/:backend' }, function () { this.mount('kmip'); + if (config.environment !== 'production') { + this.mount('pki'); + } this.route('index', { path: '/' }); this.route('configuration'); // because globs / params can't be empty, diff --git a/ui/lib/pki/addon/engine.js b/ui/lib/pki/addon/engine.js new file mode 100644 index 0000000000..ad42b0c9dd --- /dev/null +++ b/ui/lib/pki/addon/engine.js @@ -0,0 +1,29 @@ +import Engine from '@ember/engine'; + +import loadInitializers from 'ember-load-initializers'; +import Resolver from 'ember-resolver'; + +import config from './config/environment'; + +const { modulePrefix } = config; + +export default class PkiEngine extends Engine { + modulePrefix = modulePrefix; + Resolver = Resolver; + dependencies = { + services: [ + 'auth', + 'flash-messages', + 'namespace', + 'path-help', + 'router', + 'store', + 'version', + 'wizard', + 'secret-mount-path', + ], + externalRoutes: ['secrets'], + }; +} + +loadInitializers(PkiEngine, modulePrefix); diff --git a/ui/lib/pki/addon/routes.js b/ui/lib/pki/addon/routes.js new file mode 100644 index 0000000000..a254402ed6 --- /dev/null +++ b/ui/lib/pki/addon/routes.js @@ -0,0 +1,5 @@ +import buildRoutes from 'ember-engines/routes'; + +export default buildRoutes(function () { + this.route('overview'); +}); diff --git a/ui/lib/pki/addon/routes/overview.js b/ui/lib/pki/addon/routes/overview.js new file mode 100644 index 0000000000..4befb5bc89 --- /dev/null +++ b/ui/lib/pki/addon/routes/overview.js @@ -0,0 +1,3 @@ +import Route from '@ember/routing/route'; + +export default class OverviewRoute extends Route {} diff --git a/ui/lib/pki/addon/templates/application.hbs b/ui/lib/pki/addon/templates/application.hbs new file mode 100644 index 0000000000..e2147cab02 --- /dev/null +++ b/ui/lib/pki/addon/templates/application.hbs @@ -0,0 +1 @@ +{{outlet}} \ No newline at end of file diff --git a/ui/lib/pki/addon/templates/overview.hbs b/ui/lib/pki/addon/templates/overview.hbs new file mode 100644 index 0000000000..560b7a964c --- /dev/null +++ b/ui/lib/pki/addon/templates/overview.hbs @@ -0,0 +1 @@ +Overview WIP \ No newline at end of file diff --git a/ui/lib/pki/app/routes/overview.js b/ui/lib/pki/app/routes/overview.js new file mode 100644 index 0000000000..20de976a68 --- /dev/null +++ b/ui/lib/pki/app/routes/overview.js @@ -0,0 +1 @@ +export { default } from 'pki/routes/overview'; diff --git a/ui/lib/pki/app/templates/overview.js b/ui/lib/pki/app/templates/overview.js new file mode 100644 index 0000000000..442d3cc1d0 --- /dev/null +++ b/ui/lib/pki/app/templates/overview.js @@ -0,0 +1 @@ +export { default } from 'pki/templates/overview'; diff --git a/ui/lib/pki/config/environment.js b/ui/lib/pki/config/environment.js new file mode 100644 index 0000000000..9d47f12d12 --- /dev/null +++ b/ui/lib/pki/config/environment.js @@ -0,0 +1,11 @@ +/* eslint-env node */ +'use strict'; + +module.exports = function (environment) { + let ENV = { + modulePrefix: 'pki', + environment, + }; + + return ENV; +}; diff --git a/ui/lib/pki/index.js b/ui/lib/pki/index.js new file mode 100644 index 0000000000..29837b151d --- /dev/null +++ b/ui/lib/pki/index.js @@ -0,0 +1,12 @@ +/* eslint-disable node/no-extraneous-require */ +const { buildEngine } = require('ember-engines/lib/engine-addon'); + +module.exports = buildEngine({ + name: 'pki', + lazyLoading: { + enabled: false, + }, + isDevelopingAddon() { + return true; + }, +}); diff --git a/ui/lib/pki/package.json b/ui/lib/pki/package.json new file mode 100644 index 0000000000..85e8445646 --- /dev/null +++ b/ui/lib/pki/package.json @@ -0,0 +1,16 @@ +{ + "name": "pki", + "keywords": [ + "ember-addon", + "ember-engine" + ], + "dependencies": { + "ember-cli-htmlbars": "*", + "ember-cli-babel": "*" + }, + "ember-addon": { + "paths": [ + "../core" + ] + } +} diff --git a/ui/package.json b/ui/package.json index 2ddb2012d9..ec62070df6 100644 --- a/ui/package.json +++ b/ui/package.json @@ -213,6 +213,7 @@ "lib/css", "lib/kmip", "lib/open-api-explorer", + "lib/pki", "lib/replication", "lib/service-worker-authenticated-download" ]