Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
14 changes: 14 additions & 0 deletions workspaces/extensions/.changeset/hot-trains-develop.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
'@red-hat-developer-hub/backstage-plugin-catalog-backend-module-extensions': minor
'@red-hat-developer-hub/backstage-plugin-extensions-backend': minor
'@red-hat-developer-hub/backstage-plugin-extensions-common': minor
'@red-hat-developer-hub/backstage-plugin-extensions': minor
'@red-hat-developer-hub/extensions-cli': minor
---

Renamed plugins from marketplace to extensions

- Renamed all packages from `backstage-plugin-marketplace-*` to `backstage-plugin-extensions-*`
- Updated all internal references, exports, and API endpoints
- lazy load codeEditor to reduce the frontend plugin bundle size
- Made catalog entities directory path configurable via `extensions.directory` in app-config.yaml with fallback to `extensions` and `marketplace` directories
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
workspace=marketplace
workspace=extensions

# This variables defines the rhdh and dynamic-plugins-root paths.
#
Expand Down Expand Up @@ -36,25 +36,25 @@ add-frontend-to-rhdh:
@echo
@echo Will build and install ${workspace} frontend into ${rhdh}
@echo
cd plugins/marketplace && npx --yes @red-hat-developer-hub/cli plugin export --dynamic-plugins-root "${dproot}" --clean "${clean}" --dev "${dev}"
cd plugins/extensions && npx --yes @red-hat-developer-hub/cli plugin export --dynamic-plugins-root "${dproot}" --clean "${clean}" --dev "${dev}"

add-backend-to-rhdh:
@echo
@echo Will build and install ${workspace} backend into ${rhdh}
@echo
cd plugins/marketplace-backend && npx --yes @red-hat-developer-hub/cli plugin export --dynamic-plugins-root "${dproot}" --clean "${clean}" --dev "${dev}"
cd plugins/extensions-backend && npx --yes @red-hat-developer-hub/cli plugin export --dynamic-plugins-root "${dproot}" --clean "${clean}" --dev "${dev}"

add-catalog-modules-to-rhdh:
@echo
@echo Will build and install catalog modules into ${rhdh}
@echo
cd plugins/catalog-backend-module-marketplace && npx --yes @red-hat-developer-hub/cli plugin export --dynamic-plugins-root "${dproot}" --clean "${clean}" --dev "${dev}" --embed-package "@red-hat-developer-hub/backstage-plugin-marketplace-common"
cd plugins/catalog-backend-module-extensions && npx --yes @red-hat-developer-hub/cli plugin export --dynamic-plugins-root "${dproot}" --clean "${clean}" --dev "${dev}" --embed-package "@red-hat-developer-hub/backstage-plugin-extensions-common"

copy-config-to-rhdh:
@echo
@echo Copy app-config.dynamic.yaml into ${rhdh}
@echo
cp app-config.dynamic.yaml "${rhdh}/app-config-marketplace.local.yaml"
cp app-config.dynamic.yaml "${rhdh}/app-config-extensions.local.yaml"
@echo
@echo You can start your rhdh now with
@echo
Expand All @@ -65,6 +65,6 @@ remove-from-rhdh:
@echo
@echo Remove packages from ${rhdh}
@echo
rm -rf "${dproot}/red-hat-developer-hub-backstage-plugin-marketplace"
rm -rf "${dproot}/red-hat-developer-hub-backstage-plugin-marketplace-backend-dynamic"
rm -rf "${dproot}/red-hat-developer-hub-backstage-plugin-catalog-backend-module-marketplace-dynamic"
rm -rf "${dproot}/red-hat-developer-hub-backstage-plugin-extensions"
rm -rf "${dproot}/red-hat-developer-hub-backstage-plugin-extensions-backend-dynamic"
rm -rf "${dproot}/red-hat-developer-hub-backstage-plugin-catalog-backend-module-extensions-dynamic"
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ Navigate to Extensions on the bottom left.

### Entity Types

The marketplace supports three main entity types defined in YAML:
The extensions plugin supports three main entity types defined in YAML:

#### Plugin Configuration

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/collections
url: {{baseURL}}/api/extensions/collections
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/collection/default/featured-plugins
url: {{baseURL}}/api/extensions/collection/default/featured-plugins
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/collections/facets?facet=metadata.name&facet=metadata.namespace
url: {{baseURL}}/api/extensions/collections/facets?facet=metadata.name&facet=metadata.namespace
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/collections?filter=metadata.name=featured-plugins
url: {{baseURL}}/api/extensions/collections?filter=metadata.name=featured-plugins
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/collection/default/featured-plugins/plugins
url: {{baseURL}}/api/extensions/collection/default/featured-plugins/plugins
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/packages
url: {{baseURL}}/api/extensions/packages
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/package/default/backstage-community-plugin-tekton
url: {{baseURL}}/api/extensions/package/default/backstage-community-plugin-tekton
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/packages/facets?facet=metadata.name&facet=metadata.namespace
url: {{baseURL}}/api/extensions/packages/facets?facet=metadata.name&facet=metadata.namespace
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/packages?filter=metadata.name=doesnotexist
url: {{baseURL}}/api/extensions/packages?filter=metadata.name=doesnotexist
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/plugins
url: {{baseURL}}/api/extensions/plugins
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/plugin/default/tekton
url: {{baseURL}}/api/extensions/plugin/default/tekton
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/plugins/facets?facet=metadata.name&facet=metadata.namespace&facet=metadata.annotations.extensions.backstage.io/certified-by
url: {{baseURL}}/api/extensions/plugins/facets?facet=metadata.name&facet=metadata.namespace&facet=metadata.annotations.extensions.backstage.io/certified-by
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/plugins?filter=metadata.name=3scale
url: {{baseURL}}/api/extensions/plugins?filter=metadata.name=3scale
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ meta {
}

get {
url: {{baseURL}}/api/marketplace/plugin/default/tekton/packages
url: {{baseURL}}/api/extensions/plugin/default/tekton/packages
body: none
auth: bearer
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,7 @@ permission:
- extensions

extensions:
# directory: ../../examples # YAML files are in the examples directory
### Example for how to enable installation to a file.
# installation:
# enabled: true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

In alignment to [Backstage BEP-0009: Plugin Metadata](https://github.com/backstage/backstage/blob/master/beps/0009-plugin-metadata/README.md):

- [Plugins](./plugins.md) are the Marketplace 'user facing' entities with a title, icon and markdown description. A plugin contains one mor more packages or modules.
- [Plugins](./plugins.md) are the Extensions 'user facing' entities with a title, icon and markdown description. A plugin contains one mor more packages or modules.
- [Packages](./packages.md) are installable npm packages. This includes frontend, backend plugins and modules.
- [Collections](./collections.md) are curated lists for plugins.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ metadata:
name: comprehensive-plugin-package
title: Comprehensive Plugin Package
description: A fully configured package example
namespace: marketplace
namespace: extensions
annotations:
extensions.backstage.io/pre-installed: 'true'
labels:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,23 +50,23 @@ g, user:default/<login-id/user-name>, role:default/team_a

### Installation

1. Install the marketplace plugins:
1. Install the extensions plugins:

```bash
yarn add @red-hat-developer-hub/backstage-plugin-marketplace
yarn add @red-hat-developer-hub/backstage-plugin-marketplace-backend
yarn add @red-hat-developer-hub/backstage-plugin-catalog-backend-module-marketplace
yarn add @red-hat-developer-hub/backstage-plugin-extensions
yarn add @red-hat-developer-hub/backstage-plugin-extensions-backend
yarn add @red-hat-developer-hub/backstage-plugin-catalog-backend-module-extensions
```

2. Add the backend plugin to your `packages/backend/src/index.ts`:

```typescript
backend.add(
import('@red-hat-developer-hub/backstage-plugin-marketplace-backend'),
import('@red-hat-developer-hub/backstage-plugin-extensions-backend'),
);
backend.add(
import(
'@red-hat-developer-hub/backstage-plugin-catalog-backend-module-marketplace'
'@red-hat-developer-hub/backstage-plugin-catalog-backend-module-extensions'
),
);
```
Expand Down Expand Up @@ -98,13 +98,13 @@ yarn install
yarn start
```

Navigate to [http://localhost:3000/extensions](http://localhost:3000/extensions) to access the marketplace.
Navigate to [http://localhost:3000/extensions](http://localhost:3000/extensions) to access the extensions catalog.

## Configuration

### Entity Types

The marketplace supports three main entity types defined in YAML:
The extensions plugin supports three main entity types defined in YAML:

#### Plugin Configuration

Expand Down Expand Up @@ -147,6 +147,6 @@ spec:

## Tools

The marketplace workspace includes additional tools to help manage plugin entities:
The extensions workspace includes additional tools to help manage plugin entities:

- **[Marketplace CLI](./tools/cli.md)**: Command-line tool for initializing, generating, verifying, and exporting marketplace entities
- **[Extensions CLI](./tools/cli.md)**: Command-line tool for initializing, generating, verifying, and exporting extensions entities
Loading