Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: split verbs into proper synonym groups #184

Merged
merged 1 commit into from
Oct 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/cli/flow_library.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ flow library [flags]
-h, --help help for library
-n, --namespace string Filter executables by namespace.
-t, --tag stringArray Filter by tags.
-v, --verb string Filter executables by verb. One of: [activate add analyze apply audit build bundle check clean clear configure create deactivate delete deploy destroy disable edit enable exec generate init install kill launch lint manage new open package patch publish purge push reboot refresh release reload remove render restart run scan send set setup show start stop teardown test transform undeploy uninstall unset update upgrade validate verify view watch]
-v, --verb string Filter executables by verb. One of: [abort activate add analyze apply build bundle check clean clear compile create deactivate delete deploy destroy disable enable erase exec execute fetch generate get init inspect install kill launch lint monitor new open package pause publish purge push reboot refresh release reload remove request reset restart retrieve run scan send set setup show start stop teardown terminate test tidy track trigger undeploy uninstall unset validate verify view watch]
-w, --workspace string Filter executables by workspace.
```

Expand Down
2 changes: 1 addition & 1 deletion docs/cli/flow_library_glance.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ flow library glance [flags]
-n, --namespace string Filter executables by namespace.
-o, --output string Output format. One of: yaml, json, doc, or list.
-t, --tag stringArray Filter by tags.
-v, --verb string Filter executables by verb. One of: [activate add analyze apply audit build bundle check clean clear configure create deactivate delete deploy destroy disable edit enable exec generate init install kill launch lint manage new open package patch publish purge push reboot refresh release reload remove render restart run scan send set setup show start stop teardown test transform undeploy uninstall unset update upgrade validate verify view watch]
-v, --verb string Filter executables by verb. One of: [abort activate add analyze apply build bundle check clean clear compile create deactivate delete deploy destroy disable enable erase exec execute fetch generate get init inspect install kill launch lint monitor new open package pause publish purge push reboot refresh release reload remove request reset restart retrieve run scan send set setup show start stop teardown terminate test tidy track trigger undeploy uninstall unset validate verify view watch]
-w, --workspace string Filter executables by workspace.
```

