Skip to content

Commit

Permalink
Ask fewer questions in project:create and variable:create forms (#1137)
Browse files Browse the repository at this point in the history
Some optional questions will be omitted. The options are still available on the
command-line, and are not deprecated, but will no longer be asked in interactive
mode. These are:

* the --plan, --environments and --storage in the project:create command
* --json, --sensitive, --enabled, --prefix, --inheritable, --visible-build, and
  --visible-runtime in the variable:create command
  • Loading branch information
pjcdawkins authored Feb 14, 2023
1 parent acce8ab commit d0e0cdb
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 3 deletions.
3 changes: 3 additions & 0 deletions src/Command/Project/ProjectCreateCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -425,6 +425,7 @@ protected function getFields(SetupOptions $setupOptions = null)
},
'default' => in_array('development', $this->getAvailablePlans(false, $setupOptions)) ? 'development' : null,
'allowOther' => true,
'avoidQuestion' => true,
]),
'environments' => new Field('Environments', [
'optionName' => 'environments',
Expand All @@ -433,13 +434,15 @@ protected function getFields(SetupOptions $setupOptions = null)
'validator' => function ($value) {
return is_numeric($value) && $value > 0 && $value < 50;
},
'avoidQuestion' => true,
]),
'storage' => new Field('Storage', [
'description' => 'The amount of storage per environment, in GiB',
'default' => 5,
'validator' => function ($value) {
return is_numeric($value) && $value > 0 && $value < 1024;
},
'avoidQuestion' => true,
]),
'default_branch' => new Field('Default branch', [
'description' => 'The default Git branch name for the project (the production environment)',
Expand Down
12 changes: 9 additions & 3 deletions src/Command/Variable/VariableCommandBase.php
Original file line number Diff line number Diff line change
Expand Up @@ -195,14 +195,16 @@ function ($value) {
'description' => "The variable's value",
]);
$fields['is_json'] = new BooleanField('JSON', [
'description' => 'Whether the variable is JSON-formatted',
'questionLine' => 'Is the value JSON-formatted',
'description' => 'Whether the variable value is JSON-formatted',
'questionLine' => 'Is the value JSON-formatted?',
'default' => false,
'avoidQuestion' => true,
]);
$fields['is_sensitive'] = new BooleanField('Sensitive', [
'description' => 'Whether the variable is sensitive',
'description' => 'Whether the variable value is sensitive',
'questionLine' => 'Is the value sensitive?',
'default' => false,
'avoidQuestion' => true,
]);
$fields['prefix'] = new OptionsField('Prefix', [
'description' => "The variable name's prefix",
Expand All @@ -225,13 +227,15 @@ function ($value) {
],
'description' => 'Whether the variable should be enabled',
'questionLine' => 'Should the variable be enabled?',
'avoidQuestion' => true,
]);
$fields['is_inheritable'] = new BooleanField('Inheritable', [
'conditions' => [
'level' => self::LEVEL_ENVIRONMENT,
],
'description' => 'Whether the variable is inheritable by child environments',
'questionLine' => 'Is the variable inheritable (by child environments)?',
'avoidQuestion' => true,
]);
$fields['visible_build'] = new BooleanField('Visible at build time', [
'optionName' => 'visible-build',
Expand All @@ -243,11 +247,13 @@ function ($value) {
// This defaults to true for project-level variables, false otherwise.
return isset($values['level']) && $values['level'] === self::LEVEL_PROJECT;
},
'avoidQuestion' => true,
]);
$fields['visible_runtime'] = new BooleanField('Visible at runtime', [
'optionName' => 'visible-runtime',
'description' => 'Whether the variable should be visible at runtime',
'questionLine' => 'Should the variable be available at runtime?',
'avoidQuestion' => true,
]);

return $fields;
Expand Down

0 comments on commit d0e0cdb

Please sign in to comment.