From 5e2c6ca0fd987e0acd7b60fa1e4a66317bab32b2 Mon Sep 17 00:00:00 2001 From: Carlos Alcaide Corvo Date: Thu, 5 May 2022 07:42:02 -0700 Subject: [PATCH] =?UTF-8?q?feat:=20=F0=9F=8E=B8=20Add=20feature=20editions?= =?UTF-8?q?=20(#1094)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: 🎸 Add feature editions --- package.json | 2 ++ ui/admin/config/environment.js | 31 ++++++++++++++++++++----------- ui/admin/package.json | 2 ++ 3 files changed, 24 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index eb3a4beca..7ff6c1534 100755 --- a/package.json +++ b/package.json @@ -15,6 +15,8 @@ "scripts": { "build": "yarn build:ui:admin", "build:ui:admin": "cd ui/admin && yarn build", + "build:ui:admin:oss": "cd ui/admin && yarn build:oss", + "build:ui:admin:enterprise": "cd ui/admin && yarn build:enterprise", "build:ui:desktop": "cd ui/desktop && yarn build", "build:ui:desktop:win": "docker-compose -f docker-compose-embedding.yml run build-desktop-production && yarn build:ui:desktop:app", "build:ui:desktop:production": "cd ui/desktop && yarn build:production", diff --git a/ui/admin/config/environment.js b/ui/admin/config/environment.js index 4749feb98..4680a83c5 100644 --- a/ui/admin/config/environment.js +++ b/ui/admin/config/environment.js @@ -2,6 +2,25 @@ const APP_NAME = process.env.APP_NAME || 'Boundary'; const API_HOST = process.env.API_HOST || ''; +const EDITION = process.env.EDITION || 'oss'; // Default edition is OSS + +// Object that defines edition features. +const featureEditions = { + oss: { + 'primary-auth-method': true, + oidc: true, + 'oidc-crud': true, + 'oidc-account-crud': true, + search: false, + filter: true, + 'credential-store': true, + 'managed-groups': true, + }, +}; +featureEditions.enterprise = { + ...featureEditions.oss, + 'ssh-target': true, +}; module.exports = function (environment) { let ENV = { @@ -91,17 +110,7 @@ module.exports = function (environment) { directory: '../../addons/api/mirage', }, - featureFlags: { - 'primary-auth-method': true, - oidc: true, - 'oidc-crud': true, - 'oidc-account-crud': true, - search: false, - filter: true, - 'credential-store': true, - 'managed-groups': true, - 'ssh-target': false, - }, + featureFlags: featureEditions[EDITION], }; // Unsafe policy is necessary in development and test environments, but should diff --git a/ui/admin/package.json b/ui/admin/package.json index 8b7987e91..b714f33c7 100644 --- a/ui/admin/package.json +++ b/ui/admin/package.json @@ -13,6 +13,8 @@ "doc:toc": "doctoc README.md", "build:development": "ember build", "build": "ember build --environment=production", + "build:oss": "EDITION=oss ember build --environment=production", + "build:enterprise": "EDITION=enterprise ember build --environment=production", "lint": "npm-run-all --aggregate-output --continue-on-error --parallel 'lint:!(fix)'", "lint:fix": "npm-run-all --aggregate-output --continue-on-error --parallel lint:*:fix", "lint:hbs": "ember-template-lint .",