Skip to content
View as Markdown
View as Markdown

@salesforce/b2c-tooling-sdk / cli / CartridgeProvider

Interface: CartridgeProvider

Defined in: packages/b2c-tooling-sdk/src/cli/cartridge-providers.ts:45

Provider interface for custom cartridge discovery.

Plugins can implement this interface to provide cartridges from custom sources such as remote Git repos, manifest files, or other locations.

Example

typescript
const manifestProvider: CartridgeProvider = {
  name: 'manifest-provider',
  priority: 'before',
  async findCartridges(options) {
    const manifest = JSON.parse(await fs.readFile('cartridges.json', 'utf-8'));
    return manifest.cartridges.map(c => ({
      name: c.name,
      src: path.resolve(c.path),
      dest: c.name,
    }));
  },
};

Properties

name

readonly name: string

Defined in: packages/b2c-tooling-sdk/src/cli/cartridge-providers.ts:47

Unique name for this provider (used for logging)


priority

readonly priority: "before" | "after"

Defined in: packages/b2c-tooling-sdk/src/cli/cartridge-providers.ts:54

Priority relative to default provider.

  • 'before': Runs first, can provide cartridges that override defaults
  • 'after': Runs after defaults, adds additional cartridges

Methods

findCartridges()

findCartridges(options): Promise<CartridgeMapping[]>

Defined in: packages/b2c-tooling-sdk/src/cli/cartridge-providers.ts:62

Find cartridges from this provider.

Parameters

options

CartridgeDiscoveryOptions

Discovery options including directory, filters, and instance context

Returns

Promise<CartridgeMapping[]>

Array of cartridge mappings, or empty array if no cartridges available

Released under the Apache-2.0 License.