@teambit/builder 0.0.963 → 0.0.964
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/builder.service.tsx +6 -7
- package/dist/builder-env-type.d.ts +3 -4
- package/dist/builder-env-type.js.map +1 -1
- package/dist/builder.service.js +6 -7
- package/dist/builder.service.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.js +28 -15
- package/dist/index.js.map +1 -1
- package/dist/pipeline.d.ts +11 -9
- package/dist/pipeline.js +29 -26
- package/dist/pipeline.js.map +1 -1
- package/dist/{preview-1674039846300.js → preview-1674098968766.js} +2 -2
- package/dist/task.d.ts +44 -0
- package/dist/task.js +3 -0
- package/dist/task.js.map +1 -0
- package/package-tar/teambit-builder-0.0.964.tgz +0 -0
- package/package.json +17 -17
- package/package-tar/teambit-builder-0.0.963.tgz +0 -0
package/builder.service.tsx
CHANGED
|
@@ -145,25 +145,24 @@ export class BuilderService implements EnvService<BuildServiceResults, BuilderDe
|
|
|
145
145
|
}
|
|
146
146
|
|
|
147
147
|
transform(env: Env, envContext: EnvContext): BuilderTransformationMap | undefined {
|
|
148
|
-
// Old env
|
|
149
148
|
if (!env?.build) return undefined;
|
|
150
149
|
return {
|
|
151
150
|
getBuildPipe: () => {
|
|
152
151
|
// TODO: refactor after defining for an env property
|
|
153
|
-
const pipeline = env.build()
|
|
152
|
+
const pipeline = env.build();
|
|
154
153
|
if (!pipeline || !pipeline.compute) return [];
|
|
155
|
-
return pipeline?.compute();
|
|
154
|
+
return pipeline?.compute(envContext);
|
|
156
155
|
},
|
|
157
156
|
getTagPipe: () => {
|
|
158
157
|
// TODO: refactor after defining for an env property
|
|
159
|
-
const pipeline = env.snap()
|
|
158
|
+
const pipeline = env.snap();
|
|
160
159
|
if (!pipeline || !pipeline.compute) return [];
|
|
161
|
-
return pipeline?.compute();
|
|
160
|
+
return pipeline?.compute(envContext);
|
|
162
161
|
},
|
|
163
162
|
getSnapPipe: () => {
|
|
164
|
-
const pipeline = env.tag()
|
|
163
|
+
const pipeline = env.tag();
|
|
165
164
|
if (!pipeline || !pipeline.compute) return [];
|
|
166
|
-
return pipeline?.compute();
|
|
165
|
+
return pipeline?.compute(envContext);
|
|
167
166
|
},
|
|
168
167
|
}
|
|
169
168
|
}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import { EnvHandler } from "@teambit/envs";
|
|
2
1
|
import { Pipeline } from "./pipeline";
|
|
3
2
|
export interface BuilderEnv {
|
|
4
3
|
/**
|
|
5
4
|
* return a build pipeline instance.
|
|
6
5
|
*/
|
|
7
|
-
build():
|
|
6
|
+
build(): Pipeline;
|
|
8
7
|
/**
|
|
9
8
|
* return a snap pipeline instance.
|
|
10
9
|
*/
|
|
11
|
-
snap():
|
|
10
|
+
snap(): Pipeline;
|
|
12
11
|
/**
|
|
13
12
|
* return a tag pipeline instance.
|
|
14
13
|
*/
|
|
15
|
-
tag():
|
|
14
|
+
tag(): Pipeline;
|
|
16
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["builder-env-type.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"names":[],"sources":["builder-env-type.ts"],"sourcesContent":["import { Pipeline } from \"./pipeline\";\n\nexport interface BuilderEnv {\n /**\n * return a build pipeline instance.\n */\n build(): Pipeline;\n /**\n * return a snap pipeline instance.\n */\n snap(): Pipeline;\n /**\n * return a tag pipeline instance.\n */\n tag(): Pipeline;\n}\n"],"mappings":""}
|
package/dist/builder.service.js
CHANGED
|
@@ -148,25 +148,24 @@ class BuilderService {
|
|
|
148
148
|
}) => this.renderOnePipe(pipeName, tasks)));
|
|
149
149
|
}
|
|
150
150
|
transform(env, envContext) {
|
|
151
|
-
// Old env
|
|
152
151
|
if (!(env !== null && env !== void 0 && env.build)) return undefined;
|
|
153
152
|
return {
|
|
154
153
|
getBuildPipe: () => {
|
|
155
154
|
// TODO: refactor after defining for an env property
|
|
156
|
-
const pipeline = env.build()
|
|
155
|
+
const pipeline = env.build();
|
|
157
156
|
if (!pipeline || !pipeline.compute) return [];
|
|
158
|
-
return pipeline === null || pipeline === void 0 ? void 0 : pipeline.compute();
|
|
157
|
+
return pipeline === null || pipeline === void 0 ? void 0 : pipeline.compute(envContext);
|
|
159
158
|
},
|
|
160
159
|
getTagPipe: () => {
|
|
161
160
|
// TODO: refactor after defining for an env property
|
|
162
|
-
const pipeline = env.snap()
|
|
161
|
+
const pipeline = env.snap();
|
|
163
162
|
if (!pipeline || !pipeline.compute) return [];
|
|
164
|
-
return pipeline === null || pipeline === void 0 ? void 0 : pipeline.compute();
|
|
163
|
+
return pipeline === null || pipeline === void 0 ? void 0 : pipeline.compute(envContext);
|
|
165
164
|
},
|
|
166
165
|
getSnapPipe: () => {
|
|
167
|
-
const pipeline = env.tag()
|
|
166
|
+
const pipeline = env.tag();
|
|
168
167
|
if (!pipeline || !pipeline.compute) return [];
|
|
169
|
-
return pipeline === null || pipeline === void 0 ? void 0 : pipeline.compute();
|
|
168
|
+
return pipeline === null || pipeline === void 0 ? void 0 : pipeline.compute(envContext);
|
|
170
169
|
}
|
|
171
170
|
};
|
|
172
171
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["pipeNames","getBuildPipe","getTagPipe","getSnapPipe","BuilderService","constructor","isolator","logger","taskSlot","pipeNameOnEnv","displayPipeName","artifactFactory","scope","runOnce","envsExecutionContext","options","envs","map","executionContext","envDefinition","tasksQueue","calculatePipelineOrder","tasks","skipTests","validate","info","toString","title","length","longProcessLogger","createLongProcessLogger","consoleTitle","envsBuildContext","pMapSeries","componentIds","components","component","id","originalSeeders","originalSeedersOfThisEnv","filter","compId","find","seeder","isEqual","capsuleNetwork","isolateComponents","getExistingAsIs","seedersOnly","_originalSeeders","console","seedersCapsules","graphCapsules","buildContext","Object","assign","previousTasksResults","pipeName","dev","laneId","legacyScope","currentLaneId","buildPipe","BuildPipe","buildResults","execute","end","hasErrors","consoleFailure","consoleSuccess","render","env","pipes","getDescriptor","BuilderAspect","renderOnePipe","transform","envContext","build","undefined","pipeline","compute","snap","tag","task","index","keys","pipeFuncName","getTasksNamesByPipeFunc","BuildTaskHelper","serializeId","getCurrentPipeTasks"],"sources":["builder.service.tsx"],"sourcesContent":["import { EnvService, ExecutionContext, EnvDefinition, Env, EnvContext, ServiceTransformationMap } from '@teambit/envs';\nimport React from 'react';\nimport { ScopeMain } from '@teambit/scope';\nimport pMapSeries from 'p-map-series';\nimport { Text, Newline } from 'ink';\nimport { Logger } from '@teambit/logger';\nimport { IsolatorMain } from '@teambit/isolator';\nimport { Component, ComponentID } from '@teambit/component';\nimport { BuildPipe, TaskResults } from './build-pipe';\nimport { TaskResultsList } from './task-results-list';\nimport { TaskSlot } from './builder.main.runtime';\nimport { BuildContext, BuildTask, BuildTaskHelper } from './build-task';\nimport { ArtifactFactory } from './artifact';\nimport { calculatePipelineOrder } from './build-pipeline-order';\nimport { BuilderAspect } from './builder.aspect';\n\nexport type BuildServiceResults = {\n id: string;\n buildResults: TaskResultsList;\n components: Component[];\n errors?: [];\n};\n\nexport type BuilderServiceOptions = {\n seedersOnly?: boolean;\n originalSeeders?: ComponentID[];\n tasks?: string[];\n skipTests?: boolean;\n previousTasksResults?: TaskResults[];\n dev?: boolean;\n};\n\ntype BuilderTransformationMap = ServiceTransformationMap & {\n getBuildPipe: () => BuildTask[];\n getTagPipe: () => BuildTask[];\n getSnapPipe: () => BuildTask[];\n}\n\nexport type EnvsBuildContext = { [envId: string]: BuildContext };\n\nconst pipeNames = {\n getBuildPipe: 'build',\n getTagPipe: 'tag',\n getSnapPipe: 'snap',\n};\n\nexport type PipeName = 'build' | 'tag' | 'snap';\n\nexport type BuilderDescriptor = Array<{ pipeName: PipeName; tasks: string[] }>;\n\ntype PipeFunctionNames = keyof typeof pipeNames;\nexport class BuilderService implements EnvService<BuildServiceResults, BuilderDescriptor> {\n name = 'builder';\n\n constructor(\n /**\n * isolator extension.\n */\n private isolator: IsolatorMain,\n\n /**\n * logger extension.\n */\n private logger: Logger,\n\n /**\n * task slot (e.g tasks registered by other extensions.).\n */\n private taskSlot: TaskSlot,\n\n /**\n * a method with such name should be implemented on the env in order to run the pipe tasks.\n */\n private pipeNameOnEnv: PipeFunctionNames,\n\n /**\n * pipe name to display on the console during the execution\n */\n private displayPipeName: PipeName,\n private artifactFactory: ArtifactFactory,\n private scope: ScopeMain\n ) {}\n\n /**\n * runs all tasks for all envs\n */\n async runOnce(envsExecutionContext: ExecutionContext[], options: BuilderServiceOptions): Promise<TaskResultsList> {\n const envs = envsExecutionContext.map((executionContext) => executionContext.envDefinition);\n const tasksQueue = calculatePipelineOrder(\n this.taskSlot,\n envs,\n this.pipeNameOnEnv,\n options.tasks,\n options.skipTests\n );\n tasksQueue.validate();\n this.logger.info(`going to run tasks in the following order:\\n${tasksQueue.toString()}`);\n const title = `running ${this.displayPipeName} pipe for ${envs.length} environments, total ${tasksQueue.length} tasks`;\n const longProcessLogger = this.logger.createLongProcessLogger(title);\n this.logger.consoleTitle(title);\n const envsBuildContext: EnvsBuildContext = {};\n await pMapSeries(envsExecutionContext, async (executionContext) => {\n const componentIds = executionContext.components.map((component) => component.id);\n const { originalSeeders } = options;\n const originalSeedersOfThisEnv = componentIds.filter((compId) =>\n originalSeeders ? originalSeeders.find((seeder) => compId.isEqual(seeder)) : true\n );\n const capsuleNetwork = await this.isolator.isolateComponents(componentIds, {\n getExistingAsIs: true,\n seedersOnly: options.seedersOnly,\n });\n capsuleNetwork._originalSeeders = originalSeedersOfThisEnv;\n this.logger.console(\n `generated graph for env \"${executionContext.id}\", originalSeedersOfThisEnv: ${originalSeedersOfThisEnv.length}, graphOfThisEnv: ${capsuleNetwork.seedersCapsules.length}, graph total: ${capsuleNetwork.graphCapsules.length}`\n );\n const buildContext = Object.assign(executionContext, {\n capsuleNetwork,\n previousTasksResults: [],\n pipeName: this.displayPipeName,\n dev: options.dev,\n laneId: this.scope.legacyScope.currentLaneId,\n });\n envsBuildContext[executionContext.id] = buildContext;\n });\n const buildPipe = new BuildPipe(\n tasksQueue,\n envsBuildContext,\n this.logger,\n this.artifactFactory,\n options.previousTasksResults\n );\n const buildResults = await buildPipe.execute();\n longProcessLogger.end();\n buildResults.hasErrors() ? this.logger.consoleFailure() : this.logger.consoleSuccess();\n\n return buildResults;\n }\n\n render(env: EnvDefinition) {\n const pipes = this.getDescriptor(env);\n\n return (\n <Text key={BuilderAspect.id}>{pipes.map(({ pipeName, tasks }) => this.renderOnePipe(pipeName, tasks))}</Text>\n );\n }\n\n transform(env: Env, envContext: EnvContext): BuilderTransformationMap | undefined {\n // Old env\n if (!env?.build) return undefined;\n return {\n getBuildPipe: () => {\n // TODO: refactor after defining for an env property\n const pipeline = env.build()(envContext);\n if (!pipeline || !pipeline.compute) return [];\n return pipeline?.compute();\n },\n getTagPipe: () => {\n // TODO: refactor after defining for an env property\n const pipeline = env.snap()(envContext);\n if (!pipeline || !pipeline.compute) return [];\n return pipeline?.compute();\n },\n getSnapPipe: () => {\n const pipeline = env.tag()(envContext);\n if (!pipeline || !pipeline.compute) return [];\n return pipeline?.compute();\n },\n }\n }\n\n private renderOnePipe(pipeName, tasks) {\n if (!tasks || !tasks.length) return null;\n return (\n <Text key={pipeName}>\n <Text underline color=\"green\">\n {pipeName} pipe\n </Text>\n <Newline />\n <Text color=\"cyan\">total {tasks.length} tasks are configured to be executed in the following order</Text>\n <Newline />\n {tasks.map((task, index) => (\n <Text key={index}>\n <Text>\n {index + 1}. {task}\n </Text>\n <Newline />\n </Text>\n ))}\n <Newline />\n </Text>\n );\n }\n\n getDescriptor(env: EnvDefinition) {\n // @ts-ignore\n const tasks = Object.keys(pipeNames).map((pipeFuncName: PipeFunctionNames) => {\n const tasksQueue = this.getTasksNamesByPipeFunc(env, pipeFuncName);\n return { pipeName: pipeNames[pipeFuncName], tasks: tasksQueue };\n });\n return tasks as BuilderDescriptor;\n }\n\n private getTasksNamesByPipeFunc(env: EnvDefinition, pipeFuncName: PipeFunctionNames): string[] {\n const tasksQueue = calculatePipelineOrder(this.taskSlot, [env], pipeFuncName).map(({ task }) =>\n BuildTaskHelper.serializeId(task)\n );\n return tasksQueue;\n }\n\n getCurrentPipeTasks(env: EnvDefinition) {\n return this.getTasksNamesByPipeFunc(env, this.pipeNameOnEnv);\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["pipeNames","getBuildPipe","getTagPipe","getSnapPipe","BuilderService","constructor","isolator","logger","taskSlot","pipeNameOnEnv","displayPipeName","artifactFactory","scope","runOnce","envsExecutionContext","options","envs","map","executionContext","envDefinition","tasksQueue","calculatePipelineOrder","tasks","skipTests","validate","info","toString","title","length","longProcessLogger","createLongProcessLogger","consoleTitle","envsBuildContext","pMapSeries","componentIds","components","component","id","originalSeeders","originalSeedersOfThisEnv","filter","compId","find","seeder","isEqual","capsuleNetwork","isolateComponents","getExistingAsIs","seedersOnly","_originalSeeders","console","seedersCapsules","graphCapsules","buildContext","Object","assign","previousTasksResults","pipeName","dev","laneId","legacyScope","currentLaneId","buildPipe","BuildPipe","buildResults","execute","end","hasErrors","consoleFailure","consoleSuccess","render","env","pipes","getDescriptor","BuilderAspect","renderOnePipe","transform","envContext","build","undefined","pipeline","compute","snap","tag","task","index","keys","pipeFuncName","getTasksNamesByPipeFunc","BuildTaskHelper","serializeId","getCurrentPipeTasks"],"sources":["builder.service.tsx"],"sourcesContent":["import { EnvService, ExecutionContext, EnvDefinition, Env, EnvContext, ServiceTransformationMap } from '@teambit/envs';\nimport React from 'react';\nimport { ScopeMain } from '@teambit/scope';\nimport pMapSeries from 'p-map-series';\nimport { Text, Newline } from 'ink';\nimport { Logger } from '@teambit/logger';\nimport { IsolatorMain } from '@teambit/isolator';\nimport { Component, ComponentID } from '@teambit/component';\nimport { BuildPipe, TaskResults } from './build-pipe';\nimport { TaskResultsList } from './task-results-list';\nimport { TaskSlot } from './builder.main.runtime';\nimport { BuildContext, BuildTask, BuildTaskHelper } from './build-task';\nimport { ArtifactFactory } from './artifact';\nimport { calculatePipelineOrder } from './build-pipeline-order';\nimport { BuilderAspect } from './builder.aspect';\n\nexport type BuildServiceResults = {\n id: string;\n buildResults: TaskResultsList;\n components: Component[];\n errors?: [];\n};\n\nexport type BuilderServiceOptions = {\n seedersOnly?: boolean;\n originalSeeders?: ComponentID[];\n tasks?: string[];\n skipTests?: boolean;\n previousTasksResults?: TaskResults[];\n dev?: boolean;\n};\n\ntype BuilderTransformationMap = ServiceTransformationMap & {\n getBuildPipe: () => BuildTask[];\n getTagPipe: () => BuildTask[];\n getSnapPipe: () => BuildTask[];\n}\n\nexport type EnvsBuildContext = { [envId: string]: BuildContext };\n\nconst pipeNames = {\n getBuildPipe: 'build',\n getTagPipe: 'tag',\n getSnapPipe: 'snap',\n};\n\nexport type PipeName = 'build' | 'tag' | 'snap';\n\nexport type BuilderDescriptor = Array<{ pipeName: PipeName; tasks: string[] }>;\n\ntype PipeFunctionNames = keyof typeof pipeNames;\nexport class BuilderService implements EnvService<BuildServiceResults, BuilderDescriptor> {\n name = 'builder';\n\n constructor(\n /**\n * isolator extension.\n */\n private isolator: IsolatorMain,\n\n /**\n * logger extension.\n */\n private logger: Logger,\n\n /**\n * task slot (e.g tasks registered by other extensions.).\n */\n private taskSlot: TaskSlot,\n\n /**\n * a method with such name should be implemented on the env in order to run the pipe tasks.\n */\n private pipeNameOnEnv: PipeFunctionNames,\n\n /**\n * pipe name to display on the console during the execution\n */\n private displayPipeName: PipeName,\n private artifactFactory: ArtifactFactory,\n private scope: ScopeMain\n ) {}\n\n /**\n * runs all tasks for all envs\n */\n async runOnce(envsExecutionContext: ExecutionContext[], options: BuilderServiceOptions): Promise<TaskResultsList> {\n const envs = envsExecutionContext.map((executionContext) => executionContext.envDefinition);\n const tasksQueue = calculatePipelineOrder(\n this.taskSlot,\n envs,\n this.pipeNameOnEnv,\n options.tasks,\n options.skipTests\n );\n tasksQueue.validate();\n this.logger.info(`going to run tasks in the following order:\\n${tasksQueue.toString()}`);\n const title = `running ${this.displayPipeName} pipe for ${envs.length} environments, total ${tasksQueue.length} tasks`;\n const longProcessLogger = this.logger.createLongProcessLogger(title);\n this.logger.consoleTitle(title);\n const envsBuildContext: EnvsBuildContext = {};\n await pMapSeries(envsExecutionContext, async (executionContext) => {\n const componentIds = executionContext.components.map((component) => component.id);\n const { originalSeeders } = options;\n const originalSeedersOfThisEnv = componentIds.filter((compId) =>\n originalSeeders ? originalSeeders.find((seeder) => compId.isEqual(seeder)) : true\n );\n const capsuleNetwork = await this.isolator.isolateComponents(componentIds, {\n getExistingAsIs: true,\n seedersOnly: options.seedersOnly,\n });\n capsuleNetwork._originalSeeders = originalSeedersOfThisEnv;\n this.logger.console(\n `generated graph for env \"${executionContext.id}\", originalSeedersOfThisEnv: ${originalSeedersOfThisEnv.length}, graphOfThisEnv: ${capsuleNetwork.seedersCapsules.length}, graph total: ${capsuleNetwork.graphCapsules.length}`\n );\n const buildContext = Object.assign(executionContext, {\n capsuleNetwork,\n previousTasksResults: [],\n pipeName: this.displayPipeName,\n dev: options.dev,\n laneId: this.scope.legacyScope.currentLaneId,\n });\n envsBuildContext[executionContext.id] = buildContext;\n });\n const buildPipe = new BuildPipe(\n tasksQueue,\n envsBuildContext,\n this.logger,\n this.artifactFactory,\n options.previousTasksResults\n );\n const buildResults = await buildPipe.execute();\n longProcessLogger.end();\n buildResults.hasErrors() ? this.logger.consoleFailure() : this.logger.consoleSuccess();\n\n return buildResults;\n }\n\n render(env: EnvDefinition) {\n const pipes = this.getDescriptor(env);\n\n return (\n <Text key={BuilderAspect.id}>{pipes.map(({ pipeName, tasks }) => this.renderOnePipe(pipeName, tasks))}</Text>\n );\n }\n\n transform(env: Env, envContext: EnvContext): BuilderTransformationMap | undefined {\n if (!env?.build) return undefined;\n return {\n getBuildPipe: () => {\n // TODO: refactor after defining for an env property\n const pipeline = env.build();\n if (!pipeline || !pipeline.compute) return [];\n return pipeline?.compute(envContext);\n },\n getTagPipe: () => {\n // TODO: refactor after defining for an env property\n const pipeline = env.snap();\n if (!pipeline || !pipeline.compute) return [];\n return pipeline?.compute(envContext);\n },\n getSnapPipe: () => {\n const pipeline = env.tag();\n if (!pipeline || !pipeline.compute) return [];\n return pipeline?.compute(envContext);\n },\n }\n }\n\n private renderOnePipe(pipeName, tasks) {\n if (!tasks || !tasks.length) return null;\n return (\n <Text key={pipeName}>\n <Text underline color=\"green\">\n {pipeName} pipe\n </Text>\n <Newline />\n <Text color=\"cyan\">total {tasks.length} tasks are configured to be executed in the following order</Text>\n <Newline />\n {tasks.map((task, index) => (\n <Text key={index}>\n <Text>\n {index + 1}. {task}\n </Text>\n <Newline />\n </Text>\n ))}\n <Newline />\n </Text>\n );\n }\n\n getDescriptor(env: EnvDefinition) {\n // @ts-ignore\n const tasks = Object.keys(pipeNames).map((pipeFuncName: PipeFunctionNames) => {\n const tasksQueue = this.getTasksNamesByPipeFunc(env, pipeFuncName);\n return { pipeName: pipeNames[pipeFuncName], tasks: tasksQueue };\n });\n return tasks as BuilderDescriptor;\n }\n\n private getTasksNamesByPipeFunc(env: EnvDefinition, pipeFuncName: PipeFunctionNames): string[] {\n const tasksQueue = calculatePipelineOrder(this.taskSlot, [env], pipeFuncName).map(({ task }) =>\n BuildTaskHelper.serializeId(task)\n );\n return tasksQueue;\n }\n\n getCurrentPipeTasks(env: EnvDefinition) {\n return this.getTasksNamesByPipeFunc(env, this.pipeNameOnEnv);\n }\n}\n"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
+
export { ArtifactVinyl } from '@teambit/legacy/dist/consumer/component/sources/artifact';
|
|
1
2
|
export { BuildPipe, TaskResults } from './build-pipe';
|
|
2
3
|
export { ComponentResult, TaskMetadata } from './types';
|
|
3
4
|
export { BuildContext, BuildTask, BuiltTaskResult, TaskLocation, BuildTaskHelper, CAPSULE_ARTIFACTS_DIR, } from './build-task';
|
|
4
5
|
export type { PipeName } from './builder.service';
|
|
5
6
|
export type { BuilderMain, RawBuilderData, BuilderData, OnTagOpts } from './builder.main.runtime';
|
|
6
|
-
export { Pipeline,
|
|
7
|
+
export { Pipeline, TaskHandler } from './pipeline';
|
|
7
8
|
export type { PipelineReport } from './build-pipeline-result-list';
|
|
8
9
|
export type { BuilderEnv } from './builder-env-type';
|
|
9
10
|
export { BuilderAspect } from './builder.aspect';
|
|
10
11
|
export { WholeArtifactStorageResolver, FileStorageResolver, ArtifactStorageResolver } from './storage';
|
|
11
12
|
export { Artifact, ArtifactList, ArtifactFactory, ArtifactDefinition, ArtifactModelDefinition } from './artifact';
|
|
13
|
+
export { Task } from './task';
|
|
12
14
|
export { TaskResultsList } from './task-results-list';
|
|
13
|
-
export { ArtifactVinyl } from '@teambit/legacy/dist/consumer/component/sources/artifact';
|
package/dist/index.js
CHANGED
|
@@ -6,31 +6,31 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
Object.defineProperty(exports, "Artifact", {
|
|
7
7
|
enumerable: true,
|
|
8
8
|
get: function () {
|
|
9
|
-
return
|
|
9
|
+
return _artifact2().Artifact;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
12
|
Object.defineProperty(exports, "ArtifactDefinition", {
|
|
13
13
|
enumerable: true,
|
|
14
14
|
get: function () {
|
|
15
|
-
return
|
|
15
|
+
return _artifact2().ArtifactDefinition;
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
18
|
Object.defineProperty(exports, "ArtifactFactory", {
|
|
19
19
|
enumerable: true,
|
|
20
20
|
get: function () {
|
|
21
|
-
return
|
|
21
|
+
return _artifact2().ArtifactFactory;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
24
|
Object.defineProperty(exports, "ArtifactList", {
|
|
25
25
|
enumerable: true,
|
|
26
26
|
get: function () {
|
|
27
|
-
return
|
|
27
|
+
return _artifact2().ArtifactList;
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
30
|
Object.defineProperty(exports, "ArtifactModelDefinition", {
|
|
31
31
|
enumerable: true,
|
|
32
32
|
get: function () {
|
|
33
|
-
return
|
|
33
|
+
return _artifact2().ArtifactModelDefinition;
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
36
|
Object.defineProperty(exports, "ArtifactStorageResolver", {
|
|
@@ -42,7 +42,7 @@ Object.defineProperty(exports, "ArtifactStorageResolver", {
|
|
|
42
42
|
Object.defineProperty(exports, "ArtifactVinyl", {
|
|
43
43
|
enumerable: true,
|
|
44
44
|
get: function () {
|
|
45
|
-
return
|
|
45
|
+
return _artifact().ArtifactVinyl;
|
|
46
46
|
}
|
|
47
47
|
});
|
|
48
48
|
Object.defineProperty(exports, "BuildContext", {
|
|
@@ -108,7 +108,13 @@ Object.defineProperty(exports, "Pipeline", {
|
|
|
108
108
|
Object.defineProperty(exports, "Task", {
|
|
109
109
|
enumerable: true,
|
|
110
110
|
get: function () {
|
|
111
|
-
return
|
|
111
|
+
return _task().Task;
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
Object.defineProperty(exports, "TaskHandler", {
|
|
115
|
+
enumerable: true,
|
|
116
|
+
get: function () {
|
|
117
|
+
return _pipeline().TaskHandler;
|
|
112
118
|
}
|
|
113
119
|
});
|
|
114
120
|
Object.defineProperty(exports, "TaskLocation", {
|
|
@@ -141,6 +147,13 @@ Object.defineProperty(exports, "WholeArtifactStorageResolver", {
|
|
|
141
147
|
return _storage().WholeArtifactStorageResolver;
|
|
142
148
|
}
|
|
143
149
|
});
|
|
150
|
+
function _artifact() {
|
|
151
|
+
const data = require("@teambit/legacy/dist/consumer/component/sources/artifact");
|
|
152
|
+
_artifact = function () {
|
|
153
|
+
return data;
|
|
154
|
+
};
|
|
155
|
+
return data;
|
|
156
|
+
}
|
|
144
157
|
function _buildPipe() {
|
|
145
158
|
const data = require("./build-pipe");
|
|
146
159
|
_buildPipe = function () {
|
|
@@ -183,23 +196,23 @@ function _storage() {
|
|
|
183
196
|
};
|
|
184
197
|
return data;
|
|
185
198
|
}
|
|
186
|
-
function
|
|
199
|
+
function _artifact2() {
|
|
187
200
|
const data = require("./artifact");
|
|
188
|
-
|
|
201
|
+
_artifact2 = function () {
|
|
189
202
|
return data;
|
|
190
203
|
};
|
|
191
204
|
return data;
|
|
192
205
|
}
|
|
193
|
-
function
|
|
194
|
-
const data = require("./task
|
|
195
|
-
|
|
206
|
+
function _task() {
|
|
207
|
+
const data = require("./task");
|
|
208
|
+
_task = function () {
|
|
196
209
|
return data;
|
|
197
210
|
};
|
|
198
211
|
return data;
|
|
199
212
|
}
|
|
200
|
-
function
|
|
201
|
-
const data = require("
|
|
202
|
-
|
|
213
|
+
function _taskResultsList() {
|
|
214
|
+
const data = require("./task-results-list");
|
|
215
|
+
_taskResultsList = function () {
|
|
203
216
|
return data;
|
|
204
217
|
};
|
|
205
218
|
return data;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export { BuildPipe, TaskResults } from './build-pipe';\nexport { ComponentResult, TaskMetadata } from './types';\nexport {\n BuildContext,\n BuildTask,\n BuiltTaskResult,\n TaskLocation,\n BuildTaskHelper,\n CAPSULE_ARTIFACTS_DIR,\n} from './build-task';\nexport type { PipeName } from './builder.service';\nexport type { BuilderMain, RawBuilderData, BuilderData, OnTagOpts } from './builder.main.runtime';\nexport { Pipeline,
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export { ArtifactVinyl } from '@teambit/legacy/dist/consumer/component/sources/artifact';\nexport { BuildPipe, TaskResults } from './build-pipe';\nexport { ComponentResult, TaskMetadata } from './types';\nexport {\n BuildContext,\n BuildTask,\n BuiltTaskResult,\n TaskLocation,\n BuildTaskHelper,\n CAPSULE_ARTIFACTS_DIR,\n} from './build-task';\nexport type { PipeName } from './builder.service';\nexport type { BuilderMain, RawBuilderData, BuilderData, OnTagOpts } from './builder.main.runtime';\nexport { Pipeline, TaskHandler } from './pipeline';\nexport type { PipelineReport } from './build-pipeline-result-list';\nexport type { BuilderEnv } from './builder-env-type';\nexport { BuilderAspect } from './builder.aspect';\nexport { WholeArtifactStorageResolver, FileStorageResolver, ArtifactStorageResolver } from './storage';\nexport { Artifact, ArtifactList, ArtifactFactory, ArtifactDefinition, ArtifactModelDefinition } from './artifact';\nexport { Task } from './task';\nexport { TaskResultsList } from './task-results-list';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAUA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAGA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AACA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA"}
|
package/dist/pipeline.d.ts
CHANGED
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import { BuildTask } from "@teambit/builder";
|
|
2
2
|
import { EnvContext, EnvHandler } from "@teambit/envs";
|
|
3
|
-
|
|
3
|
+
import { Task } from './task';
|
|
4
|
+
export declare type TaskHandler = {
|
|
5
|
+
handler: EnvHandler<Task>;
|
|
6
|
+
name: string;
|
|
7
|
+
};
|
|
4
8
|
/**
|
|
5
9
|
* create and maintain build pipelines for component
|
|
6
10
|
* dev environments.
|
|
7
11
|
*/
|
|
8
12
|
export declare class Pipeline {
|
|
9
13
|
private _tasks;
|
|
10
|
-
|
|
11
|
-
constructor(_tasks: BuildTask[], context: EnvContext);
|
|
14
|
+
constructor(_tasks: TaskHandler[]);
|
|
12
15
|
/**
|
|
13
16
|
* list all tasks in the build pipeline.
|
|
14
17
|
*/
|
|
15
|
-
get tasks():
|
|
18
|
+
get tasks(): TaskHandler[];
|
|
16
19
|
private initiateTasks;
|
|
17
20
|
/**
|
|
18
21
|
* add a build task to the pipeline.
|
|
19
22
|
*/
|
|
20
|
-
add(tasks:
|
|
23
|
+
add(tasks: TaskHandler[]): this;
|
|
21
24
|
/**
|
|
22
25
|
* remove a build task from the pipeline.
|
|
23
26
|
*/
|
|
@@ -25,7 +28,7 @@ export declare class Pipeline {
|
|
|
25
28
|
/**
|
|
26
29
|
* replace a build task in the pipeline.
|
|
27
30
|
*/
|
|
28
|
-
replace(tasks:
|
|
31
|
+
replace(tasks: TaskHandler[]): this;
|
|
29
32
|
/**
|
|
30
33
|
* return a new pipeline with the tasks from the pipeline args added.
|
|
31
34
|
* @param pipeline
|
|
@@ -35,7 +38,6 @@ export declare class Pipeline {
|
|
|
35
38
|
/**
|
|
36
39
|
* compute the pipeline.
|
|
37
40
|
*/
|
|
38
|
-
compute(): BuildTask[];
|
|
39
|
-
static from(tasks:
|
|
40
|
-
static concat(...pipelines: EnvHandler<Pipeline>[]): EnvHandler<Pipeline>;
|
|
41
|
+
compute(context: EnvContext): BuildTask[];
|
|
42
|
+
static from(tasks: TaskHandler[]): Pipeline;
|
|
41
43
|
}
|
package/dist/pipeline.js
CHANGED
|
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.Pipeline = void 0;
|
|
7
|
-
function
|
|
8
|
-
const data = require("
|
|
9
|
-
|
|
7
|
+
function _lodash() {
|
|
8
|
+
const data = require("lodash");
|
|
9
|
+
_lodash = function () {
|
|
10
10
|
return data;
|
|
11
11
|
};
|
|
12
12
|
return data;
|
|
@@ -16,9 +16,8 @@ function _envs() {
|
|
|
16
16
|
* dev environments.
|
|
17
17
|
*/
|
|
18
18
|
class Pipeline {
|
|
19
|
-
constructor(_tasks
|
|
19
|
+
constructor(_tasks) {
|
|
20
20
|
this._tasks = _tasks;
|
|
21
|
-
this.context = context;
|
|
22
21
|
}
|
|
23
22
|
|
|
24
23
|
/**
|
|
@@ -27,18 +26,26 @@ class Pipeline {
|
|
|
27
26
|
get tasks() {
|
|
28
27
|
return this._tasks;
|
|
29
28
|
}
|
|
30
|
-
initiateTasks(tasks) {
|
|
31
|
-
|
|
32
|
-
return task(
|
|
29
|
+
initiateTasks(tasks, context, envId) {
|
|
30
|
+
const _tasks = tasks.map(task => {
|
|
31
|
+
return task.handler(context);
|
|
33
32
|
});
|
|
33
|
+
const buildTasks = _tasks.map(task => {
|
|
34
|
+
// @ts-ignore
|
|
35
|
+
const aspectId = task.aspectId || envId;
|
|
36
|
+
const buildTask = Object.assign((0, _lodash().clone)(task), {
|
|
37
|
+
aspectId
|
|
38
|
+
});
|
|
39
|
+
return buildTask;
|
|
40
|
+
});
|
|
41
|
+
return buildTasks;
|
|
34
42
|
}
|
|
35
43
|
|
|
36
44
|
/**
|
|
37
45
|
* add a build task to the pipeline.
|
|
38
46
|
*/
|
|
39
47
|
add(tasks) {
|
|
40
|
-
|
|
41
|
-
this._tasks = this._tasks.concat(buildTasks);
|
|
48
|
+
this._tasks = this._tasks.concat(tasks);
|
|
42
49
|
return this;
|
|
43
50
|
}
|
|
44
51
|
|
|
@@ -55,8 +62,7 @@ class Pipeline {
|
|
|
55
62
|
* replace a build task in the pipeline.
|
|
56
63
|
*/
|
|
57
64
|
replace(tasks) {
|
|
58
|
-
|
|
59
|
-
this.remove(buildTasks.map(task => task.name));
|
|
65
|
+
this.remove(tasks.map(task => task.name));
|
|
60
66
|
this.add(tasks);
|
|
61
67
|
return this;
|
|
62
68
|
}
|
|
@@ -67,28 +73,25 @@ class Pipeline {
|
|
|
67
73
|
* @returns
|
|
68
74
|
*/
|
|
69
75
|
concat(pipeline) {
|
|
70
|
-
return new Pipeline(this._tasks.concat(pipeline.tasks)
|
|
76
|
+
return new Pipeline(this._tasks.concat(pipeline.tasks));
|
|
71
77
|
}
|
|
72
78
|
|
|
73
79
|
/**
|
|
74
80
|
* compute the pipeline.
|
|
75
81
|
*/
|
|
76
|
-
compute() {
|
|
77
|
-
|
|
82
|
+
compute(context) {
|
|
83
|
+
const buildTasks = this.initiateTasks(this._tasks, context, context.envId.toString());
|
|
84
|
+
return buildTasks;
|
|
78
85
|
}
|
|
79
86
|
static from(tasks) {
|
|
80
|
-
return
|
|
81
|
-
const buildTasks = tasks.map(taskFn => {
|
|
82
|
-
return taskFn(context);
|
|
83
|
-
});
|
|
84
|
-
return new Pipeline(buildTasks, context);
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
static concat(...pipelines) {
|
|
88
|
-
return (0, _envs().reduceServiceHandlersFactories)(pipelines, (acc, pipeline) => {
|
|
89
|
-
return acc.concat(pipeline);
|
|
90
|
-
});
|
|
87
|
+
return new Pipeline(tasks);
|
|
91
88
|
}
|
|
89
|
+
|
|
90
|
+
// static concat(...pipelines: EnvHandler<Pipeline>[]) {
|
|
91
|
+
// return reduceServiceHandlersFactories(pipelines, (acc, pipeline) => {
|
|
92
|
+
// return acc.concat(pipeline);
|
|
93
|
+
// });
|
|
94
|
+
// }
|
|
92
95
|
}
|
|
93
96
|
exports.Pipeline = Pipeline;
|
|
94
97
|
|
package/dist/pipeline.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Pipeline","constructor","_tasks","
|
|
1
|
+
{"version":3,"names":["Pipeline","constructor","_tasks","tasks","initiateTasks","context","envId","map","task","handler","buildTasks","aspectId","buildTask","Object","assign","clone","add","concat","remove","taskNames","filter","includes","name","replace","pipeline","compute","toString","from"],"sources":["pipeline.ts"],"sourcesContent":["import { BuildTask } from \"@teambit/builder\";\nimport { EnvContext, EnvHandler } from \"@teambit/envs\";\nimport { clone } from \"lodash\";\nimport { Task } from './task';\n\nexport type TaskHandler = {\n handler: EnvHandler<Task>;\n name: string;\n}\n\n/**\n * create and maintain build pipelines for component\n * dev environments.\n */\nexport class Pipeline {\n constructor(\n private _tasks: TaskHandler[],\n ) {}\n\n /**\n * list all tasks in the build pipeline.\n */\n get tasks() {\n return this._tasks;\n }\n\n private initiateTasks(tasks: TaskHandler[], context: EnvContext, envId: string) {\n const _tasks = tasks.map((task) => {\n return task.handler(context);\n });\n\n const buildTasks: BuildTask[] = _tasks.map((task) => {\n // @ts-ignore\n const aspectId = task.aspectId || envId;\n const buildTask: BuildTask = Object.assign(clone(task), {aspectId});\n return buildTask;\n });\n\n return buildTasks;\n }\n\n /**\n * add a build task to the pipeline.\n */\n add(tasks: TaskHandler[]) {\n this._tasks = this._tasks.concat(tasks);\n return this;\n }\n\n /**\n * remove a build task from the pipeline.\n */\n remove(taskNames: string[]) {\n this._tasks = this._tasks.filter((task) => {\n return taskNames.includes(task.name);\n });\n }\n\n /**\n * replace a build task in the pipeline.\n */\n replace(tasks: TaskHandler[]) {\n this.remove(tasks.map((task) => task.name));\n this.add(tasks);\n return this;\n }\n\n /**\n * return a new pipeline with the tasks from the pipeline args added.\n * @param pipeline\n * @returns\n */\n concat(pipeline: Pipeline) {\n return new Pipeline(this._tasks.concat(pipeline.tasks));\n }\n\n /**\n * compute the pipeline.\n */\n compute(context: EnvContext): BuildTask[] {\n const buildTasks = this.initiateTasks(this._tasks, context, context.envId.toString());\n return buildTasks;\n }\n\n static from(tasks: TaskHandler[]) {\n return new Pipeline(tasks);\n }\n\n // static concat(...pipelines: EnvHandler<Pipeline>[]) {\n // return reduceServiceHandlersFactories(pipelines, (acc, pipeline) => {\n // return acc.concat(pipeline);\n // });\n // }\n}\n"],"mappings":";;;;;;AAEA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAQA;AACA;AACA;AACA;AACO,MAAMA,QAAQ,CAAC;EACpBC,WAAW,CACDC,MAAqB,EAC7B;IAAA,KADQA,MAAqB,GAArBA,MAAqB;EAC5B;;EAEH;AACF;AACA;EACE,IAAIC,KAAK,GAAG;IACV,OAAO,IAAI,CAACD,MAAM;EACpB;EAEQE,aAAa,CAACD,KAAoB,EAAEE,OAAmB,EAAEC,KAAa,EAAE;IAC9E,MAAMJ,MAAM,GAAGC,KAAK,CAACI,GAAG,CAAEC,IAAI,IAAK;MACjC,OAAOA,IAAI,CAACC,OAAO,CAACJ,OAAO,CAAC;IAC9B,CAAC,CAAC;IAEF,MAAMK,UAAuB,GAAGR,MAAM,CAACK,GAAG,CAAEC,IAAI,IAAK;MACnD;MACA,MAAMG,QAAQ,GAAGH,IAAI,CAACG,QAAQ,IAAIL,KAAK;MACvC,MAAMM,SAAoB,GAAGC,MAAM,CAACC,MAAM,CAAC,IAAAC,eAAK,EAACP,IAAI,CAAC,EAAE;QAACG;MAAQ,CAAC,CAAC;MACnE,OAAOC,SAAS;IAClB,CAAC,CAAC;IAEF,OAAOF,UAAU;EACnB;;EAEA;AACF;AACA;EACEM,GAAG,CAACb,KAAoB,EAAE;IACxB,IAAI,CAACD,MAAM,GAAG,IAAI,CAACA,MAAM,CAACe,MAAM,CAACd,KAAK,CAAC;IACvC,OAAO,IAAI;EACb;;EAEA;AACF;AACA;EACEe,MAAM,CAACC,SAAmB,EAAE;IAC1B,IAAI,CAACjB,MAAM,GAAG,IAAI,CAACA,MAAM,CAACkB,MAAM,CAAEZ,IAAI,IAAK;MACzC,OAAOW,SAAS,CAACE,QAAQ,CAACb,IAAI,CAACc,IAAI,CAAC;IACtC,CAAC,CAAC;EACJ;;EAEA;AACF;AACA;EACEC,OAAO,CAACpB,KAAoB,EAAE;IAC5B,IAAI,CAACe,MAAM,CAACf,KAAK,CAACI,GAAG,CAAEC,IAAI,IAAKA,IAAI,CAACc,IAAI,CAAC,CAAC;IAC3C,IAAI,CAACN,GAAG,CAACb,KAAK,CAAC;IACf,OAAO,IAAI;EACb;;EAEA;AACF;AACA;AACA;AACA;EACEc,MAAM,CAACO,QAAkB,EAAE;IACzB,OAAO,IAAIxB,QAAQ,CAAC,IAAI,CAACE,MAAM,CAACe,MAAM,CAACO,QAAQ,CAACrB,KAAK,CAAC,CAAC;EACzD;;EAEA;AACF;AACA;EACEsB,OAAO,CAACpB,OAAmB,EAAe;IACxC,MAAMK,UAAU,GAAG,IAAI,CAACN,aAAa,CAAC,IAAI,CAACF,MAAM,EAAEG,OAAO,EAAEA,OAAO,CAACC,KAAK,CAACoB,QAAQ,EAAE,CAAC;IACrF,OAAOhB,UAAU;EACnB;EAEA,OAAOiB,IAAI,CAACxB,KAAoB,EAAE;IAChC,OAAO,IAAIH,QAAQ,CAACG,KAAK,CAAC;EAC5B;;EAEA;EACA;EACA;EACA;EACA;AACF;AAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.pipelines_builder@0.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.pipelines_builder@0.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.pipelines_builder@0.0.964/dist/builder.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.pipelines_builder@0.0.964/dist/builder.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
package/dist/task.d.ts
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { BuildContext, BuiltTaskResult } from "./build-task";
|
|
2
|
+
import { TaskResultsList } from "./task-results-list";
|
|
3
|
+
/**
|
|
4
|
+
* this is the external interface for task. please make
|
|
5
|
+
* sure to use only this interface outside of this builder
|
|
6
|
+
* aspect.
|
|
7
|
+
*/
|
|
8
|
+
export interface Task {
|
|
9
|
+
/**
|
|
10
|
+
* names ideally with dashes 'typescript'
|
|
11
|
+
*/
|
|
12
|
+
name: string;
|
|
13
|
+
/**
|
|
14
|
+
* description of what the task does.
|
|
15
|
+
*/
|
|
16
|
+
description?: string;
|
|
17
|
+
/**
|
|
18
|
+
* execute a task in a build context
|
|
19
|
+
*/
|
|
20
|
+
execute(context: BuildContext): Promise<BuiltTaskResult>;
|
|
21
|
+
/**
|
|
22
|
+
* run before the build pipeline has started. this is useful when some preparation are needed to
|
|
23
|
+
* be done on all envs before the build starts.
|
|
24
|
+
* e.g. typescript compiler needs to write the tsconfig file. doing it during the task, will
|
|
25
|
+
* cause dependencies from other envs to get this tsconfig written.
|
|
26
|
+
*/
|
|
27
|
+
preBuild?(context: BuildContext): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* run after the build pipeline completed for all envs. useful for doing some cleanup on the
|
|
30
|
+
* capsules before the deployment starts.
|
|
31
|
+
*/
|
|
32
|
+
postBuild?(context: BuildContext, tasksResults: TaskResultsList): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* needed if you want the task to be running only after the dependencies were completed
|
|
35
|
+
* for *all* envs.
|
|
36
|
+
* normally this is not needed because the build-pipeline runs the tasks in the same order
|
|
37
|
+
* they're located in the `getBuildPipe()` array and according to the task.location.
|
|
38
|
+
* the case where this is useful is when a task not only needs to be after another task, but also
|
|
39
|
+
* after all environments were running that task.
|
|
40
|
+
* a dependency is task.aspectId. if an aspect has multiple tasks, to be more specific, use
|
|
41
|
+
* "aspectId:name", e.g. "teambit.compilation/compiler:TypescriptCompiler".
|
|
42
|
+
*/
|
|
43
|
+
dependencies?: string[];
|
|
44
|
+
}
|
package/dist/task.js
ADDED
package/dist/task.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["task.ts"],"sourcesContent":["import { BuildContext, BuiltTaskResult } from \"./build-task\";\nimport { TaskResultsList } from \"./task-results-list\";\n\n/**\n * this is the external interface for task. please make\n * sure to use only this interface outside of this builder\n * aspect.\n */\nexport interface Task {\n /**\n * names ideally with dashes 'typescript'\n */\n name: string;\n\n /**\n * description of what the task does.\n */\n description?: string;\n\n /**\n * execute a task in a build context\n */\n execute(context: BuildContext): Promise<BuiltTaskResult>;\n\n /**\n * run before the build pipeline has started. this is useful when some preparation are needed to\n * be done on all envs before the build starts.\n * e.g. typescript compiler needs to write the tsconfig file. doing it during the task, will\n * cause dependencies from other envs to get this tsconfig written.\n */\n preBuild?(context: BuildContext): Promise<void>;\n\n /**\n * run after the build pipeline completed for all envs. useful for doing some cleanup on the\n * capsules before the deployment starts.\n */\n postBuild?(context: BuildContext, tasksResults: TaskResultsList): Promise<void>;\n\n /**\n * needed if you want the task to be running only after the dependencies were completed\n * for *all* envs.\n * normally this is not needed because the build-pipeline runs the tasks in the same order\n * they're located in the `getBuildPipe()` array and according to the task.location.\n * the case where this is useful is when a task not only needs to be after another task, but also\n * after all environments were running that task.\n * a dependency is task.aspectId. if an aspect has multiple tasks, to be more specific, use\n * \"aspectId:name\", e.g. \"teambit.compilation/compiler:TypescriptCompiler\".\n */\n dependencies?: string[];\n}\n"],"mappings":""}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/builder",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.964",
|
|
4
4
|
"homepage": "https://bit.dev/teambit/pipelines/builder",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.pipelines",
|
|
8
8
|
"name": "builder",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.964"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"p-map-series": "2.1.0",
|
|
@@ -26,20 +26,20 @@
|
|
|
26
26
|
"@babel/runtime": "7.20.0",
|
|
27
27
|
"@teambit/graph.cleargraph": "0.0.1",
|
|
28
28
|
"@teambit/harmony": "0.4.6",
|
|
29
|
-
"@teambit/component": "0.0.
|
|
30
|
-
"@teambit/envs": "0.0.
|
|
31
|
-
"@teambit/logger": "0.0.
|
|
32
|
-
"@teambit/tester": "0.0.
|
|
33
|
-
"@teambit/isolator": "0.0.
|
|
34
|
-
"@teambit/lane-id": "0.0.
|
|
35
|
-
"@teambit/cli": "0.0.
|
|
36
|
-
"@teambit/workspace": "0.0.
|
|
37
|
-
"@teambit/aspect-loader": "0.0.
|
|
38
|
-
"@teambit/aspect": "0.0.
|
|
39
|
-
"@teambit/generator": "0.0.
|
|
40
|
-
"@teambit/graphql": "0.0.
|
|
41
|
-
"@teambit/scope": "0.0.
|
|
42
|
-
"@teambit/express": "0.0.
|
|
29
|
+
"@teambit/component": "0.0.964",
|
|
30
|
+
"@teambit/envs": "0.0.964",
|
|
31
|
+
"@teambit/logger": "0.0.740",
|
|
32
|
+
"@teambit/tester": "0.0.964",
|
|
33
|
+
"@teambit/isolator": "0.0.964",
|
|
34
|
+
"@teambit/lane-id": "0.0.164",
|
|
35
|
+
"@teambit/cli": "0.0.647",
|
|
36
|
+
"@teambit/workspace": "0.0.964",
|
|
37
|
+
"@teambit/aspect-loader": "0.0.964",
|
|
38
|
+
"@teambit/aspect": "0.0.964",
|
|
39
|
+
"@teambit/generator": "0.0.964",
|
|
40
|
+
"@teambit/graphql": "0.0.964",
|
|
41
|
+
"@teambit/scope": "0.0.964",
|
|
42
|
+
"@teambit/express": "0.0.745",
|
|
43
43
|
"@teambit/bit-error": "0.0.402",
|
|
44
44
|
"@teambit/component-id": "0.0.425"
|
|
45
45
|
},
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"@teambit/pipelines.aspect-docs.builder": "0.0.151"
|
|
59
59
|
},
|
|
60
60
|
"peerDependencies": {
|
|
61
|
-
"@teambit/legacy": "1.0.
|
|
61
|
+
"@teambit/legacy": "1.0.427",
|
|
62
62
|
"react": "^16.8.0 || ^17.0.0",
|
|
63
63
|
"react-dom": "^16.8.0 || ^17.0.0"
|
|
64
64
|
},
|
|
Binary file
|