-
Type:
Task
-
Resolution: Done
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
1
-
Iteration Venus, Iteration Wormhole
-
Not Needed
-
Developer Tools
A lot of the helper do dependency injection by using some of its arguments to optionally pass other (stubbed) helpers. This is getting out of hand and now we have things like
export async function publishMongosh( config: Config, mongoshGithubRepo: GithubRepo, mongodbHomebrewForkGithubRepo: GithubRepo, homebrewCoreGithubRepo: GithubRepo, barque: Barque, createAndPublishDownloadCenterConfig: typeof createAndPublishDownloadCenterConfigFn, publishToNpm: typeof publishToNpmType, pushTags: typeof pushTagsType, writeBuildInfo: typeof writeBuildInfoType, publishToHomebrew: typeof publishToHomebrewType, shouldDoPublicRelease: typeof shouldDoPublicReleaseFn = shouldDoPublicReleaseFn, getEvergreenArtifactUrl: typeof getArtifactUrlFn = getArtifactUrlFn, bumpMongoshReleasePackages: typeof bumpMongoshReleasePackagesFn = bumpMongoshReleasePackagesFn, bumpAuxiliaryPackages: typeof bumpAuxiliaryPackagesFn = bumpAuxiliaryPackagesFn, spawnSync: typeof spawnSyncFn = spawnSyncFn
We should restructure this, perhaps to use something more object oriented and not require so much back and forth when adding and using new helpers.