react/scripts/release/prepare-release-from-npm-commands/parse-params.js
lauren 4c9392b43e
[ci] Prepare publish workflow (#32488)
Fixes up a few things in the script and workflow to make it possible to
run in CI without interactive prompts.
2025-02-27 15:24:57 -05:00

62 lines
1.3 KiB
JavaScript

#!/usr/bin/env node
'use strict';
const commandLineArgs = require('command-line-args');
const {splitCommaParams} = require('../utils');
const paramDefinitions = [
{
name: 'local',
type: Boolean,
description:
'Skip NPM and use the build already present in "build/node_modules".',
defaultValue: false,
},
{
name: 'onlyPackages',
type: String,
multiple: true,
description: 'Packages to include in publishing',
defaultValue: [],
},
{
name: 'skipPackages',
type: String,
multiple: true,
description: 'Packages to exclude from publishing',
defaultValue: [],
},
{
name: 'skipTests',
type: Boolean,
description: 'Skip automated fixture tests.',
defaultValue: false,
},
{
name: 'version',
type: String,
description:
'Version of published "next" release (e.g. 0.0.0-0e526bcec-20210202)',
},
{
name: 'publishVersion',
type: String,
description: 'Version to publish',
},
{
name: 'ci',
type: Boolean,
description: 'Run in automated environment, without interactive prompts.',
defaultValue: false,
},
];
module.exports = () => {
const params = commandLineArgs(paramDefinitions);
splitCommaParams(params.skipPackages);
return params;
};