Skip to content

Commit 480f66b

Browse files
committed
refactor: add functions.generate util
1 parent b561b65 commit 480f66b

File tree

3 files changed

+13
-13
lines changed
  • packages/build
    • src/plugins/child
    • tests/core/fixtures/functions_generated_from_steps/.netlify/plugins/node_modules/plugin

3 files changed

+13
-13
lines changed

packages/build/src/plugins/child/run.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,9 @@ export const run = async function (
1919
return context.with(getGlobalContext(), async () => {
2020
const method = methods[event]
2121
const runState = {}
22+
const generatedFunctions = []
2223
const systemLog = getSystemLog()
23-
const utils = getUtils({ event, constants, runState })
24+
const utils = getUtils({ event, constants, generatedFunctions, runState })
2425
const netlifyConfigCopy = cloneNetlifyConfig(netlifyConfig)
2526
const runOptions = {
2627
utils,
@@ -37,12 +38,13 @@ export const run = async function (
3738
const envBefore = setEnvChanges(envChanges)
3839

3940
logPluginMethodStart(verbose)
40-
const returnValue = await method(runOptions)
41+
await method(runOptions)
4142
logPluginMethodEnd(verbose)
4243

4344
const newEnvChanges = getNewEnvChanges(envBefore, netlifyConfig, netlifyConfigCopy)
4445

4546
const configMutations = getConfigMutations(netlifyConfig, netlifyConfigCopy, event)
47+
const returnValue = generatedFunctions.length ? { generatedFunctions } : undefined
4648
return { ...runState, newEnvChanges, configMutations, returnValue }
4749
})
4850
}

packages/build/src/plugins/child/utils.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,14 @@ import { show } from './status.js'
1313
export const getUtils = function ({
1414
event,
1515
constants: { FUNCTIONS_SRC, INTERNAL_FUNCTIONS_SRC, CACHE_DIR },
16+
generatedFunctions = [],
1617
runState,
1718
}) {
1819
run.command = runCommand
1920

2021
const build = getBuildUtils(event)
2122
const cache = getCacheUtils(CACHE_DIR)
22-
const functions = getFunctionsUtils(FUNCTIONS_SRC, INTERNAL_FUNCTIONS_SRC)
23+
const functions = getFunctionsUtils(FUNCTIONS_SRC, INTERNAL_FUNCTIONS_SRC, generatedFunctions)
2324
const status = getStatusUtils(runState)
2425
const utils = { build, cache, run, functions, status }
2526
addLazyProp(utils, 'git', () => getGitUtils())
@@ -42,12 +43,13 @@ const getCacheUtils = function (CACHE_DIR) {
4243
return cacheBindOpts({ cacheDir: CACHE_DIR })
4344
}
4445

45-
const getFunctionsUtils = function (FUNCTIONS_SRC, INTERNAL_FUNCTIONS_SRC) {
46+
const getFunctionsUtils = function (FUNCTIONS_SRC, INTERNAL_FUNCTIONS_SRC, generatedFunctions) {
4647
const functionsDirectories = [INTERNAL_FUNCTIONS_SRC, FUNCTIONS_SRC].filter(Boolean)
4748
const add = (src) => functionsAdd(src, INTERNAL_FUNCTIONS_SRC, { fail: failBuild })
4849
const list = functionsList.bind(null, functionsDirectories, { fail: failBuild })
4950
const listAll = functionsListAll.bind(null, functionsDirectories, { fail: failBuild })
50-
return { add, list, listAll }
51+
const generate = (func) => generatedFunctions.push(func)
52+
return { add, list, listAll, generate }
5153
}
5254

5355
const getStatusUtils = function (runState) {

packages/build/tests/core/fixtures/functions_generated_from_steps/.netlify/plugins/node_modules/plugin/plugin.mjs

Lines changed: 4 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)