Skip to content

Commit

Permalink
fix(roc-plugin-repo): Added --prerelease option to graph and bootstrap
Browse files Browse the repository at this point in the history
  • Loading branch information
dlmr committed Nov 24, 2017
1 parent 850e9c4 commit c723884
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 10 deletions.
11 changes: 8 additions & 3 deletions extensions/roc-plugin-repo/src/commands/bootstrap.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,11 @@ import Listr from 'listr';
import isCI from 'is-ci';
import { createLink, createBinaryLink } from './utils/install';
import generateStatus from '../semver/generateStatus';
import { getNextVersions, createVersionsDoesNotMatch } from '../semver/utils';
import {
getNextVersions,
createVersionsDoesNotMatch,
getDefaultPrerelease,
} from '../semver/utils';

const removeDependenciesToBeLinked = (
dependencies = {},
Expand Down Expand Up @@ -156,11 +160,12 @@ const link = async (

export default projects => async ({
arguments: { managed: { projects: selectedProjects } },
options: { managed: { linkAll, concurrent } },
options: { managed: { linkAll, concurrent, prerelease } },
context,
}) => {
const binary = context.config.settings.repo.npmBinary;
const verbose = context.verbose;
const prereleaseTag = getDefaultPrerelease(prerelease);
const selected = projects.filter(
({ name }) => !selectedProjects || selectedProjects.includes(name),
);
Expand All @@ -174,7 +179,7 @@ export default projects => async ({
const status =
ignoreSemVer || context.config.settings.repo.mono === false
? {}
: await generateStatus(projects, true);
: await generateStatus(projects, true, undefined, prereleaseTag);

const localDependencies = getNextVersions(status, projects);

Expand Down
12 changes: 9 additions & 3 deletions extensions/roc-plugin-repo/src/commands/graph.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,17 @@ import generateTable from 'roc/lib/documentation/generateTable';
import { underline, green, red } from 'chalk';

import generateStatus from '../semver/generateStatus';
import { getNextVersions, createVersionsDoesNotMatch } from '../semver/utils';
import {
getNextVersions,
createVersionsDoesNotMatch,
getDefaultPrerelease,
} from '../semver/utils';

export default projects => async ({
arguments: { managed: { projects: selectedProjects } },
options: { managed: { prerelease } },
}) => {
const prereleaseTag = getDefaultPrerelease(prerelease);
const selected = projects.filter(
({ name }) => !selectedProjects || selectedProjects.includes(name),
);
Expand All @@ -16,7 +22,7 @@ export default projects => async ({
return log.warn('No projects were found');
}

const status = await generateStatus(projects, true);
const status = await generateStatus(projects, true, undefined, prereleaseTag);
const projectsWithVersions = getNextVersions(status, projects);

const noLocalDependencies = [];
Expand Down Expand Up @@ -58,7 +64,7 @@ export default projects => async ({
name: 'Current version',
},
next: {
name: 'Next stable version',
name: 'Next version',
},
requested: {
name: 'Requested version',
Expand Down
20 changes: 20 additions & 0 deletions extensions/roc-plugin-repo/src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,15 @@ module.exports.roc = {
description: 'Run concurrently',
default: 2,
},
prerelease: {
validator: validators.oneOf(
validators.isBoolean,
validators.isString,
),
default: false,
description:
'If a prerelease should be done, and what name that should be used for the tag, will default to "alpha"',
},
},
},
build: {
Expand Down Expand Up @@ -269,6 +278,17 @@ module.exports.roc = {
description: 'Projects to use',
},
},
options: {
prerelease: {
validator: validators.oneOf(
validators.isBoolean,
validators.isString,
),
default: false,
description:
'If a prerelease should be done, and what name that should be used for the tag, will default to "alpha"',
},
},
},
lint: {
command: args => fetchProjects(lazyRequire('./commands/lint'))(args),
Expand Down
5 changes: 1 addition & 4 deletions extensions/roc-plugin-repo/src/semver/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -142,10 +142,7 @@ export function getNextVersions(status, projects) {
const getNextVersion = project =>
!status[project.name]
? project.packageJSON.version
: semver.inc(
project.packageJSON.version,
incrementToString(status[project.name].increment),
);
: status[project.name].newVersion;

return projects.reduce(
(dependencies, project) => ({
Expand Down

0 comments on commit c723884

Please sign in to comment.