@teambit/builder 1.0.330 → 1.0.331

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.
@@ -39,9 +39,9 @@ function _component() {
39
39
  };
40
40
  return data;
41
41
  }
42
- function _utils() {
43
- const data = require("@teambit/legacy/dist/utils");
44
- _utils = function () {
42
+ function _legacy() {
43
+ const data = require("@teambit/legacy.utils");
44
+ _legacy = function () {
45
45
  return data;
46
46
  };
47
47
  return data;
@@ -79,7 +79,7 @@ const DEFAULT_CONTEXT = exports.DEFAULT_CONTEXT = 'component';
79
79
  class ArtifactFactory {
80
80
  resolvePaths(root, def) {
81
81
  const patternsFlattened = (0, _lodash().flatten)(def.globPatterns);
82
- const patternsFlattenedLinux = patternsFlattened.map(_utils().pathNormalizeToLinux);
82
+ const patternsFlattenedLinux = patternsFlattened.map(_legacy().pathNormalizeToLinux);
83
83
  const paths = _globby().default.sync(patternsFlattenedLinux, {
84
84
  cwd: root
85
85
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_path","data","require","_globby","_interopRequireDefault","_lodash","_artifactFiles","_component","_utils","_storage","_artifactList","_exceptions","_fsArtifact","e","__esModule","default","DEFAULT_CONTEXT","exports","ArtifactFactory","resolvePaths","root","def","patternsFlattened","flatten","globPatterns","patternsFlattenedLinux","map","pathNormalizeToLinux","paths","globby","sync","cwd","getArtifactContextPath","context","component","artifactContext","getArtifactContext","capsulePath","capsuleNetwork","graphCapsules","getCapsule","id","path","CapsuleNotFound","capsulesRootDir","createFromComponent","task","contextPath","rootDir","getRootDir","length","undefined","FsArtifact","ArtifactFiles","getStorageResolver","storageResolver","DefaultResolver","toComponentMap","artifactMap","ComponentMap","as","components","toString","artifacts","filter","targetId","artifact","ArtifactList","fromArray","join","generate","defs","tupleArr","forEach","capsuleDir","push"],"sources":["artifact-factory.ts"],"sourcesContent":["import { join } from 'path';\nimport globby from 'globby';\nimport { flatten } from 'lodash';\nimport { ArtifactFiles } from '@teambit/legacy/dist/consumer/component/sources/artifact-files';\nimport { Component, ComponentMap } from '@teambit/component';\nimport { pathNormalizeToLinux } from '@teambit/legacy/dist/utils';\nimport { PathLinux } from '@teambit/legacy/dist/utils/path';\nimport { ArtifactDefinition } from './artifact-definition';\nimport { DefaultResolver } from '../storage';\nimport { ArtifactList } from './artifact-list';\nimport type { BuildContext, BuildTask } from '../build-task';\nimport { CapsuleNotFound } from '../exceptions';\nimport { FsArtifact } from './fs-artifact';\n\nexport const DEFAULT_CONTEXT = 'component';\n\nexport type ArtifactMap = ComponentMap<ArtifactList<FsArtifact>>;\n\nexport class ArtifactFactory {\n resolvePaths(root: string, def: ArtifactDefinition): string[] {\n const patternsFlattened = flatten(def.globPatterns);\n const patternsFlattenedLinux: PathLinux[] = patternsFlattened.map(pathNormalizeToLinux);\n const paths = globby.sync(patternsFlattenedLinux, { cwd: root });\n return paths;\n }\n\n private getArtifactContextPath(context: BuildContext, component: Component, def: ArtifactDefinition) {\n const artifactContext = this.getArtifactContext(def);\n if (artifactContext === 'component') {\n const capsulePath = context.capsuleNetwork.graphCapsules.getCapsule(component.id)?.path;\n if (!capsulePath) throw new CapsuleNotFound(component.id);\n return capsulePath;\n }\n\n return context.capsuleNetwork.capsulesRootDir;\n }\n\n private getArtifactContext(def: ArtifactDefinition) {\n return def.context || DEFAULT_CONTEXT;\n }\n\n createFromComponent(\n context: BuildContext,\n component: Component,\n def: ArtifactDefinition,\n task: BuildTask\n ): FsArtifact | undefined {\n const contextPath = this.getArtifactContextPath(context, component, def);\n const rootDir = this.getRootDir(contextPath, def);\n const paths = this.resolvePaths(rootDir, def);\n if (!paths || !paths.length) {\n return undefined;\n }\n return new FsArtifact(def, new ArtifactFiles(paths), task, rootDir);\n }\n\n private getStorageResolver(def: ArtifactDefinition) {\n return def.storageResolver || new DefaultResolver();\n }\n\n private toComponentMap(context: BuildContext, artifactMap: [string, FsArtifact][]) {\n return ComponentMap.as<ArtifactList<FsArtifact>>(context.components, (component) => {\n const id = component.id.toString();\n const artifacts = artifactMap.filter(([targetId]) => targetId === id).map(([, artifact]) => artifact);\n\n return ArtifactList.fromArray(artifacts);\n });\n }\n\n getRootDir(rootDir: string, def: ArtifactDefinition) {\n if (!def.rootDir) return rootDir;\n return join(rootDir, def.rootDir);\n }\n\n /**\n * generate artifacts from a build context according to the spec defined in the artifact definitions.\n */\n generate(context: BuildContext, defs: ArtifactDefinition[], task: BuildTask): ComponentMap<ArtifactList<FsArtifact>> {\n const tupleArr: [string, FsArtifact][] = [];\n\n defs.forEach((def) => {\n const artifactContext = this.getArtifactContext(def);\n if (artifactContext === 'env') {\n const capsuleDir = context.capsuleNetwork.capsulesRootDir;\n const rootDir = this.getRootDir(capsuleDir, def);\n const paths = this.resolvePaths(rootDir, def);\n if (paths && paths.length) {\n const artifact = new FsArtifact(def, new ArtifactFiles(this.resolvePaths(rootDir, def)), task, rootDir);\n\n return context.components.forEach((component) => {\n tupleArr.push([component.id.toString(), artifact]);\n });\n }\n }\n\n return context.components.forEach((component) => {\n const artifact = this.createFromComponent(context, component, def, task);\n if (artifact) {\n tupleArr.push([component.id.toString(), artifact]);\n }\n });\n });\n\n return this.toComponentMap(context, tupleArr);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_path","data","require","_globby","_interopRequireDefault","_lodash","_artifactFiles","_component","_legacy","_storage","_artifactList","_exceptions","_fsArtifact","e","__esModule","default","DEFAULT_CONTEXT","exports","ArtifactFactory","resolvePaths","root","def","patternsFlattened","flatten","globPatterns","patternsFlattenedLinux","map","pathNormalizeToLinux","paths","globby","sync","cwd","getArtifactContextPath","context","component","artifactContext","getArtifactContext","capsulePath","capsuleNetwork","graphCapsules","getCapsule","id","path","CapsuleNotFound","capsulesRootDir","createFromComponent","task","contextPath","rootDir","getRootDir","length","undefined","FsArtifact","ArtifactFiles","getStorageResolver","storageResolver","DefaultResolver","toComponentMap","artifactMap","ComponentMap","as","components","toString","artifacts","filter","targetId","artifact","ArtifactList","fromArray","join","generate","defs","tupleArr","forEach","capsuleDir","push"],"sources":["artifact-factory.ts"],"sourcesContent":["import { join } from 'path';\nimport globby from 'globby';\nimport { flatten } from 'lodash';\nimport { ArtifactFiles } from '@teambit/legacy/dist/consumer/component/sources/artifact-files';\nimport { Component, ComponentMap } from '@teambit/component';\nimport { pathNormalizeToLinux, PathLinux } from '@teambit/legacy.utils';\nimport { ArtifactDefinition } from './artifact-definition';\nimport { DefaultResolver } from '../storage';\nimport { ArtifactList } from './artifact-list';\nimport type { BuildContext, BuildTask } from '../build-task';\nimport { CapsuleNotFound } from '../exceptions';\nimport { FsArtifact } from './fs-artifact';\n\nexport const DEFAULT_CONTEXT = 'component';\n\nexport type ArtifactMap = ComponentMap<ArtifactList<FsArtifact>>;\n\nexport class ArtifactFactory {\n resolvePaths(root: string, def: ArtifactDefinition): string[] {\n const patternsFlattened = flatten(def.globPatterns);\n const patternsFlattenedLinux: PathLinux[] = patternsFlattened.map(pathNormalizeToLinux);\n const paths = globby.sync(patternsFlattenedLinux, { cwd: root });\n return paths;\n }\n\n private getArtifactContextPath(context: BuildContext, component: Component, def: ArtifactDefinition) {\n const artifactContext = this.getArtifactContext(def);\n if (artifactContext === 'component') {\n const capsulePath = context.capsuleNetwork.graphCapsules.getCapsule(component.id)?.path;\n if (!capsulePath) throw new CapsuleNotFound(component.id);\n return capsulePath;\n }\n\n return context.capsuleNetwork.capsulesRootDir;\n }\n\n private getArtifactContext(def: ArtifactDefinition) {\n return def.context || DEFAULT_CONTEXT;\n }\n\n createFromComponent(\n context: BuildContext,\n component: Component,\n def: ArtifactDefinition,\n task: BuildTask\n ): FsArtifact | undefined {\n const contextPath = this.getArtifactContextPath(context, component, def);\n const rootDir = this.getRootDir(contextPath, def);\n const paths = this.resolvePaths(rootDir, def);\n if (!paths || !paths.length) {\n return undefined;\n }\n return new FsArtifact(def, new ArtifactFiles(paths), task, rootDir);\n }\n\n private getStorageResolver(def: ArtifactDefinition) {\n return def.storageResolver || new DefaultResolver();\n }\n\n private toComponentMap(context: BuildContext, artifactMap: [string, FsArtifact][]) {\n return ComponentMap.as<ArtifactList<FsArtifact>>(context.components, (component) => {\n const id = component.id.toString();\n const artifacts = artifactMap.filter(([targetId]) => targetId === id).map(([, artifact]) => artifact);\n\n return ArtifactList.fromArray(artifacts);\n });\n }\n\n getRootDir(rootDir: string, def: ArtifactDefinition) {\n if (!def.rootDir) return rootDir;\n return join(rootDir, def.rootDir);\n }\n\n /**\n * generate artifacts from a build context according to the spec defined in the artifact definitions.\n */\n generate(context: BuildContext, defs: ArtifactDefinition[], task: BuildTask): ComponentMap<ArtifactList<FsArtifact>> {\n const tupleArr: [string, FsArtifact][] = [];\n\n defs.forEach((def) => {\n const artifactContext = this.getArtifactContext(def);\n if (artifactContext === 'env') {\n const capsuleDir = context.capsuleNetwork.capsulesRootDir;\n const rootDir = this.getRootDir(capsuleDir, def);\n const paths = this.resolvePaths(rootDir, def);\n if (paths && paths.length) {\n const artifact = new FsArtifact(def, new ArtifactFiles(this.resolvePaths(rootDir, def)), task, rootDir);\n\n return context.components.forEach((component) => {\n tupleArr.push([component.id.toString(), artifact]);\n });\n }\n }\n\n return context.components.forEach((component) => {\n const artifact = this.createFromComponent(context, component, def, task);\n if (artifact) {\n tupleArr.push([component.id.toString(), artifact]);\n }\n });\n });\n\n return this.toComponentMap(context, tupleArr);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -31,7 +31,7 @@ export declare class ArtifactList<T extends Artifact> extends Array<T> {
31
31
  /**
32
32
  * store all artifacts using the configured storage resolvers.
33
33
  */
34
- store(component: Component): Promise<void[]>;
34
+ store(component: Component): Promise<void>;
35
35
  private storeArtifact;
36
36
  /**
37
37
  * Send the entire artifact to the resolver then get back the result for all files from the resolver
@@ -110,17 +110,15 @@ class ArtifactList extends Array {
110
110
  */
111
111
  async store(component) {
112
112
  const byResolvers = this.groupByResolver();
113
- const promises = Object.keys(byResolvers).map(async key => {
113
+ await Promise.all(Object.keys(byResolvers).map(async key => {
114
114
  const artifacts = byResolvers[key];
115
115
  if (!artifacts.length) return;
116
116
  const storageResolver = artifacts[0].storageResolver;
117
117
  const artifactList = ArtifactList.fromArray(artifacts);
118
- const artifactPromises = artifactList.map(async artifact => {
119
- return this.storeArtifact(storageResolver, artifact, component);
120
- });
121
- await Promise.all(artifactPromises);
122
- });
123
- return Promise.all(promises);
118
+ await Promise.all(artifactList.map(async artifact => {
119
+ await this.storeArtifact(storageResolver, artifact, component);
120
+ }));
121
+ }));
124
122
  }
125
123
  async storeArtifact(storageResolver, artifact, component) {
126
124
  // For now we are always storing also using the default resolver
@@ -1 +1 @@
1
- {"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_artifact","_storage","e","__esModule","default","ArtifactList","Array","byAspectNameAndName","aspectName","name","filtered","filter","artifact","cond","task","aspectId","fromArray","byAspectNameAndTaskName","findByName","find","findByTaskName","isEmpty","every","files","groupByResolver","resolverMap","forEach","storageResolver","resolverArray","length","push","toObject","map","groupByTaskId","reduce","acc","taskId","getVinylsAndImportIfMissing","id","scope","vinyls","pMapSeries","flat","store","component","byResolvers","promises","Object","keys","key","artifacts","artifactList","artifactPromises","storeArtifact","Promise","all","defaultResolver","DefaultResolver","storeWholeArtifactByResolver","storeArtifactFilesByResolver","results","file","url","relative","storeFile","fromArtifactObjects","artifactObjects","object","Artifact","fromArtifactObject","exports"],"sources":["artifact-list.ts"],"sourcesContent":["import { Component } from '@teambit/component';\nimport pMapSeries from 'p-map-series';\nimport type { ArtifactObject } from '@teambit/legacy/dist/consumer/component/sources/artifact-files';\nimport { ComponentID } from '@teambit/component-id';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { ArtifactVinyl } from '@teambit/legacy/dist/consumer/component/sources/artifact';\nimport { FsArtifact } from './fs-artifact';\nimport { Artifact } from './artifact';\nimport {\n ArtifactStorageResolver,\n FileStorageResolver,\n WholeArtifactStorageResolver,\n DefaultResolver,\n} from '../storage';\n\nexport type ResolverMap<T extends Artifact> = { [key: string]: T[] };\n\nexport class ArtifactList<T extends Artifact> extends Array<T> {\n byAspectNameAndName(aspectName?: string, name?: string): ArtifactList<T> {\n const filtered = this.filter((artifact) => {\n let cond = true;\n if (aspectName) {\n cond = cond && artifact.task.aspectId === aspectName;\n }\n if (name) {\n cond = cond && artifact.name === name;\n }\n return cond;\n });\n return ArtifactList.fromArray(filtered);\n }\n\n byAspectNameAndTaskName(aspectName?: string, name?: string): ArtifactList<T> {\n const filtered = this.filter((artifact) => {\n let cond = true;\n if (aspectName) {\n cond = cond && artifact.task.aspectId === aspectName;\n }\n if (name) {\n cond = cond && artifact.task.name === name;\n }\n return cond;\n });\n return ArtifactList.fromArray(filtered);\n }\n\n /**\n * find by the artifact name. it's possible to have multiple artifacts with the same name, in which case it returns the first.\n */\n findByName(name: string): Artifact | undefined {\n return this.find((artifact) => artifact.name === name);\n }\n\n /**\n * find by the task name. it's possible to have multiple tasks with the same name (different aspects), in which case it returns the first.\n */\n findByTaskName(name: string): Artifact | undefined {\n return this.find((artifact) => artifact.task.name === name);\n }\n\n isEmpty(): boolean {\n return this.every((artifact) => artifact.files.isEmpty());\n }\n\n /**\n * group artifacts by the storage resolver.\n */\n groupByResolver(): ResolverMap<T> {\n const resolverMap: ResolverMap<T> = {};\n this.forEach((artifact) => {\n const storageResolver = artifact.storageResolver;\n const resolverArray = resolverMap[storageResolver.name];\n if (!resolverArray) {\n resolverMap[storageResolver.name] = [artifact];\n return;\n }\n if (resolverArray.length) {\n resolverMap[storageResolver.name].push(artifact);\n }\n });\n\n return resolverMap;\n }\n\n toObject(): ArtifactObject[] {\n return this.map((artifact) => artifact.toObject());\n }\n\n groupByTaskId() {\n return this.reduce((acc: { [key: string]: T }, artifact) => {\n const taskId = artifact.task.aspectId;\n acc[taskId] = artifact;\n return acc;\n }, {});\n }\n\n async getVinylsAndImportIfMissing(id: ComponentID, scope: Scope): Promise<ArtifactVinyl[]> {\n if (this.isEmpty()) return [];\n const vinyls = await pMapSeries(this, (artifact) => artifact.files.getVinylsAndImportIfMissing(id, scope));\n return vinyls.flat();\n }\n\n /**\n * store all artifacts using the configured storage resolvers.\n */\n async store(component: Component) {\n const byResolvers = this.groupByResolver();\n const promises = Object.keys(byResolvers).map(async (key) => {\n const artifacts = byResolvers[key];\n if (!artifacts.length) return;\n const storageResolver = artifacts[0].storageResolver;\n const artifactList = ArtifactList.fromArray(artifacts);\n const artifactPromises = artifactList.map(async (artifact) => {\n return this.storeArtifact(storageResolver, artifact, component);\n });\n await Promise.all(artifactPromises);\n });\n\n return Promise.all(promises);\n }\n\n private async storeArtifact(storageResolver: ArtifactStorageResolver, artifact: Artifact, component: Component) {\n // For now we are always storing also using the default resolver\n if (storageResolver.name !== 'default') {\n const defaultResolver = new DefaultResolver();\n await defaultResolver.store(component, artifact as FsArtifact);\n }\n // @ts-ignore\n if (storageResolver.store && typeof storageResolver.store === 'function') {\n return this.storeWholeArtifactByResolver(storageResolver as WholeArtifactStorageResolver, artifact, component);\n }\n return this.storeArtifactFilesByResolver(storageResolver as FileStorageResolver, artifact, component);\n }\n\n /**\n * Send the entire artifact to the resolver then get back the result for all files from the resolver\n * @param storageResolver\n * @param artifact\n * @param component\n */\n private async storeWholeArtifactByResolver(\n storageResolver: WholeArtifactStorageResolver,\n artifact: Artifact,\n component: Component\n ) {\n const results = await storageResolver.store(component, artifact as FsArtifact);\n if (!results) return;\n artifact.files.vinyls.map((file) => {\n const url = results[file.relative];\n if (url) {\n file.url = url;\n }\n });\n }\n\n /**\n * Go over the artifact files and send them to the resolver one by one\n * @param storageResolver\n * @param artifact\n * @param component\n */\n private storeArtifactFilesByResolver(storageResolver: FileStorageResolver, artifact: Artifact, component: Component) {\n const promises = artifact.files.vinyls.map(async (file) => {\n const url = await storageResolver.storeFile(component, artifact as FsArtifact, file);\n if (url) {\n file.url = url;\n }\n });\n return Promise.all(promises);\n }\n\n static fromArtifactObjects(artifactObjects: ArtifactObject[]): ArtifactList<Artifact> {\n const artifacts = artifactObjects.map((object) => Artifact.fromArtifactObject(object));\n return ArtifactList.fromArray(artifacts);\n }\n\n static fromArray<T extends Artifact>(artifacts: T[]) {\n return new ArtifactList(...artifacts);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_artifact","_storage","e","__esModule","default","ArtifactList","Array","byAspectNameAndName","aspectName","name","filtered","filter","artifact","cond","task","aspectId","fromArray","byAspectNameAndTaskName","findByName","find","findByTaskName","isEmpty","every","files","groupByResolver","resolverMap","forEach","storageResolver","resolverArray","length","push","toObject","map","groupByTaskId","reduce","acc","taskId","getVinylsAndImportIfMissing","id","scope","vinyls","pMapSeries","flat","store","component","byResolvers","Promise","all","Object","keys","key","artifacts","artifactList","storeArtifact","defaultResolver","DefaultResolver","storeWholeArtifactByResolver","storeArtifactFilesByResolver","results","file","url","relative","promises","storeFile","fromArtifactObjects","artifactObjects","object","Artifact","fromArtifactObject","exports"],"sources":["artifact-list.ts"],"sourcesContent":["import { Component } from '@teambit/component';\nimport pMapSeries from 'p-map-series';\nimport type { ArtifactObject } from '@teambit/legacy/dist/consumer/component/sources/artifact-files';\nimport { ComponentID } from '@teambit/component-id';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { ArtifactVinyl } from '@teambit/legacy/dist/consumer/component/sources/artifact';\nimport { FsArtifact } from './fs-artifact';\nimport { Artifact } from './artifact';\nimport {\n ArtifactStorageResolver,\n FileStorageResolver,\n WholeArtifactStorageResolver,\n DefaultResolver,\n} from '../storage';\n\nexport type ResolverMap<T extends Artifact> = { [key: string]: T[] };\n\nexport class ArtifactList<T extends Artifact> extends Array<T> {\n byAspectNameAndName(aspectName?: string, name?: string): ArtifactList<T> {\n const filtered = this.filter((artifact) => {\n let cond = true;\n if (aspectName) {\n cond = cond && artifact.task.aspectId === aspectName;\n }\n if (name) {\n cond = cond && artifact.name === name;\n }\n return cond;\n });\n return ArtifactList.fromArray(filtered);\n }\n\n byAspectNameAndTaskName(aspectName?: string, name?: string): ArtifactList<T> {\n const filtered = this.filter((artifact) => {\n let cond = true;\n if (aspectName) {\n cond = cond && artifact.task.aspectId === aspectName;\n }\n if (name) {\n cond = cond && artifact.task.name === name;\n }\n return cond;\n });\n return ArtifactList.fromArray(filtered);\n }\n\n /**\n * find by the artifact name. it's possible to have multiple artifacts with the same name, in which case it returns the first.\n */\n findByName(name: string): Artifact | undefined {\n return this.find((artifact) => artifact.name === name);\n }\n\n /**\n * find by the task name. it's possible to have multiple tasks with the same name (different aspects), in which case it returns the first.\n */\n findByTaskName(name: string): Artifact | undefined {\n return this.find((artifact) => artifact.task.name === name);\n }\n\n isEmpty(): boolean {\n return this.every((artifact) => artifact.files.isEmpty());\n }\n\n /**\n * group artifacts by the storage resolver.\n */\n groupByResolver(): ResolverMap<T> {\n const resolverMap: ResolverMap<T> = {};\n this.forEach((artifact) => {\n const storageResolver = artifact.storageResolver;\n const resolverArray = resolverMap[storageResolver.name];\n if (!resolverArray) {\n resolverMap[storageResolver.name] = [artifact];\n return;\n }\n if (resolverArray.length) {\n resolverMap[storageResolver.name].push(artifact);\n }\n });\n\n return resolverMap;\n }\n\n toObject(): ArtifactObject[] {\n return this.map((artifact) => artifact.toObject());\n }\n\n groupByTaskId() {\n return this.reduce((acc: { [key: string]: T }, artifact) => {\n const taskId = artifact.task.aspectId;\n acc[taskId] = artifact;\n return acc;\n }, {});\n }\n\n async getVinylsAndImportIfMissing(id: ComponentID, scope: Scope): Promise<ArtifactVinyl[]> {\n if (this.isEmpty()) return [];\n const vinyls = await pMapSeries(this, (artifact) => artifact.files.getVinylsAndImportIfMissing(id, scope));\n return vinyls.flat();\n }\n\n /**\n * store all artifacts using the configured storage resolvers.\n */\n async store(component: Component) {\n const byResolvers = this.groupByResolver();\n await Promise.all(\n Object.keys(byResolvers).map(async (key) => {\n const artifacts = byResolvers[key];\n if (!artifacts.length) return;\n const storageResolver = artifacts[0].storageResolver;\n const artifactList = ArtifactList.fromArray(artifacts);\n await Promise.all(\n artifactList.map(async (artifact) => {\n await this.storeArtifact(storageResolver, artifact, component);\n })\n );\n })\n );\n }\n\n private async storeArtifact(storageResolver: ArtifactStorageResolver, artifact: Artifact, component: Component) {\n // For now we are always storing also using the default resolver\n if (storageResolver.name !== 'default') {\n const defaultResolver = new DefaultResolver();\n await defaultResolver.store(component, artifact as FsArtifact);\n }\n // @ts-ignore\n if (storageResolver.store && typeof storageResolver.store === 'function') {\n return this.storeWholeArtifactByResolver(storageResolver as WholeArtifactStorageResolver, artifact, component);\n }\n return this.storeArtifactFilesByResolver(storageResolver as FileStorageResolver, artifact, component);\n }\n\n /**\n * Send the entire artifact to the resolver then get back the result for all files from the resolver\n * @param storageResolver\n * @param artifact\n * @param component\n */\n private async storeWholeArtifactByResolver(\n storageResolver: WholeArtifactStorageResolver,\n artifact: Artifact,\n component: Component\n ) {\n const results = await storageResolver.store(component, artifact as FsArtifact);\n if (!results) return;\n artifact.files.vinyls.map((file) => {\n const url = results[file.relative];\n if (url) {\n file.url = url;\n }\n });\n }\n\n /**\n * Go over the artifact files and send them to the resolver one by one\n * @param storageResolver\n * @param artifact\n * @param component\n */\n private storeArtifactFilesByResolver(storageResolver: FileStorageResolver, artifact: Artifact, component: Component) {\n const promises = artifact.files.vinyls.map(async (file) => {\n const url = await storageResolver.storeFile(component, artifact as FsArtifact, file);\n if (url) {\n file.url = url;\n }\n });\n return Promise.all(promises);\n }\n\n static fromArtifactObjects(artifactObjects: ArtifactObject[]): ArtifactList<Artifact> {\n const artifacts = artifactObjects.map((object) => Artifact.fromArtifactObject(object));\n return ArtifactList.fromArray(artifacts);\n }\n\n static fromArray<T extends Artifact>(artifacts: T[]) {\n return new ArtifactList(...artifacts);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -248,16 +248,15 @@ class BuilderMain {
248
248
  }
249
249
  async storeArtifacts(tasksResults) {
250
250
  const artifacts = tasksResults.flatMap(t => t.artifacts ? [t.artifacts] : []);
251
- const storeP = artifacts.map(async artifactMap => {
252
- return Promise.all(artifactMap.toArray().map(async ([component, artifactList]) => {
251
+ await Promise.all(artifacts.map(async artifactMap => {
252
+ await Promise.all(artifactMap.toArray().map(async ([component, artifactList]) => {
253
253
  try {
254
- return await artifactList.store(component);
254
+ await artifactList.store(component);
255
255
  } catch (err) {
256
- throw new (_exceptions().ArtifactStorageError)(err, component);
256
+ throw new (_exceptions().ArtifactStorageError)(err, component.id.toString());
257
257
  }
258
258
  }));
259
- });
260
- await Promise.all(storeP);
259
+ }));
261
260
  }
262
261
  pipelineResultsToBuilderData(components, buildPipelineResults) {
263
262
  const buildPipelineResultList = new (_buildPipelineResultList().BuildPipelineResultList)(buildPipelineResults, components);
@@ -1 +1 @@
1
- {"version":3,"names":["_lodash","data","require","_artifactFiles","_aspectLoader","_cli","_component","_envs","_graphql","_harmony","_globalConfig","_logger","_aspect","_scope","_workspace","_isolator","_bit","_toolboxArray","_generator","_ui","_artifact","_artifactFactory","_builder","_builder2","_builder3","_build","_buildTask","_exceptions","_buildPipelineResultList","_artifacts","_buildTask2","_builder4","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","FILE_PATH_PARAM_DELIM","exports","BuilderMain","constructor","envs","workspace","buildService","tagService","snapService","scope","isolator","aspectLoader","componentAspect","globalConfig","buildTaskSlot","tagTaskSlot","snapTaskSlot","logger","storeArtifacts","tasksResults","artifacts","flatMap","storeP","map","artifactMap","Promise","all","toArray","component","artifactList","store","err","ArtifactStorageError","pipelineResultsToBuilderData","components","buildPipelineResults","buildPipelineResultList","BuildPipelineResultList","ComponentMap","as","aspectsData","getDataOfComponent","id","pipelineReport","getPipelineReportOfComponent","getArtifactsDataOfComponent","pipeline","bitVersion","getBitVersion","tagListener","options","isolateOptions","builderOptions","pipeResults","allTasksResults","throwOnError","forceDeploy","disableTagAndSnapPipelines","isSnap","populateArtifactsFrom","buildEnvsExecutionResults","build","emptyRootDir","tasks","AspectAspect","undefined","throwErrorsIfExist","hasErrors","builderOptionsForTagSnap","seedersOnly","previousTasksResults","deployEnvsExecutionResults","runSnapTasks","runTagTasks","builderDataMap","combineBuildDataFrom","validateBuilderDataMap","sanitizePreviewData","harmonyComps","compsBeingTaggedLookup","Set","comp","toString","harmonyCompIdsWithEnvId","envId","getEnvId","isUsingCoreEnv","inWs","lastTaggedEnvHasOnlyOverview","has","isEnvTaggedWithComp","envCompId","ComponentID","fromString","hasId","get","state","aspects","onlyOverview","harmonyCompIdsWithEnvIdMap","Map","compsToDeleteOnlyOverviewPreviewData","envData","previewData","buildData","taskSerializedIds","BuildTaskHelper","serializeId","aspectId","taskId","name","taskName","duplications","findDuplications","Error","join","promises","builderData","populateFrom","find","isEqual","ignoreVersion","idStr","populateFromComp","getHost","version","populateFromBuilderData","getBuilderData","artifact","artifactObj","toObject","a","task","aspectData","p","flattenValue","getArtifactsVinylByAspect","aspectName","getArtifactsByAspect","vinyls","getVinylsAndImportIfMissing","legacyScope","getArtifactsVinylByAspectAndName","getArtifactsByAspectAndName","getArtifactsVinylByAspectAndTaskName","getArtifactsbyAspectAndTaskName","getArtifactsByName","getArtifacts","byAspectNameAndName","byAspectNameAndTaskName","getDataByAspect","ArtifactList","fromArray","BuilderAspect","clonedData","cloneDeep","artifactFiles","files","ArtifactFiles","fromObject","Artifact","assign","fromArtifactObject","extraOptions","ids","c","capsulesBaseDir","getComponentsCapsulesBaseDir","baseIsolateOpts","baseDir","useHash","mergedIsolateOpts","network","isolateComponents","createEnvironment","graphCapsules","getAllComponents","builderServiceOptions","originalSeeders","consoleTitle","buildResult","runOnce","includeSnap","includeTag","listTasks","compEnv","getEnv","buildTasks","getCurrentPipeTasks","tagTasks","snapTasks","registerBuildTasks","register","registerDeployTasks","registerTagTasks","registerSnapTasks","getDownloadUrlForArtifact","componentId","path","provider","cli","loggerExt","graphql","generator","ui","config","artifactFactory","ArtifactFactory","createLogger","BuilderService","registerService","builder","BundleUiTask","registerRoute","BuilderRoute","builderSchema","registerComponentTemplate","buildTaskTemplate","commands","BuilderCmd","ArtifactsCmd","Slot","withType","MainRuntime","CLIAspect","EnvsAspect","WorkspaceAspect","ScopeAspect","IsolatorAspect","LoggerAspect","AspectLoaderAspect","GraphqlAspect","GeneratorAspect","ComponentAspect","UIAspect","GlobalConfigAspect","addRuntime"],"sources":["builder.main.runtime.ts"],"sourcesContent":["import { cloneDeep } from 'lodash';\nimport { ArtifactVinyl } from '@teambit/legacy/dist/consumer/component/sources/artifact';\nimport { ArtifactFiles, ArtifactObject } from '@teambit/legacy/dist/consumer/component/sources/artifact-files';\nimport { AspectLoaderAspect, AspectLoaderMain } from '@teambit/aspect-loader';\nimport { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { Component, ComponentMap, IComponent, ComponentAspect, ComponentMain, ComponentID } from '@teambit/component';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport { GraphqlAspect, GraphqlMain } from '@teambit/graphql';\nimport { Slot, SlotRegistry } from '@teambit/harmony';\nimport { GlobalConfigAspect, GlobalConfigMain } from '@teambit/global-config';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { AspectAspect } from '@teambit/aspect';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { Workspace, WorkspaceAspect } from '@teambit/workspace';\nimport { IsolateComponentsOptions, IsolatorAspect, IsolatorMain } from '@teambit/isolator';\nimport { getBitVersion } from '@teambit/bit.get-bit-version';\nimport { findDuplications } from '@teambit/toolbox.array.duplications-finder';\nimport { GeneratorAspect, GeneratorMain } from '@teambit/generator';\nimport { UIAspect, UiMain, BundleUiTask } from '@teambit/ui';\nimport { Artifact, ArtifactList, FsArtifact } from './artifact';\nimport { ArtifactFactory } from './artifact/artifact-factory'; // it gets undefined when importing it from './artifact'\nimport { BuilderAspect } from './builder.aspect';\nimport { builderSchema } from './builder.graphql';\nimport { BuilderService, BuilderServiceOptions } from './builder.service';\nimport { BuilderCmd } from './build.cmd';\nimport { BuildTask, BuildTaskHelper } from './build-task';\nimport { TaskResults } from './build-pipe';\nimport { TaskResultsList } from './task-results-list';\nimport { ArtifactStorageError } from './exceptions';\nimport { BuildPipelineResultList, AspectData, PipelineReport } from './build-pipeline-result-list';\nimport { TaskMetadata } from './types';\nimport { ArtifactsCmd } from './artifact/artifacts.cmd';\nimport { buildTaskTemplate } from './templates/build-task';\nimport { BuilderRoute } from './builder.route';\n\nexport type TaskSlot = SlotRegistry<BuildTask[]>;\nexport type OnTagResults = { builderDataMap: ComponentMap<RawBuilderData>; pipeResults: TaskResultsList[] };\nexport type OnTagOpts = {\n disableTagAndSnapPipelines?: boolean;\n throwOnError?: boolean; // on the CI it helps to save the results on failure so this is set to false\n forceDeploy?: boolean; // whether run the deploy-pipeline although the build-pipeline has failed\n populateArtifactsFrom?: ComponentID[]; // helpful for tagging from scope where we want to use the build-artifacts of previous snap.\n isSnap?: boolean;\n};\nexport const FILE_PATH_PARAM_DELIM = '~';\n\n/**\n * builder data format for the bit object store\n */\nexport type RawBuilderData = {\n pipeline: PipelineReport[];\n artifacts?: ArtifactObject[];\n aspectsData: AspectData[];\n bitVersion?: string;\n};\n/**\n * builder data mapped to an ArtifactList instance\n */\nexport type BuilderData = Omit<RawBuilderData, 'artifacts'> & {\n artifacts: ArtifactList<Artifact>;\n};\n\nexport class BuilderMain {\n constructor(\n private envs: EnvsMain,\n private workspace: Workspace,\n private buildService: BuilderService,\n private tagService: BuilderService,\n private snapService: BuilderService,\n private scope: ScopeMain,\n private isolator: IsolatorMain,\n private aspectLoader: AspectLoaderMain,\n private componentAspect: ComponentMain,\n private globalConfig: GlobalConfigMain,\n private buildTaskSlot: TaskSlot,\n private tagTaskSlot: TaskSlot,\n private snapTaskSlot: TaskSlot,\n private logger: Logger\n ) {}\n\n private async storeArtifacts(tasksResults: TaskResults[]) {\n const artifacts = tasksResults.flatMap((t) => (t.artifacts ? [t.artifacts] : []));\n const storeP = artifacts.map(async (artifactMap: ComponentMap<ArtifactList<FsArtifact>>) => {\n return Promise.all(\n artifactMap.toArray().map(async ([component, artifactList]) => {\n try {\n return await artifactList.store(component);\n } catch (err: any) {\n throw new ArtifactStorageError(err, component);\n }\n })\n );\n });\n await Promise.all(storeP);\n }\n\n pipelineResultsToBuilderData(\n components: Component[],\n buildPipelineResults: TaskResults[]\n ): ComponentMap<RawBuilderData> {\n const buildPipelineResultList = new BuildPipelineResultList(buildPipelineResults, components);\n return ComponentMap.as<RawBuilderData>(components, (component) => {\n const aspectsData = buildPipelineResultList.getDataOfComponent(component.id);\n const pipelineReport = buildPipelineResultList.getPipelineReportOfComponent(component.id);\n const artifacts = buildPipelineResultList.getArtifactsDataOfComponent(component.id);\n return { pipeline: pipelineReport, artifacts, aspectsData, bitVersion: getBitVersion() };\n });\n }\n\n async tagListener(\n components: Component[],\n options: OnTagOpts = {},\n isolateOptions: IsolateComponentsOptions = {},\n builderOptions: BuilderServiceOptions = {}\n ): Promise<OnTagResults> {\n const pipeResults: TaskResultsList[] = [];\n const allTasksResults: TaskResults[] = [];\n const { throwOnError, forceDeploy, disableTagAndSnapPipelines, isSnap, populateArtifactsFrom } = options;\n if (populateArtifactsFrom) isolateOptions.populateArtifactsFrom = populateArtifactsFrom;\n const buildEnvsExecutionResults = await this.build(\n components,\n { emptyRootDir: true, ...isolateOptions },\n {\n ...builderOptions,\n // even when build is skipped (in case of tag-from-scope), the pre-build/post-build and teambit.harmony/aspect tasks are needed\n tasks: populateArtifactsFrom ? [AspectAspect.id] : undefined,\n }\n );\n if (throwOnError && !forceDeploy) buildEnvsExecutionResults.throwErrorsIfExist();\n allTasksResults.push(...buildEnvsExecutionResults.tasksResults);\n pipeResults.push(buildEnvsExecutionResults);\n\n if (forceDeploy || (!disableTagAndSnapPipelines && !buildEnvsExecutionResults?.hasErrors())) {\n const builderOptionsForTagSnap: BuilderServiceOptions = {\n ...builderOptions,\n seedersOnly: isolateOptions.seedersOnly,\n previousTasksResults: buildEnvsExecutionResults?.tasksResults,\n };\n const deployEnvsExecutionResults = isSnap\n ? await this.runSnapTasks(components, builderOptionsForTagSnap)\n : await this.runTagTasks(components, builderOptionsForTagSnap);\n if (throwOnError && !forceDeploy) deployEnvsExecutionResults.throwErrorsIfExist();\n allTasksResults.push(...deployEnvsExecutionResults.tasksResults);\n pipeResults.push(deployEnvsExecutionResults);\n }\n await this.storeArtifacts(allTasksResults);\n const builderDataMap = this.pipelineResultsToBuilderData(components, allTasksResults);\n if (populateArtifactsFrom) await this.combineBuildDataFrom(builderDataMap, populateArtifactsFrom);\n this.validateBuilderDataMap(builderDataMap);\n\n await this.sanitizePreviewData(components);\n\n return { builderDataMap, pipeResults };\n }\n\n /**\n * remove the onlyOverview from the preview data of the component if\n * the env is in the workspace\n * the env is not tagged with the component\n * the last tagged env has onlyOverview undefined in preview data\n *\n * We don't want to do this but have no choice because,\n * when we load components in workspace,\n * we set the onlyOverview to true in the env's preview data\n * which sets the onlyOverview to true in the component's preview data\n * but if you don't tag the env with the component,\n * the onlyOverview will be true in the component's preview data, since its env is in the workspace\n * even though the env it is tagged with doesn't have onlyOverview in its preview data\n * which will result in inconsistent preview data when exported to the scope\n */\n async sanitizePreviewData(harmonyComps: Component[]) {\n const compsBeingTaggedLookup = new Set(harmonyComps.map((comp) => comp.id.toString()));\n\n const harmonyCompIdsWithEnvId = await Promise.all(\n harmonyComps.map(async (comp) => {\n const envId = await this.envs.getEnvId(comp);\n if (this.envs.isUsingCoreEnv(comp)) {\n return [comp.id.toString(), { envId, inWs: false, lastTaggedEnvHasOnlyOverview: false }] as [\n string,\n { envId: string; inWs: boolean; lastTaggedEnvHasOnlyOverview?: boolean; isEnvTaggedWithComp?: boolean }\n ];\n }\n\n // check if the env is tagged with the component\n if (envId && !compsBeingTaggedLookup.has(comp.id.toString())) {\n return [comp.id.toString(), { envId, isEnvTaggedWithComp: false }] as [\n string,\n { envId: string; inWs?: boolean; lastTaggedEnvHasOnlyOverview?: boolean; isEnvTaggedWithComp?: boolean }\n ];\n }\n\n const envCompId = (envId && ComponentID.fromString(envId)) || undefined;\n const inWs = this.workspace && envCompId ? await this.workspace.hasId(envCompId) : false;\n\n const lastTaggedEnvHasOnlyOverview: boolean | undefined =\n envCompId &&\n (await this.scope.get(envCompId, false))?.state.aspects.get('teambit.preview/preview')?.data?.onlyOverview;\n\n return [comp.id.toString(), { envId, inWs, lastTaggedEnvHasOnlyOverview, isEnvTaggedWithComp: true }] as [\n string,\n { envId: string; inWs: boolean; lastTaggedEnvHasOnlyOverview: boolean; isEnvTaggedWithComp?: boolean }\n ];\n })\n );\n\n const harmonyCompIdsWithEnvIdMap = new Map(harmonyCompIdsWithEnvId);\n\n const compsToDeleteOnlyOverviewPreviewData = harmonyComps.filter((comp) => {\n const envData:\n | { envId: string; inWs?: boolean; lastTaggedEnvHasOnlyOverview?: boolean; isEnvTaggedWithComp?: boolean }\n | undefined = harmonyCompIdsWithEnvIdMap.get(comp.id.toString());\n return envData?.inWs && !envData?.lastTaggedEnvHasOnlyOverview && envData?.isEnvTaggedWithComp;\n });\n\n for (const comp of compsToDeleteOnlyOverviewPreviewData) {\n const previewData = comp.state.aspects.get('teambit.preview/preview')?.data;\n // if the env is not tagged with the component remove it from the preview data of the component\n delete previewData?.onlyOverview;\n }\n }\n\n private validateBuilderDataMap(builderDataMap: ComponentMap<RawBuilderData>) {\n builderDataMap.forEach((buildData: RawBuilderData, component) => {\n const taskSerializedIds = buildData.pipeline.map((t) =>\n BuildTaskHelper.serializeId({ aspectId: t.taskId, name: t.taskName })\n );\n const duplications = findDuplications(taskSerializedIds);\n if (duplications.length) {\n throw new Error(\n `build-task-results validation has failed. the following task(s) of \"${component.id.toString()}\" are duplicated: ${duplications.join(\n ', '\n )}`\n );\n }\n });\n }\n\n private async combineBuildDataFrom(\n builderDataMap: ComponentMap<RawBuilderData>,\n populateArtifactsFrom: ComponentID[]\n ) {\n const promises = builderDataMap.map(async (builderData, component) => {\n const populateFrom = populateArtifactsFrom.find((id) => id.isEqual(component.id, { ignoreVersion: true }));\n const idStr = component.id.toString();\n if (!populateFrom) {\n throw new Error(`combineBuildDataFromParent: unable to find where to populate the artifacts from for ${idStr}`);\n }\n const populateFromComp = await this.componentAspect.getHost().get(populateFrom);\n if (!populateFromComp)\n throw new Error(\n `combineBuildDataFromParent, unable to load parent component of ${idStr}. hash: ${populateFrom.version}`\n );\n const populateFromBuilderData = this.getBuilderData(populateFromComp);\n if (!populateFromBuilderData) throw new Error(`parent of ${idStr} was not built yet. unable to continue`);\n populateFromBuilderData.artifacts.forEach((artifact) => {\n const artifactObj = artifact.toObject();\n if (!builderData.artifacts) builderData.artifacts = [];\n if (\n builderData.artifacts.find(\n (a) =>\n a.task.id === artifactObj.task.id && a.task.name === artifactObj.task.name && a.name === artifactObj.name\n )\n ) {\n return;\n }\n builderData.artifacts.push(artifactObj);\n });\n populateFromBuilderData.aspectsData.forEach((aspectData) => {\n if (builderData.aspectsData.find((a) => a.aspectId === aspectData.aspectId)) return;\n builderData.aspectsData.push(aspectData);\n });\n populateFromBuilderData.pipeline.forEach((pipeline) => {\n if (builderData.pipeline.find((p) => p.taskId === pipeline.taskId && p.taskName === pipeline.taskName)) return;\n builderData.pipeline.push(pipeline);\n });\n });\n\n await Promise.all(promises.flattenValue());\n }\n\n // TODO: merge with getArtifactsVinylByExtensionAndName by getting aspect name and name as object with optional props\n async getArtifactsVinylByAspect(component: Component, aspectName: string): Promise<ArtifactVinyl[]> {\n const artifacts = this.getArtifactsByAspect(component, aspectName);\n const vinyls = await artifacts.getVinylsAndImportIfMissing(component.id, this.scope.legacyScope);\n return vinyls;\n }\n\n async getArtifactsVinylByAspectAndName(\n component: Component,\n aspectName: string,\n name: string\n ): Promise<ArtifactVinyl[]> {\n const artifacts = this.getArtifactsByAspectAndName(component, aspectName, name);\n const vinyls = await artifacts.getVinylsAndImportIfMissing(component.id, this.scope.legacyScope);\n return vinyls;\n }\n\n async getArtifactsVinylByAspectAndTaskName(\n component: Component,\n aspectName: string,\n name: string\n ): Promise<ArtifactVinyl[]> {\n const artifacts = this.getArtifactsbyAspectAndTaskName(component, aspectName, name);\n const vinyls = await artifacts.getVinylsAndImportIfMissing(component.id, this.scope.legacyScope);\n return vinyls;\n }\n\n getArtifactsByName(component: Component, name: string): ArtifactList<Artifact> {\n const artifacts = this.getArtifacts(component).byAspectNameAndName(undefined, name);\n return artifacts;\n }\n\n getArtifactsByAspect(component: Component, aspectName: string): ArtifactList<Artifact> {\n const artifacts = this.getArtifacts(component).byAspectNameAndName(aspectName);\n return artifacts;\n }\n\n getArtifactsByAspectAndName(component: Component, aspectName: string, name: string): ArtifactList<Artifact> {\n const artifacts = this.getArtifacts(component).byAspectNameAndName(aspectName, name);\n return artifacts;\n }\n\n getArtifactsbyAspectAndTaskName(component: IComponent, aspectName: string, taskName: string): ArtifactList<Artifact> {\n const artifacts = this.getArtifacts(component).byAspectNameAndTaskName(aspectName, taskName);\n return artifacts;\n }\n\n /**\n * this is the aspect's data that was generated as \"metadata\" of the task component-result during the build process\n * and saved by the builder aspect in the \"aspectsData\" property.\n * (not to be confused with the data saved in the aspect itself, which is saved in the \"data\" property of the aspect).\n */\n getDataByAspect(component: IComponent, aspectName: string): TaskMetadata | undefined {\n const aspectsData = this.getBuilderData(component)?.aspectsData;\n const data = aspectsData?.find((aspectData) => aspectData.aspectId === aspectName);\n return data?.data;\n }\n\n getArtifacts(component: IComponent): ArtifactList<Artifact> {\n const artifacts = this.getBuilderData(component)?.artifacts || ArtifactList.fromArray([]);\n return artifacts;\n }\n\n getBuilderData(component: IComponent): BuilderData | undefined {\n const data = component.get(BuilderAspect.id)?.data;\n if (!data) return undefined;\n const clonedData = cloneDeep(data) as BuilderData;\n let artifactFiles: ArtifactFiles;\n const artifacts = clonedData.artifacts?.map((artifact) => {\n if (!(artifact.files instanceof ArtifactFiles)) {\n artifactFiles = ArtifactFiles.fromObject(artifact.files);\n } else {\n artifactFiles = artifact.files;\n }\n if (artifact instanceof Artifact) {\n return artifact;\n }\n Object.assign(artifact, { files: artifactFiles });\n return Artifact.fromArtifactObject(artifact);\n });\n clonedData.artifacts = ArtifactList.fromArray(artifacts || []);\n return clonedData;\n }\n\n async build(\n components: Component[],\n isolateOptions?: IsolateComponentsOptions,\n builderOptions?: BuilderServiceOptions,\n extraOptions?: { includeTag?: boolean; includeSnap?: boolean }\n ): Promise<TaskResultsList> {\n const ids = components.map((c) => c.id);\n const capsulesBaseDir = this.buildService.getComponentsCapsulesBaseDir();\n const baseIsolateOpts = {\n baseDir: capsulesBaseDir,\n useHash: !capsulesBaseDir,\n };\n const mergedIsolateOpts = {\n ...baseIsolateOpts,\n ...isolateOptions,\n };\n\n const network = await this.isolator.isolateComponents(ids, mergedIsolateOpts, this.scope.legacyScope);\n const envs = await this.envs.createEnvironment(network.graphCapsules.getAllComponents());\n const builderServiceOptions = {\n seedersOnly: isolateOptions?.seedersOnly,\n originalSeeders: ids,\n capsulesBaseDir,\n ...(builderOptions || {}),\n };\n this.logger.consoleTitle(`Total ${components.length} components to build`);\n const buildResult: TaskResultsList = await envs.runOnce(this.buildService, builderServiceOptions);\n\n if (extraOptions?.includeSnap || extraOptions?.includeTag) {\n const builderOptionsForTagSnap: BuilderServiceOptions = {\n ...builderServiceOptions,\n previousTasksResults: buildResult.tasksResults,\n };\n const deployEnvsExecutionResults = extraOptions?.includeSnap\n ? await this.runSnapTasks(components, builderOptionsForTagSnap)\n : await this.runTagTasks(components, builderOptionsForTagSnap);\n buildResult.tasksResults.push(...deployEnvsExecutionResults.tasksResults);\n }\n\n return buildResult;\n }\n\n async runTagTasks(components: Component[], builderOptions: BuilderServiceOptions): Promise<TaskResultsList> {\n const envs = await this.envs.createEnvironment(components);\n const buildResult = await envs.runOnce(this.tagService, builderOptions);\n\n return buildResult;\n }\n\n async runSnapTasks(components: Component[], builderOptions: BuilderServiceOptions): Promise<TaskResultsList> {\n const envs = await this.envs.createEnvironment(components);\n const buildResult = await envs.runOnce(this.snapService, builderOptions);\n\n return buildResult;\n }\n\n listTasks(component: Component) {\n const compEnv = this.envs.getEnv(component);\n const buildTasks = this.buildService.getCurrentPipeTasks(compEnv);\n const tagTasks = this.tagService.getCurrentPipeTasks(compEnv);\n const snapTasks = this.snapService.getCurrentPipeTasks(compEnv);\n return { id: component.id, envId: compEnv.id, buildTasks, tagTasks, snapTasks };\n }\n\n /**\n * register a build task to apply on all component build pipelines.\n * build happens on `bit build` and as part of `bit tag --persist`.\n */\n registerBuildTasks(tasks: BuildTask[]) {\n this.buildTaskSlot.register(tasks);\n return this;\n }\n\n /**\n * @deprecated use registerTagTasks or registerSnapTasks\n */\n registerDeployTasks(tasks: BuildTask[]) {\n this.tagTaskSlot.register(tasks);\n return this;\n }\n\n /**\n * tag tasks that don't get executed on `bit build`, only on `bit tag'.\n * this pipeline is running once the build-pipeline has completed.\n */\n registerTagTasks(tasks: BuildTask[]) {\n this.tagTaskSlot.register(tasks);\n return this;\n }\n\n /**\n * tag tasks that don't get executed on `bit build`, only on `bit snap'.\n * this pipeline is running once the build-pipeline has completed.\n */\n registerSnapTasks(tasks: BuildTask[]) {\n this.snapTaskSlot.register(tasks);\n return this;\n }\n\n getDownloadUrlForArtifact(componentId: ComponentID, taskId: string, path?: string) {\n return `/api/${componentId}/~aspect/builder/${taskId}/${path ? `${FILE_PATH_PARAM_DELIM}${path}` : ''}`;\n }\n\n static slots = [Slot.withType<BuildTask>(), Slot.withType<BuildTask>(), Slot.withType<BuildTask>()];\n\n static runtime = MainRuntime;\n static dependencies = [\n CLIAspect,\n EnvsAspect,\n WorkspaceAspect,\n ScopeAspect,\n IsolatorAspect,\n LoggerAspect,\n AspectLoaderAspect,\n GraphqlAspect,\n GeneratorAspect,\n ComponentAspect,\n UIAspect,\n GlobalConfigAspect,\n ];\n\n static async provider(\n [cli, envs, workspace, scope, isolator, loggerExt, aspectLoader, graphql, generator, component, ui, globalConfig]: [\n CLIMain,\n EnvsMain,\n Workspace,\n ScopeMain,\n IsolatorMain,\n LoggerMain,\n AspectLoaderMain,\n GraphqlMain,\n GeneratorMain,\n ComponentMain,\n UiMain,\n GlobalConfigMain\n ],\n config,\n [buildTaskSlot, tagTaskSlot, snapTaskSlot]: [TaskSlot, TaskSlot, TaskSlot]\n ) {\n const artifactFactory = new ArtifactFactory();\n const logger = loggerExt.createLogger(BuilderAspect.id);\n const buildService = new BuilderService(\n isolator,\n logger,\n buildTaskSlot,\n 'getBuildPipe',\n 'build',\n artifactFactory,\n scope,\n globalConfig\n );\n envs.registerService(buildService);\n const tagService = new BuilderService(\n isolator,\n logger,\n tagTaskSlot,\n 'getTagPipe',\n 'tag',\n artifactFactory,\n scope,\n globalConfig\n );\n const snapService = new BuilderService(\n isolator,\n logger,\n snapTaskSlot,\n 'getSnapPipe',\n 'snap',\n artifactFactory,\n scope,\n globalConfig\n );\n const builder = new BuilderMain(\n envs,\n workspace,\n buildService,\n tagService,\n snapService,\n scope,\n isolator,\n aspectLoader,\n component,\n globalConfig,\n buildTaskSlot,\n tagTaskSlot,\n snapTaskSlot,\n logger\n );\n builder.registerBuildTasks([new BundleUiTask(ui, logger)]);\n component.registerRoute([new BuilderRoute(builder, scope, logger)]);\n graphql.register(builderSchema(builder, logger));\n if (generator) generator.registerComponentTemplate([buildTaskTemplate]);\n const commands = [new BuilderCmd(builder, workspace, logger), new ArtifactsCmd(builder, component)];\n cli.register(...commands);\n\n return builder;\n }\n}\n\nBuilderAspect.addRuntime(BuilderMain);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_lodash","data","require","_artifactFiles","_aspectLoader","_cli","_component","_envs","_graphql","_harmony","_globalConfig","_logger","_aspect","_scope","_workspace","_isolator","_bit","_toolboxArray","_generator","_ui","_artifact","_artifactFactory","_builder","_builder2","_builder3","_build","_buildTask","_exceptions","_buildPipelineResultList","_artifacts","_buildTask2","_builder4","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","FILE_PATH_PARAM_DELIM","exports","BuilderMain","constructor","envs","workspace","buildService","tagService","snapService","scope","isolator","aspectLoader","componentAspect","globalConfig","buildTaskSlot","tagTaskSlot","snapTaskSlot","logger","storeArtifacts","tasksResults","artifacts","flatMap","Promise","all","map","artifactMap","toArray","component","artifactList","store","err","ArtifactStorageError","id","toString","pipelineResultsToBuilderData","components","buildPipelineResults","buildPipelineResultList","BuildPipelineResultList","ComponentMap","as","aspectsData","getDataOfComponent","pipelineReport","getPipelineReportOfComponent","getArtifactsDataOfComponent","pipeline","bitVersion","getBitVersion","tagListener","options","isolateOptions","builderOptions","pipeResults","allTasksResults","throwOnError","forceDeploy","disableTagAndSnapPipelines","isSnap","populateArtifactsFrom","buildEnvsExecutionResults","build","emptyRootDir","tasks","AspectAspect","undefined","throwErrorsIfExist","hasErrors","builderOptionsForTagSnap","seedersOnly","previousTasksResults","deployEnvsExecutionResults","runSnapTasks","runTagTasks","builderDataMap","combineBuildDataFrom","validateBuilderDataMap","sanitizePreviewData","harmonyComps","compsBeingTaggedLookup","Set","comp","harmonyCompIdsWithEnvId","envId","getEnvId","isUsingCoreEnv","inWs","lastTaggedEnvHasOnlyOverview","has","isEnvTaggedWithComp","envCompId","ComponentID","fromString","hasId","get","state","aspects","onlyOverview","harmonyCompIdsWithEnvIdMap","Map","compsToDeleteOnlyOverviewPreviewData","envData","previewData","buildData","taskSerializedIds","BuildTaskHelper","serializeId","aspectId","taskId","name","taskName","duplications","findDuplications","Error","join","promises","builderData","populateFrom","find","isEqual","ignoreVersion","idStr","populateFromComp","getHost","version","populateFromBuilderData","getBuilderData","artifact","artifactObj","toObject","a","task","aspectData","p","flattenValue","getArtifactsVinylByAspect","aspectName","getArtifactsByAspect","vinyls","getVinylsAndImportIfMissing","legacyScope","getArtifactsVinylByAspectAndName","getArtifactsByAspectAndName","getArtifactsVinylByAspectAndTaskName","getArtifactsbyAspectAndTaskName","getArtifactsByName","getArtifacts","byAspectNameAndName","byAspectNameAndTaskName","getDataByAspect","ArtifactList","fromArray","BuilderAspect","clonedData","cloneDeep","artifactFiles","files","ArtifactFiles","fromObject","Artifact","assign","fromArtifactObject","extraOptions","ids","c","capsulesBaseDir","getComponentsCapsulesBaseDir","baseIsolateOpts","baseDir","useHash","mergedIsolateOpts","network","isolateComponents","createEnvironment","graphCapsules","getAllComponents","builderServiceOptions","originalSeeders","consoleTitle","buildResult","runOnce","includeSnap","includeTag","listTasks","compEnv","getEnv","buildTasks","getCurrentPipeTasks","tagTasks","snapTasks","registerBuildTasks","register","registerDeployTasks","registerTagTasks","registerSnapTasks","getDownloadUrlForArtifact","componentId","path","provider","cli","loggerExt","graphql","generator","ui","config","artifactFactory","ArtifactFactory","createLogger","BuilderService","registerService","builder","BundleUiTask","registerRoute","BuilderRoute","builderSchema","registerComponentTemplate","buildTaskTemplate","commands","BuilderCmd","ArtifactsCmd","Slot","withType","MainRuntime","CLIAspect","EnvsAspect","WorkspaceAspect","ScopeAspect","IsolatorAspect","LoggerAspect","AspectLoaderAspect","GraphqlAspect","GeneratorAspect","ComponentAspect","UIAspect","GlobalConfigAspect","addRuntime"],"sources":["builder.main.runtime.ts"],"sourcesContent":["import { cloneDeep } from 'lodash';\nimport { ArtifactVinyl } from '@teambit/legacy/dist/consumer/component/sources/artifact';\nimport { ArtifactFiles, ArtifactObject } from '@teambit/legacy/dist/consumer/component/sources/artifact-files';\nimport { AspectLoaderAspect, AspectLoaderMain } from '@teambit/aspect-loader';\nimport { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { Component, ComponentMap, IComponent, ComponentAspect, ComponentMain, ComponentID } from '@teambit/component';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport { GraphqlAspect, GraphqlMain } from '@teambit/graphql';\nimport { Slot, SlotRegistry } from '@teambit/harmony';\nimport { GlobalConfigAspect, GlobalConfigMain } from '@teambit/global-config';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { AspectAspect } from '@teambit/aspect';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { Workspace, WorkspaceAspect } from '@teambit/workspace';\nimport { IsolateComponentsOptions, IsolatorAspect, IsolatorMain } from '@teambit/isolator';\nimport { getBitVersion } from '@teambit/bit.get-bit-version';\nimport { findDuplications } from '@teambit/toolbox.array.duplications-finder';\nimport { GeneratorAspect, GeneratorMain } from '@teambit/generator';\nimport { UIAspect, UiMain, BundleUiTask } from '@teambit/ui';\nimport { Artifact, ArtifactList, FsArtifact } from './artifact';\nimport { ArtifactFactory } from './artifact/artifact-factory'; // it gets undefined when importing it from './artifact'\nimport { BuilderAspect } from './builder.aspect';\nimport { builderSchema } from './builder.graphql';\nimport { BuilderService, BuilderServiceOptions } from './builder.service';\nimport { BuilderCmd } from './build.cmd';\nimport { BuildTask, BuildTaskHelper } from './build-task';\nimport { TaskResults } from './build-pipe';\nimport { TaskResultsList } from './task-results-list';\nimport { ArtifactStorageError } from './exceptions';\nimport { BuildPipelineResultList, AspectData, PipelineReport } from './build-pipeline-result-list';\nimport { TaskMetadata } from './types';\nimport { ArtifactsCmd } from './artifact/artifacts.cmd';\nimport { buildTaskTemplate } from './templates/build-task';\nimport { BuilderRoute } from './builder.route';\n\nexport type TaskSlot = SlotRegistry<BuildTask[]>;\nexport type OnTagResults = { builderDataMap: ComponentMap<RawBuilderData>; pipeResults: TaskResultsList[] };\nexport type OnTagOpts = {\n disableTagAndSnapPipelines?: boolean;\n throwOnError?: boolean; // on the CI it helps to save the results on failure so this is set to false\n forceDeploy?: boolean; // whether run the deploy-pipeline although the build-pipeline has failed\n populateArtifactsFrom?: ComponentID[]; // helpful for tagging from scope where we want to use the build-artifacts of previous snap.\n isSnap?: boolean;\n};\nexport const FILE_PATH_PARAM_DELIM = '~';\n\n/**\n * builder data format for the bit object store\n */\nexport type RawBuilderData = {\n pipeline: PipelineReport[];\n artifacts?: ArtifactObject[];\n aspectsData: AspectData[];\n bitVersion?: string;\n};\n/**\n * builder data mapped to an ArtifactList instance\n */\nexport type BuilderData = Omit<RawBuilderData, 'artifacts'> & {\n artifacts: ArtifactList<Artifact>;\n};\n\nexport class BuilderMain {\n constructor(\n private envs: EnvsMain,\n private workspace: Workspace,\n private buildService: BuilderService,\n private tagService: BuilderService,\n private snapService: BuilderService,\n private scope: ScopeMain,\n private isolator: IsolatorMain,\n private aspectLoader: AspectLoaderMain,\n private componentAspect: ComponentMain,\n private globalConfig: GlobalConfigMain,\n private buildTaskSlot: TaskSlot,\n private tagTaskSlot: TaskSlot,\n private snapTaskSlot: TaskSlot,\n private logger: Logger\n ) {}\n\n private async storeArtifacts(tasksResults: TaskResults[]) {\n const artifacts = tasksResults.flatMap((t) => (t.artifacts ? [t.artifacts] : []));\n await Promise.all(\n artifacts.map(async (artifactMap: ComponentMap<ArtifactList<FsArtifact>>) => {\n await Promise.all(\n artifactMap.toArray().map(async ([component, artifactList]) => {\n try {\n await artifactList.store(component);\n } catch (err: any) {\n throw new ArtifactStorageError(err, component.id.toString());\n }\n })\n );\n })\n );\n }\n\n pipelineResultsToBuilderData(\n components: Component[],\n buildPipelineResults: TaskResults[]\n ): ComponentMap<RawBuilderData> {\n const buildPipelineResultList = new BuildPipelineResultList(buildPipelineResults, components);\n return ComponentMap.as<RawBuilderData>(components, (component) => {\n const aspectsData = buildPipelineResultList.getDataOfComponent(component.id);\n const pipelineReport = buildPipelineResultList.getPipelineReportOfComponent(component.id);\n const artifacts = buildPipelineResultList.getArtifactsDataOfComponent(component.id);\n return { pipeline: pipelineReport, artifacts, aspectsData, bitVersion: getBitVersion() };\n });\n }\n\n async tagListener(\n components: Component[],\n options: OnTagOpts = {},\n isolateOptions: IsolateComponentsOptions = {},\n builderOptions: BuilderServiceOptions = {}\n ): Promise<OnTagResults> {\n const pipeResults: TaskResultsList[] = [];\n const allTasksResults: TaskResults[] = [];\n const { throwOnError, forceDeploy, disableTagAndSnapPipelines, isSnap, populateArtifactsFrom } = options;\n if (populateArtifactsFrom) isolateOptions.populateArtifactsFrom = populateArtifactsFrom;\n const buildEnvsExecutionResults = await this.build(\n components,\n { emptyRootDir: true, ...isolateOptions },\n {\n ...builderOptions,\n // even when build is skipped (in case of tag-from-scope), the pre-build/post-build and teambit.harmony/aspect tasks are needed\n tasks: populateArtifactsFrom ? [AspectAspect.id] : undefined,\n }\n );\n if (throwOnError && !forceDeploy) buildEnvsExecutionResults.throwErrorsIfExist();\n allTasksResults.push(...buildEnvsExecutionResults.tasksResults);\n pipeResults.push(buildEnvsExecutionResults);\n\n if (forceDeploy || (!disableTagAndSnapPipelines && !buildEnvsExecutionResults?.hasErrors())) {\n const builderOptionsForTagSnap: BuilderServiceOptions = {\n ...builderOptions,\n seedersOnly: isolateOptions.seedersOnly,\n previousTasksResults: buildEnvsExecutionResults?.tasksResults,\n };\n const deployEnvsExecutionResults = isSnap\n ? await this.runSnapTasks(components, builderOptionsForTagSnap)\n : await this.runTagTasks(components, builderOptionsForTagSnap);\n if (throwOnError && !forceDeploy) deployEnvsExecutionResults.throwErrorsIfExist();\n allTasksResults.push(...deployEnvsExecutionResults.tasksResults);\n pipeResults.push(deployEnvsExecutionResults);\n }\n await this.storeArtifacts(allTasksResults);\n const builderDataMap = this.pipelineResultsToBuilderData(components, allTasksResults);\n if (populateArtifactsFrom) await this.combineBuildDataFrom(builderDataMap, populateArtifactsFrom);\n this.validateBuilderDataMap(builderDataMap);\n\n await this.sanitizePreviewData(components);\n\n return { builderDataMap, pipeResults };\n }\n\n /**\n * remove the onlyOverview from the preview data of the component if\n * the env is in the workspace\n * the env is not tagged with the component\n * the last tagged env has onlyOverview undefined in preview data\n *\n * We don't want to do this but have no choice because,\n * when we load components in workspace,\n * we set the onlyOverview to true in the env's preview data\n * which sets the onlyOverview to true in the component's preview data\n * but if you don't tag the env with the component,\n * the onlyOverview will be true in the component's preview data, since its env is in the workspace\n * even though the env it is tagged with doesn't have onlyOverview in its preview data\n * which will result in inconsistent preview data when exported to the scope\n */\n async sanitizePreviewData(harmonyComps: Component[]) {\n const compsBeingTaggedLookup = new Set(harmonyComps.map((comp) => comp.id.toString()));\n\n const harmonyCompIdsWithEnvId = await Promise.all(\n harmonyComps.map(async (comp) => {\n const envId = await this.envs.getEnvId(comp);\n if (this.envs.isUsingCoreEnv(comp)) {\n return [comp.id.toString(), { envId, inWs: false, lastTaggedEnvHasOnlyOverview: false }] as [\n string,\n { envId: string; inWs: boolean; lastTaggedEnvHasOnlyOverview?: boolean; isEnvTaggedWithComp?: boolean }\n ];\n }\n\n // check if the env is tagged with the component\n if (envId && !compsBeingTaggedLookup.has(comp.id.toString())) {\n return [comp.id.toString(), { envId, isEnvTaggedWithComp: false }] as [\n string,\n { envId: string; inWs?: boolean; lastTaggedEnvHasOnlyOverview?: boolean; isEnvTaggedWithComp?: boolean }\n ];\n }\n\n const envCompId = (envId && ComponentID.fromString(envId)) || undefined;\n const inWs = this.workspace && envCompId ? await this.workspace.hasId(envCompId) : false;\n\n const lastTaggedEnvHasOnlyOverview: boolean | undefined =\n envCompId &&\n (await this.scope.get(envCompId, false))?.state.aspects.get('teambit.preview/preview')?.data?.onlyOverview;\n\n return [comp.id.toString(), { envId, inWs, lastTaggedEnvHasOnlyOverview, isEnvTaggedWithComp: true }] as [\n string,\n { envId: string; inWs: boolean; lastTaggedEnvHasOnlyOverview: boolean; isEnvTaggedWithComp?: boolean }\n ];\n })\n );\n\n const harmonyCompIdsWithEnvIdMap = new Map(harmonyCompIdsWithEnvId);\n\n const compsToDeleteOnlyOverviewPreviewData = harmonyComps.filter((comp) => {\n const envData:\n | { envId: string; inWs?: boolean; lastTaggedEnvHasOnlyOverview?: boolean; isEnvTaggedWithComp?: boolean }\n | undefined = harmonyCompIdsWithEnvIdMap.get(comp.id.toString());\n return envData?.inWs && !envData?.lastTaggedEnvHasOnlyOverview && envData?.isEnvTaggedWithComp;\n });\n\n for (const comp of compsToDeleteOnlyOverviewPreviewData) {\n const previewData = comp.state.aspects.get('teambit.preview/preview')?.data;\n // if the env is not tagged with the component remove it from the preview data of the component\n delete previewData?.onlyOverview;\n }\n }\n\n private validateBuilderDataMap(builderDataMap: ComponentMap<RawBuilderData>) {\n builderDataMap.forEach((buildData: RawBuilderData, component) => {\n const taskSerializedIds = buildData.pipeline.map((t) =>\n BuildTaskHelper.serializeId({ aspectId: t.taskId, name: t.taskName })\n );\n const duplications = findDuplications(taskSerializedIds);\n if (duplications.length) {\n throw new Error(\n `build-task-results validation has failed. the following task(s) of \"${component.id.toString()}\" are duplicated: ${duplications.join(\n ', '\n )}`\n );\n }\n });\n }\n\n private async combineBuildDataFrom(\n builderDataMap: ComponentMap<RawBuilderData>,\n populateArtifactsFrom: ComponentID[]\n ) {\n const promises = builderDataMap.map(async (builderData, component) => {\n const populateFrom = populateArtifactsFrom.find((id) => id.isEqual(component.id, { ignoreVersion: true }));\n const idStr = component.id.toString();\n if (!populateFrom) {\n throw new Error(`combineBuildDataFromParent: unable to find where to populate the artifacts from for ${idStr}`);\n }\n const populateFromComp = await this.componentAspect.getHost().get(populateFrom);\n if (!populateFromComp)\n throw new Error(\n `combineBuildDataFromParent, unable to load parent component of ${idStr}. hash: ${populateFrom.version}`\n );\n const populateFromBuilderData = this.getBuilderData(populateFromComp);\n if (!populateFromBuilderData) throw new Error(`parent of ${idStr} was not built yet. unable to continue`);\n populateFromBuilderData.artifacts.forEach((artifact) => {\n const artifactObj = artifact.toObject();\n if (!builderData.artifacts) builderData.artifacts = [];\n if (\n builderData.artifacts.find(\n (a) =>\n a.task.id === artifactObj.task.id && a.task.name === artifactObj.task.name && a.name === artifactObj.name\n )\n ) {\n return;\n }\n builderData.artifacts.push(artifactObj);\n });\n populateFromBuilderData.aspectsData.forEach((aspectData) => {\n if (builderData.aspectsData.find((a) => a.aspectId === aspectData.aspectId)) return;\n builderData.aspectsData.push(aspectData);\n });\n populateFromBuilderData.pipeline.forEach((pipeline) => {\n if (builderData.pipeline.find((p) => p.taskId === pipeline.taskId && p.taskName === pipeline.taskName)) return;\n builderData.pipeline.push(pipeline);\n });\n });\n\n await Promise.all(promises.flattenValue());\n }\n\n // TODO: merge with getArtifactsVinylByExtensionAndName by getting aspect name and name as object with optional props\n async getArtifactsVinylByAspect(component: Component, aspectName: string): Promise<ArtifactVinyl[]> {\n const artifacts = this.getArtifactsByAspect(component, aspectName);\n const vinyls = await artifacts.getVinylsAndImportIfMissing(component.id, this.scope.legacyScope);\n return vinyls;\n }\n\n async getArtifactsVinylByAspectAndName(\n component: Component,\n aspectName: string,\n name: string\n ): Promise<ArtifactVinyl[]> {\n const artifacts = this.getArtifactsByAspectAndName(component, aspectName, name);\n const vinyls = await artifacts.getVinylsAndImportIfMissing(component.id, this.scope.legacyScope);\n return vinyls;\n }\n\n async getArtifactsVinylByAspectAndTaskName(\n component: Component,\n aspectName: string,\n name: string\n ): Promise<ArtifactVinyl[]> {\n const artifacts = this.getArtifactsbyAspectAndTaskName(component, aspectName, name);\n const vinyls = await artifacts.getVinylsAndImportIfMissing(component.id, this.scope.legacyScope);\n return vinyls;\n }\n\n getArtifactsByName(component: Component, name: string): ArtifactList<Artifact> {\n const artifacts = this.getArtifacts(component).byAspectNameAndName(undefined, name);\n return artifacts;\n }\n\n getArtifactsByAspect(component: Component, aspectName: string): ArtifactList<Artifact> {\n const artifacts = this.getArtifacts(component).byAspectNameAndName(aspectName);\n return artifacts;\n }\n\n getArtifactsByAspectAndName(component: Component, aspectName: string, name: string): ArtifactList<Artifact> {\n const artifacts = this.getArtifacts(component).byAspectNameAndName(aspectName, name);\n return artifacts;\n }\n\n getArtifactsbyAspectAndTaskName(component: IComponent, aspectName: string, taskName: string): ArtifactList<Artifact> {\n const artifacts = this.getArtifacts(component).byAspectNameAndTaskName(aspectName, taskName);\n return artifacts;\n }\n\n /**\n * this is the aspect's data that was generated as \"metadata\" of the task component-result during the build process\n * and saved by the builder aspect in the \"aspectsData\" property.\n * (not to be confused with the data saved in the aspect itself, which is saved in the \"data\" property of the aspect).\n */\n getDataByAspect(component: IComponent, aspectName: string): TaskMetadata | undefined {\n const aspectsData = this.getBuilderData(component)?.aspectsData;\n const data = aspectsData?.find((aspectData) => aspectData.aspectId === aspectName);\n return data?.data;\n }\n\n getArtifacts(component: IComponent): ArtifactList<Artifact> {\n const artifacts = this.getBuilderData(component)?.artifacts || ArtifactList.fromArray([]);\n return artifacts;\n }\n\n getBuilderData(component: IComponent): BuilderData | undefined {\n const data = component.get(BuilderAspect.id)?.data;\n if (!data) return undefined;\n const clonedData = cloneDeep(data) as BuilderData;\n let artifactFiles: ArtifactFiles;\n const artifacts = clonedData.artifacts?.map((artifact) => {\n if (!(artifact.files instanceof ArtifactFiles)) {\n artifactFiles = ArtifactFiles.fromObject(artifact.files);\n } else {\n artifactFiles = artifact.files;\n }\n if (artifact instanceof Artifact) {\n return artifact;\n }\n Object.assign(artifact, { files: artifactFiles });\n return Artifact.fromArtifactObject(artifact);\n });\n clonedData.artifacts = ArtifactList.fromArray(artifacts || []);\n return clonedData;\n }\n\n async build(\n components: Component[],\n isolateOptions?: IsolateComponentsOptions,\n builderOptions?: BuilderServiceOptions,\n extraOptions?: { includeTag?: boolean; includeSnap?: boolean }\n ): Promise<TaskResultsList> {\n const ids = components.map((c) => c.id);\n const capsulesBaseDir = this.buildService.getComponentsCapsulesBaseDir();\n const baseIsolateOpts = {\n baseDir: capsulesBaseDir,\n useHash: !capsulesBaseDir,\n };\n const mergedIsolateOpts = {\n ...baseIsolateOpts,\n ...isolateOptions,\n };\n\n const network = await this.isolator.isolateComponents(ids, mergedIsolateOpts, this.scope.legacyScope);\n const envs = await this.envs.createEnvironment(network.graphCapsules.getAllComponents());\n const builderServiceOptions = {\n seedersOnly: isolateOptions?.seedersOnly,\n originalSeeders: ids,\n capsulesBaseDir,\n ...(builderOptions || {}),\n };\n this.logger.consoleTitle(`Total ${components.length} components to build`);\n const buildResult: TaskResultsList = await envs.runOnce(this.buildService, builderServiceOptions);\n\n if (extraOptions?.includeSnap || extraOptions?.includeTag) {\n const builderOptionsForTagSnap: BuilderServiceOptions = {\n ...builderServiceOptions,\n previousTasksResults: buildResult.tasksResults,\n };\n const deployEnvsExecutionResults = extraOptions?.includeSnap\n ? await this.runSnapTasks(components, builderOptionsForTagSnap)\n : await this.runTagTasks(components, builderOptionsForTagSnap);\n buildResult.tasksResults.push(...deployEnvsExecutionResults.tasksResults);\n }\n\n return buildResult;\n }\n\n async runTagTasks(components: Component[], builderOptions: BuilderServiceOptions): Promise<TaskResultsList> {\n const envs = await this.envs.createEnvironment(components);\n const buildResult = await envs.runOnce(this.tagService, builderOptions);\n\n return buildResult;\n }\n\n async runSnapTasks(components: Component[], builderOptions: BuilderServiceOptions): Promise<TaskResultsList> {\n const envs = await this.envs.createEnvironment(components);\n const buildResult = await envs.runOnce(this.snapService, builderOptions);\n\n return buildResult;\n }\n\n listTasks(component: Component) {\n const compEnv = this.envs.getEnv(component);\n const buildTasks = this.buildService.getCurrentPipeTasks(compEnv);\n const tagTasks = this.tagService.getCurrentPipeTasks(compEnv);\n const snapTasks = this.snapService.getCurrentPipeTasks(compEnv);\n return { id: component.id, envId: compEnv.id, buildTasks, tagTasks, snapTasks };\n }\n\n /**\n * register a build task to apply on all component build pipelines.\n * build happens on `bit build` and as part of `bit tag --persist`.\n */\n registerBuildTasks(tasks: BuildTask[]) {\n this.buildTaskSlot.register(tasks);\n return this;\n }\n\n /**\n * @deprecated use registerTagTasks or registerSnapTasks\n */\n registerDeployTasks(tasks: BuildTask[]) {\n this.tagTaskSlot.register(tasks);\n return this;\n }\n\n /**\n * tag tasks that don't get executed on `bit build`, only on `bit tag'.\n * this pipeline is running once the build-pipeline has completed.\n */\n registerTagTasks(tasks: BuildTask[]) {\n this.tagTaskSlot.register(tasks);\n return this;\n }\n\n /**\n * tag tasks that don't get executed on `bit build`, only on `bit snap'.\n * this pipeline is running once the build-pipeline has completed.\n */\n registerSnapTasks(tasks: BuildTask[]) {\n this.snapTaskSlot.register(tasks);\n return this;\n }\n\n getDownloadUrlForArtifact(componentId: ComponentID, taskId: string, path?: string) {\n return `/api/${componentId}/~aspect/builder/${taskId}/${path ? `${FILE_PATH_PARAM_DELIM}${path}` : ''}`;\n }\n\n static slots = [Slot.withType<BuildTask>(), Slot.withType<BuildTask>(), Slot.withType<BuildTask>()];\n\n static runtime = MainRuntime;\n static dependencies = [\n CLIAspect,\n EnvsAspect,\n WorkspaceAspect,\n ScopeAspect,\n IsolatorAspect,\n LoggerAspect,\n AspectLoaderAspect,\n GraphqlAspect,\n GeneratorAspect,\n ComponentAspect,\n UIAspect,\n GlobalConfigAspect,\n ];\n\n static async provider(\n [cli, envs, workspace, scope, isolator, loggerExt, aspectLoader, graphql, generator, component, ui, globalConfig]: [\n CLIMain,\n EnvsMain,\n Workspace,\n ScopeMain,\n IsolatorMain,\n LoggerMain,\n AspectLoaderMain,\n GraphqlMain,\n GeneratorMain,\n ComponentMain,\n UiMain,\n GlobalConfigMain\n ],\n config,\n [buildTaskSlot, tagTaskSlot, snapTaskSlot]: [TaskSlot, TaskSlot, TaskSlot]\n ) {\n const artifactFactory = new ArtifactFactory();\n const logger = loggerExt.createLogger(BuilderAspect.id);\n const buildService = new BuilderService(\n isolator,\n logger,\n buildTaskSlot,\n 'getBuildPipe',\n 'build',\n artifactFactory,\n scope,\n globalConfig\n );\n envs.registerService(buildService);\n const tagService = new BuilderService(\n isolator,\n logger,\n tagTaskSlot,\n 'getTagPipe',\n 'tag',\n artifactFactory,\n scope,\n globalConfig\n );\n const snapService = new BuilderService(\n isolator,\n logger,\n snapTaskSlot,\n 'getSnapPipe',\n 'snap',\n artifactFactory,\n scope,\n globalConfig\n );\n const builder = new BuilderMain(\n envs,\n workspace,\n buildService,\n tagService,\n snapService,\n scope,\n isolator,\n aspectLoader,\n component,\n globalConfig,\n buildTaskSlot,\n tagTaskSlot,\n snapTaskSlot,\n logger\n );\n builder.registerBuildTasks([new BundleUiTask(ui, logger)]);\n component.registerRoute([new BuilderRoute(builder, scope, logger)]);\n graphql.register(builderSchema(builder, logger));\n if (generator) generator.registerComponentTemplate([buildTaskTemplate]);\n const commands = [new BuilderCmd(builder, workspace, logger), new ArtifactsCmd(builder, component)];\n cli.register(...commands);\n\n return builder;\n }\n}\n\nBuilderAspect.addRuntime(BuilderMain);\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,4 @@
1
1
  import { BitError } from '@teambit/bit-error';
2
- import { Component } from '@teambit/component';
3
2
  export declare class ArtifactStorageError extends BitError {
4
- private originalError;
5
- private component;
6
- constructor(originalError: Error, component: Component);
3
+ constructor(originalError: Error, idStr: string);
7
4
  }
@@ -12,11 +12,9 @@ function _bitError() {
12
12
  return data;
13
13
  }
14
14
  class ArtifactStorageError extends _bitError().BitError {
15
- constructor(originalError, component) {
16
- super(`failed to store artifacts for component ${component.id.toString()}.
15
+ constructor(originalError, idStr) {
16
+ super(`failed to store artifacts for component ${idStr}.
17
17
  Error: ${originalError.message}`);
18
- this.originalError = originalError;
19
- this.component = component;
20
18
  }
21
19
  }
22
20
  exports.ArtifactStorageError = ArtifactStorageError;
@@ -1 +1 @@
1
- {"version":3,"names":["_bitError","data","require","ArtifactStorageError","BitError","constructor","originalError","component","id","toString","message","exports"],"sources":["artifact-storage-error.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport { Component } from '@teambit/component';\n\nexport class ArtifactStorageError extends BitError {\n constructor(private originalError: Error, private component: Component) {\n super(`failed to store artifacts for component ${component.id.toString()}.\nError: ${originalError.message}`);\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,UAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,SAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGO,MAAME,oBAAoB,SAASC,oBAAQ,CAAC;EACjDC,WAAWA,CAASC,aAAoB,EAAUC,SAAoB,EAAE;IACtE,KAAK,CAAC,2CAA2CA,SAAS,CAACC,EAAE,CAACC,QAAQ,CAAC,CAAC;AAC5E,SAASH,aAAa,CAACI,OAAO,EAAE,CAAC;IAAC,KAFZJ,aAAoB,GAApBA,aAAoB;IAAA,KAAUC,SAAoB,GAApBA,SAAoB;EAGtE;AACF;AAACI,OAAA,CAAAR,oBAAA,GAAAA,oBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_bitError","data","require","ArtifactStorageError","BitError","constructor","originalError","idStr","message","exports"],"sources":["artifact-storage-error.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\n\nexport class ArtifactStorageError extends BitError {\n constructor(originalError: Error, idStr: string) {\n super(`failed to store artifacts for component ${idStr}.\nError: ${originalError.message}`);\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,UAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,SAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,oBAAoB,SAASC,oBAAQ,CAAC;EACjDC,WAAWA,CAACC,aAAoB,EAAEC,KAAa,EAAE;IAC/C,KAAK,CAAC,2CAA2CA,KAAK;AAC1D,SAASD,aAAa,CAACE,OAAO,EAAE,CAAC;EAC/B;AACF;AAACC,OAAA,CAAAN,oBAAA,GAAAA,oBAAA","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.pipelines_builder@1.0.330/dist/builder.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.pipelines_builder@1.0.330/dist/builder.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.pipelines_builder@1.0.331/dist/builder.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.pipelines_builder@1.0.331/dist/builder.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -1,9 +1,8 @@
1
1
  import { BitError } from '@teambit/bit-error';
2
- import { Component } from '@teambit/component';
3
2
 
4
3
  export class ArtifactStorageError extends BitError {
5
- constructor(private originalError: Error, private component: Component) {
6
- super(`failed to store artifacts for component ${component.id.toString()}.
4
+ constructor(originalError: Error, idStr: string) {
5
+ super(`failed to store artifacts for component ${idStr}.
7
6
  Error: ${originalError.message}`);
8
7
  }
9
8
  }
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/builder",
3
- "version": "1.0.330",
3
+ "version": "1.0.331",
4
4
  "homepage": "https://bit.cloud/teambit/pipelines/builder",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.pipelines",
8
8
  "name": "builder",
9
- "version": "1.0.330"
9
+ "version": "1.0.331"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -26,24 +26,25 @@
26
26
  "@teambit/harmony": "0.4.6",
27
27
  "@teambit/bit-error": "0.0.404",
28
28
  "@teambit/component-id": "1.2.0",
29
- "@teambit/component": "1.0.330",
30
- "@teambit/envs": "1.0.330",
31
- "@teambit/logger": "0.0.1000",
29
+ "@teambit/component": "1.0.331",
30
+ "@teambit/envs": "1.0.331",
31
+ "@teambit/logger": "0.0.1001",
32
32
  "@teambit/toolbox.string.capitalize": "0.0.496",
33
- "@teambit/tester": "1.0.330",
34
- "@teambit/isolator": "1.0.330",
35
- "@teambit/cli": "0.0.907",
36
- "@teambit/workspace": "1.0.330",
37
- "@teambit/aspect-loader": "1.0.330",
38
- "@teambit/aspect": "1.0.330",
33
+ "@teambit/tester": "1.0.331",
34
+ "@teambit/isolator": "1.0.331",
35
+ "@teambit/cli": "0.0.908",
36
+ "@teambit/workspace": "1.0.331",
37
+ "@teambit/aspect-loader": "1.0.331",
38
+ "@teambit/aspect": "1.0.331",
39
39
  "@teambit/bit.get-bit-version": "0.0.1",
40
- "@teambit/generator": "1.0.331",
41
- "@teambit/global-config": "0.0.910",
42
- "@teambit/graphql": "1.0.330",
43
- "@teambit/scope": "1.0.330",
40
+ "@teambit/generator": "1.0.332",
41
+ "@teambit/global-config": "0.0.911",
42
+ "@teambit/graphql": "1.0.331",
43
+ "@teambit/scope": "1.0.331",
44
44
  "@teambit/toolbox.array.duplications-finder": "0.0.1",
45
- "@teambit/ui": "1.0.330",
46
- "@teambit/express": "0.0.1006"
45
+ "@teambit/ui": "1.0.331",
46
+ "@teambit/express": "0.0.1007",
47
+ "@teambit/legacy.utils": "0.0.3"
47
48
  },
48
49
  "devDependencies": {
49
50
  "@types/lodash": "4.14.165",
@@ -53,7 +54,7 @@
53
54
  "@types/minimatch": "3.0.4",
54
55
  "@types/mocha": "9.1.0",
55
56
  "chai": "4.3.0",
56
- "@teambit/harmony.envs.core-aspect-env": "0.0.39",
57
+ "@teambit/harmony.envs.core-aspect-env": "0.0.42",
57
58
  "@teambit/pipelines.aspect-docs.builder": "0.0.168"
58
59
  },
59
60
  "peerDependencies": {