From eec0750d8d85c2a1eaefc36c10763b5668d80561 Mon Sep 17 00:00:00 2001 From: Phil Gore Date: Fri, 10 Dec 2021 14:42:42 -0600 Subject: [PATCH] making cookiecutter an optional action based on passing in containerRunner Signed-off-by: Phil Gore --- .changeset/mighty-llamas-hope.md | 5 +++++ .../actions/builtin/createBuiltinActions.ts | 21 ++++++++++++------- .../scaffolder-backend/src/service/router.ts | 2 +- 3 files changed, 20 insertions(+), 8 deletions(-) create mode 100644 .changeset/mighty-llamas-hope.md diff --git a/.changeset/mighty-llamas-hope.md b/.changeset/mighty-llamas-hope.md new file mode 100644 index 0000000000..7ea87e50d0 --- /dev/null +++ b/.changeset/mighty-llamas-hope.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-scaffolder-backend': patch +--- + +Makes cookiecutter a default, but optional action based on if a containerRunner argument is passed in to createRouter or createBuiltinActions diff --git a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/createBuiltinActions.ts b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/createBuiltinActions.ts index d38dfe3cdc..5ecdc1d595 100644 --- a/plugins/scaffolder-backend/src/scaffolder/actions/builtin/createBuiltinActions.ts +++ b/plugins/scaffolder-backend/src/scaffolder/actions/builtin/createBuiltinActions.ts @@ -46,22 +46,17 @@ export const createBuiltinActions = (options: { reader: UrlReader; integrations: ScmIntegrations; catalogClient: CatalogApi; - containerRunner: ContainerRunner; + containerRunner?: ContainerRunner; config: Config; }) => { const { reader, integrations, containerRunner, catalogClient, config } = options; - return [ + const actions = [ createFetchPlainAction({ reader, integrations, }), - createFetchCookiecutterAction({ - reader, - integrations, - containerRunner, - }), createFetchTemplateAction({ integrations, reader, @@ -97,4 +92,16 @@ export const createBuiltinActions = (options: { integrations, }), ]; + + if (containerRunner) { + actions.push( + createFetchCookiecutterAction({ + reader, + integrations, + containerRunner, + }), + ); + } + + return actions; }; diff --git a/plugins/scaffolder-backend/src/service/router.ts b/plugins/scaffolder-backend/src/service/router.ts index b8f2968287..9d26857ab9 100644 --- a/plugins/scaffolder-backend/src/service/router.ts +++ b/plugins/scaffolder-backend/src/service/router.ts @@ -55,7 +55,7 @@ export interface RouterOptions { catalogClient: CatalogApi; actions?: TemplateAction[]; taskWorkers?: number; - containerRunner: ContainerRunner; + containerRunner?: ContainerRunner; taskBroker?: TaskBroker; }