Expand Down
72 changes: 59 additions & 13 deletions docs/schemas/flowfile_schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -502,40 +502,86 @@
}
},
"ExecutableVerb": {
"description": "Keywords that describe the action an executable performs.\nWhile executables are configured with a single verb, the verb can be aliased to related verbs.\nFor example, the `exec` verb can replaced with \"run\" or \"start\" when referencing an executable.\nThis allows users to use the verb that best describes the action they are performing.\n\n- **Activation verbs**: `exec`, `run`, `start`, `activate`, `enable`, `watch`\n- **Deactivation verbs**: `deactivate`, `disable`, `stop`, `kill`\n- **Restart verbs**: `restart`, `reboot`, `reload`, `refresh`\n- **Install verbs**: `install`, `setup`, `build`, `package`, `bundle`\n- **Uninstall verbs**: `uninstall`, `teardown`, `undeploy`\n- **Update verbs**: `update`, `upgrade`, `patch`, `edit`, `transform`, `manage`, `configure`\n- **Publish verbs**: `publish`, `release`, `deploy`, `apply`, `push`, `send`\n- **Management verbs**: `manage`, `configure`, `monitor`, `edit`\n- **Test verbs**: `test`, `validate`, `check`, `verify`\n- **Analyze verbs**: `analyze`, `scan`, `lint`, `audit`\n- **Launch verbs**: `open`, `launch`, `show`, `view`, `render`\n- **Creation verbs**: `generate`, `add`, `new`, `create`, `init`, `set`\n- **Destruction verbs**: `remove`, `delete`, `unset`, `destroy`, `clean`, `clear`, `purge`\n\n[Verb group + Name] must be unique within the namespace of the workspace.\n",
"description": "Keywords that describe the action an executable performs. While executables are configured with a single verb, \nthe verb can be aliased to related verbs within its group. For example, the `activate` verb can be replaced \nwith \"enable\" or \"start\" when referencing an executable. This allows users to use the verb that best describes \nthe action they are performing.\n\n### Verb Groups\n\n- **Activation Group**: `activate`, `enable`, `start`, `trigger`\n- **Execution Group**: `exec`, `run`, `execute`\n- **Deactivation Group**: `deactivate`, `disable`, `stop`, `pause`\n- **Termination Group**: `kill`, `terminate`, `abort`\n- **Monitoring Group**: `watch`, `monitor`, `track`\n- **Restart Group**: `restart`, `reboot`, `reload`, `refresh`\n- **Installation Group**: `install`, `setup`, `deploy`\n- **Build Group**: `build`, `package`, `bundle`, `compile`\n- **Uninstallation Group**: `uninstall`, `teardown`, `undeploy`\n- **Update Group**: `update`, `upgrade`, `patch`\n- **Configuration Group**: `configure`, `manage`\n- **Edit Group**: `edit`, `transform`, `modify`\n- **Publish Group**: `publish`, `release`\n- **Distribution Group**: `push`, `send`, `apply`\n- **Test Group**: `test`, `validate`, `check`, `verify`\n- **Analysis Group**: `analyze`, `scan`, `lint`, `inspect`\n- **Launch Group**: `open`, `launch`, `show`, `view`\n- **Creation Group**: `create`, `generate`, `add`, `new`, `init`\n- **Set Group**: `set`\n- **Destruction Group**: `remove`, `delete`, `destroy`, `erase`\n- **Unset Group**: `unset`, `reset`\n- **Cleanup Group**: `clean`, `clear`, `purge`, `tidy`\n- **Retrieval Group**: `retrieve`, `fetch`, `get`, `request`\n\n### Usage Notes\n\n1. [Verb group + Name] must be unique within the namespace of the workspace.\n2. When referencing an executable, users can use any verb from the appropriate group.\n3. Choose the verb that most accurately describes the action being performed.\n4. Be consistent in verb usage within projects or teams to maintain clarity.\n\n### Examples\n\n- An executable configured with the `activate` verb could also be referenced using \"enable\" or \"start\".\n- A build process might use `build` as its primary verb, but could also be invoked with \"package\" or \"assemble\".\n- A cleanup routine configured with `clean` could be called using \"purge\" or \"sanitize\" for more specific connotations.\n \nBy organizing verbs into these groups, flow provides flexibility in how actions are described while maintaining a \nclear structure for executable operations.\n",
"type": "string",
"default": "exec",
"enum": [
"activate",
"enable",
"start",
"trigger",
"exec",
"run",
"start",
"execute",
"deactivate",
"disable",
"stop",
"pause",
"kill",
"terminate",
"abort",
"watch",
"monitor",
"track",
"restart",
"reboot",
"reload",
"refresh",
"install",
"setup",
"release",
"deploy",
"apply",
"delete",
"build",
"package",
"bundle",
"compile",
"uninstall",
"destroy",
"teardown",
"undeploy",
"update",
"upgrade",
"refresh",
"reload",
"manage",
"patch",
"configure",
"monitor",
"manage",
"edit",
"transform",
"modify",
"publish",
"release",
"push",
"send",
"apply",
"test",
"validate",
"check",
"verify",
"analyze",
"scan",
"lint",
"inspect",
"open",
"launch",
"show",
"view",
"render",
"create",
"generate",
"add",
"new",
"build",
"transform"
"init",
"set",
"remove",
"delete",
"destroy",
"erase",
"unset",
"reset",
"clean",
"clear",
"purge",
"tidy",
"retrieve",
"fetch",
"get",
"request"
]
},
"FromFile": {
Expand Down
136 changes: 104 additions & 32 deletions docs/types/flowfile.md
Original file line number Diff line number Diff line change
Expand Up @@ -368,61 +368,133 @@ A list of executables to run in serial. The executables can be defined by it's e

### ExecutableVerb

Keywords that describe the action an executable performs.
While executables are configured with a single verb, the verb can be aliased to related verbs.
For example, the `exec` verb can replaced with "run" or "start" when referencing an executable.
This allows users to use the verb that best describes the action they are performing.

- **Activation verbs**: `exec`, `run`, `start`, `activate`, `enable`, `watch`
- **Deactivation verbs**: `deactivate`, `disable`, `stop`, `kill`
- **Restart verbs**: `restart`, `reboot`, `reload`, `refresh`
- **Install verbs**: `install`, `setup`, `build`, `package`, `bundle`
- **Uninstall verbs**: `uninstall`, `teardown`, `undeploy`
- **Update verbs**: `update`, `upgrade`, `patch`, `edit`, `transform`, `manage`, `configure`
- **Publish verbs**: `publish`, `release`, `deploy`, `apply`, `push`, `send`
- **Management verbs**: `manage`, `configure`, `monitor`, `edit`
- **Test verbs**: `test`, `validate`, `check`, `verify`
- **Analyze verbs**: `analyze`, `scan`, `lint`, `audit`
- **Launch verbs**: `open`, `launch`, `show`, `view`, `render`
- **Creation verbs**: `generate`, `add`, `new`, `create`, `init`, `set`
- **Destruction verbs**: `remove`, `delete`, `unset`, `destroy`, `clean`, `clear`, `purge`

[Verb group + Name] must be unique within the namespace of the workspace.
Keywords that describe the action an executable performs. While executables are configured with a single verb,
the verb can be aliased to related verbs within its group. For example, the `activate` verb can be replaced
with "enable" or "start" when referencing an executable. This allows users to use the verb that best describes
the action they are performing.

### Verb Groups

- **Activation Group**: `activate`, `enable`, `start`, `trigger`
- **Execution Group**: `exec`, `run`, `execute`
- **Deactivation Group**: `deactivate`, `disable`, `stop`, `pause`
- **Termination Group**: `kill`, `terminate`, `abort`
- **Monitoring Group**: `watch`, `monitor`, `track`
- **Restart Group**: `restart`, `reboot`, `reload`, `refresh`
- **Installation Group**: `install`, `setup`, `deploy`
- **Build Group**: `build`, `package`, `bundle`, `compile`
- **Uninstallation Group**: `uninstall`, `teardown`, `undeploy`
- **Update Group**: `update`, `upgrade`, `patch`
- **Configuration Group**: `configure`, `manage`
- **Edit Group**: `edit`, `transform`, `modify`
- **Publish Group**: `publish`, `release`
- **Distribution Group**: `push`, `send`, `apply`
- **Test Group**: `test`, `validate`, `check`, `verify`
- **Analysis Group**: `analyze`, `scan`, `lint`, `inspect`
- **Launch Group**: `open`, `launch`, `show`, `view`
- **Creation Group**: `create`, `generate`, `add`, `new`, `init`
- **Set Group**: `set`
- **Destruction Group**: `remove`, `delete`, `destroy`, `erase`
- **Unset Group**: `unset`, `reset`
- **Cleanup Group**: `clean`, `clear`, `purge`, `tidy`
- **Retrieval Group**: `retrieve`, `fetch`, `get`, `request`

### Usage Notes

1. [Verb group + Name] must be unique within the namespace of the workspace.
2. When referencing an executable, users can use any verb from the appropriate group.
3. Choose the verb that most accurately describes the action being performed.
4. Be consistent in verb usage within projects or teams to maintain clarity.

### Examples

- An executable configured with the `activate` verb could also be referenced using "enable" or "start".
- A build process might use `build` as its primary verb, but could also be invoked with "package" or "assemble".
- A cleanup routine configured with `clean` could be called using "purge" or "sanitize" for more specific connotations.

By organizing verbs into these groups, flow provides flexibility in how actions are described while maintaining a
clear structure for executable operations.


**Type:** `string`
**Default:** `exec`
**Valid values:**
- `activate`
- `enable`
- `start`
- `trigger`
- `exec`
- `run`
- `start`
- `execute`
- `deactivate`
- `disable`
- `stop`
- `pause`
- `kill`
- `terminate`
- `abort`
- `watch`
- `monitor`
- `track`
- `restart`
- `reboot`
- `reload`
- `refresh`
- `install`
- `setup`
- `release`
- `deploy`
- `apply`
- `delete`
- `build`
- `package`
- `bundle`
- `compile`
- `uninstall`
- `destroy`
- `teardown`
- `undeploy`
- `update`
- `upgrade`
- `refresh`
- `reload`
- `manage`
- `patch`
- `configure`
- `monitor`
- `manage`
- `edit`
- `transform`
- `modify`
- `publish`
- `release`
- `push`
- `send`
- `apply`
- `test`
- `validate`
- `check`
- `verify`
- `analyze`
- `scan`
- `lint`
- `inspect`
- `open`
- `launch`
- `show`
- `view`
- `render`
- `create`
- `generate`
- `add`
- `new`
- `build`
- `transform`
- `init`
- `set`
- `remove`
- `delete`
- `destroy`
- `erase`
- `unset`
- `reset`
- `clean`
- `clear`
- `purge`
- `tidy`
- `retrieve`
- `fetch`
- `get`
- `request`



Expand Down
48 changes: 47 additions & 1 deletion types/executable/executable.gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading