diff --git a/ui/admin/app/controllers/scopes/scope/storage-buckets.js b/ui/admin/app/controllers/scopes/scope/storage-buckets.js new file mode 100644 index 000000000..249913c40 --- /dev/null +++ b/ui/admin/app/controllers/scopes/scope/storage-buckets.js @@ -0,0 +1,22 @@ +/** + * Copyright (c) HashiCorp, Inc. + * SPDX-License-Identifier: MPL-2.0 + */ + +import Controller from '@ember/controller'; +import { inject as service } from '@ember/service'; + +export default class ScopesScopeStorageBucketsController extends Controller { + // =services + + @service intl; + + // = attributes + /** + * Translated breadcrumb + * @type {string} + */ + get breadCrumb() { + return this.intl.t('resources.storage-bucket.title_plural'); + } +} diff --git a/ui/admin/app/routes/scopes/scope/storage-buckets.js b/ui/admin/app/routes/scopes/scope/storage-buckets.js index 6c75be9b8..6c01670d9 100644 --- a/ui/admin/app/routes/scopes/scope/storage-buckets.js +++ b/ui/admin/app/routes/scopes/scope/storage-buckets.js @@ -5,4 +5,9 @@ import Route from '@ember/routing/route'; -export default class ScopesScopeStorageBucketsRoute extends Route {} +export default class ScopesScopeStorageBucketsRoute extends Route { + model() { + // Temporary placeholder + return [{ scope_id: 'sb_123456' }]; + } +} diff --git a/ui/admin/app/routes/scopes/scope/storage-buckets/index.js b/ui/admin/app/routes/scopes/scope/storage-buckets/index.js index 57bbf4b1f..1796e2de3 100644 --- a/ui/admin/app/routes/scopes/scope/storage-buckets/index.js +++ b/ui/admin/app/routes/scopes/scope/storage-buckets/index.js @@ -5,4 +5,12 @@ import Route from '@ember/routing/route'; -export default class ScopesScopeStorageBucketsIndexRoute extends Route {} +export default class ScopesScopeStorageBucketsIndexRoute extends Route { + // =methods + + setupController(controller) { + const scope = this.modelFor('scopes.scope'); + super.setupController(...arguments); + controller.setProperties({ scope }); + } +} diff --git a/ui/admin/app/templates/scopes/scope/storage-buckets/index.hbs b/ui/admin/app/templates/scopes/scope/storage-buckets/index.hbs index 3faf92ead..ead6a3c53 100644 --- a/ui/admin/app/templates/scopes/scope/storage-buckets/index.hbs +++ b/ui/admin/app/templates/scopes/scope/storage-buckets/index.hbs @@ -1,4 +1,32 @@ {{! Copyright (c) HashiCorp, Inc. SPDX-License-Identifier: MPL-2.0 -}} \ No newline at end of file +}} + + + + + + + + {{! TODO: Add valid doc link and description}} +

+ {{t 'resources.storage-bucket.title_plural'}} + +

+
+ + + {{! TODO: Check can create ability using correct file }} + {{#if (can 'create model' this.scope collection='storage-buckets')}} + {{#if @model}} + + {{/if}} + {{/if}} + + + +
\ No newline at end of file diff --git a/ui/admin/config/environment.js b/ui/admin/config/environment.js index 24ebf82ec..7cb123ec6 100644 --- a/ui/admin/config/environment.js +++ b/ui/admin/config/environment.js @@ -117,6 +117,7 @@ module.exports = function (environment) { worker: '/workers', 'worker.manage-workers': '/workers/manage-workers-on-hcp', 'worker-filters': '/worker-filters', + 'storage-bucket': '/storage-buckets', }, }, diff --git a/ui/admin/tests/unit/controllers/scopes/scope/storage-buckets-test.js b/ui/admin/tests/unit/controllers/scopes/scope/storage-buckets-test.js new file mode 100644 index 000000000..fa69f7929 --- /dev/null +++ b/ui/admin/tests/unit/controllers/scopes/scope/storage-buckets-test.js @@ -0,0 +1,18 @@ +/** + * Copyright (c) HashiCorp, Inc. + * SPDX-License-Identifier: MPL-2.0 + */ + +import { module, test } from 'qunit'; +import { setupTest } from 'admin/tests/helpers'; + +module('Unit | Controller | scopes/scope/storage-buckets', function (hooks) { + setupTest(hooks); + + test('it exists', function (assert) { + let controller = this.owner.lookup( + 'controller:scopes/scope/storage-buckets' + ); + assert.ok(controller); + }); +});