fix(release): ensure versionData is always populated even when no bumps (#30866)
This commit is contained in:
parent
73077fec66
commit
c0426c1b35
@ -1673,4 +1673,65 @@ describe('ReleaseGroupProcessor', () => {
|
|||||||
);
|
);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe('versionData', () => {
|
||||||
|
it('should populate versionData even when projects are not versioned', async () => {
|
||||||
|
const {
|
||||||
|
nxReleaseConfig,
|
||||||
|
projectGraph,
|
||||||
|
releaseGroups,
|
||||||
|
releaseGroupToFilteredProjects,
|
||||||
|
filters,
|
||||||
|
} = await createNxReleaseConfigAndPopulateWorkspace(
|
||||||
|
tree,
|
||||||
|
`
|
||||||
|
__default__ ({ "projectsRelationship": "independent" }):
|
||||||
|
- libtest1@4.5.0 [js]
|
||||||
|
- my-nest-app@1.0.0 [js]
|
||||||
|
`,
|
||||||
|
{
|
||||||
|
version: {
|
||||||
|
conventionalCommits: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mockResolveCurrentVersion
|
||||||
|
);
|
||||||
|
|
||||||
|
const processor = new ReleaseGroupProcessor(
|
||||||
|
tree,
|
||||||
|
projectGraph,
|
||||||
|
nxReleaseConfig,
|
||||||
|
releaseGroups,
|
||||||
|
releaseGroupToFilteredProjects,
|
||||||
|
{
|
||||||
|
dryRun: false,
|
||||||
|
verbose: false,
|
||||||
|
firstRelease: false,
|
||||||
|
preid: undefined,
|
||||||
|
filters,
|
||||||
|
}
|
||||||
|
);
|
||||||
|
await processor.init();
|
||||||
|
|
||||||
|
mockDeriveSpecifierFromConventionalCommits.mockImplementation(
|
||||||
|
() => 'none'
|
||||||
|
);
|
||||||
|
await processor.processGroups();
|
||||||
|
|
||||||
|
expect(processor.getVersionData()).toMatchInlineSnapshot(`
|
||||||
|
{
|
||||||
|
"libtest1": {
|
||||||
|
"currentVersion": "4.5.0",
|
||||||
|
"dependentProjects": [],
|
||||||
|
"newVersion": null,
|
||||||
|
},
|
||||||
|
"my-nest-app": {
|
||||||
|
"currentVersion": "1.0.0",
|
||||||
|
"dependentProjects": [],
|
||||||
|
"newVersion": null,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
`);
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@ -360,6 +360,15 @@ export class ReleaseGroupProcessor {
|
|||||||
);
|
);
|
||||||
this.cachedCurrentVersions.set(projectName, currentVersion);
|
this.cachedCurrentVersions.set(projectName, currentVersion);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Ensure that there is an entry in versionData for each project being processed, even if they don't end up being bumped
|
||||||
|
for (const projectName of this.allProjectsToProcess) {
|
||||||
|
this.versionData.set(projectName, {
|
||||||
|
currentVersion: this.getCurrentCachedVersionForProject(projectName),
|
||||||
|
newVersion: null,
|
||||||
|
dependentProjects: this.getOriginalDependentProjects(projectName),
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Build the dependency relationships between groups
|
// Build the dependency relationships between groups
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user