1 | 'use strict'
|
2 |
|
3 | module.exports = {
|
4 | command: 'release',
|
5 | desc: 'Release your code onto the world',
|
6 | builder: {
|
7 | target: {
|
8 | alias: 't',
|
9 | describe: 'In which target environment to execute the tests',
|
10 | type: 'array',
|
11 | choices: ['node', 'browser', 'webworker'],
|
12 | default: ['node', 'browser', 'webworker']
|
13 | },
|
14 | build: {
|
15 | describe: 'Run build tasks before release',
|
16 | type: 'boolean',
|
17 | default: true
|
18 | },
|
19 | test: {
|
20 | describe: 'Run test tasks before release',
|
21 | type: 'boolean',
|
22 | default: true
|
23 | },
|
24 | lint: {
|
25 | describe: 'Run lint task before release',
|
26 | type: 'boolean',
|
27 | default: true
|
28 | },
|
29 | contributors: {
|
30 | describe: 'Update contributors based on the git history',
|
31 | type: 'boolean',
|
32 | default: true
|
33 | },
|
34 | bump: {
|
35 | describe: 'Bump the package version',
|
36 | type: 'boolean',
|
37 | default: true
|
38 | },
|
39 | changelog: {
|
40 | describe: 'Generate or update the CHANGELOG.md',
|
41 | type: 'boolean',
|
42 | default: true
|
43 | },
|
44 | publish: {
|
45 | describe: 'Publish to npm',
|
46 | type: 'boolean',
|
47 | default: true
|
48 | },
|
49 | commit: {
|
50 | describe: 'Commit changes to git',
|
51 | type: 'boolean',
|
52 | default: true
|
53 | },
|
54 | tag: {
|
55 | describe: 'Create release tag in git',
|
56 | type: 'boolean',
|
57 | default: true
|
58 | },
|
59 | push: {
|
60 | describe: 'Push changes to GitHub',
|
61 | type: 'boolean',
|
62 | default: true
|
63 | },
|
64 | ghrelease: {
|
65 | describe: 'Generate GitHub release',
|
66 | type: 'boolean',
|
67 | default: true
|
68 | },
|
69 | docs: {
|
70 | describe: 'Generate and publish documentation',
|
71 | type: 'boolean',
|
72 | default: true
|
73 | },
|
74 | ghtoken: {
|
75 | describe: 'Access token for generating GitHub releases',
|
76 | type: 'string',
|
77 | default: ''
|
78 | },
|
79 | type: {
|
80 | describe: 'The type of version bump for this release',
|
81 | type: 'string',
|
82 | choices: ['major', 'minor', 'patch', 'prepatch', 'preminor', 'premajor', 'prerelease'],
|
83 | default: 'patch'
|
84 | },
|
85 | preid: {
|
86 | describe: 'The prerelease identifier',
|
87 | type: 'string'
|
88 | },
|
89 | files: {
|
90 | alias: 'f',
|
91 | describe: 'Custom globs for files to test',
|
92 | type: 'array',
|
93 | default: []
|
94 | },
|
95 | exit: {
|
96 | describe: 'force shutdown of the event loop after test run: mocha will call process.exit',
|
97 | type: 'boolean',
|
98 | default: true
|
99 | },
|
100 | 'dist-tag': {
|
101 | describe: 'The npm tag to publish to',
|
102 | type: 'string'
|
103 | }
|
104 | },
|
105 | handler (argv) {
|
106 | const release = require('../src/release')
|
107 | return release(argv)
|
108 | }
|
109 | }
|