Skip to content

Metadata

It is possible to add metadata in feature files that grizzly-cli will use. Metadata comments can be added anywhere in the feature file, but it is recommended to add them in the top for readability.

Arguments

Inject grizzly-cli arguments via metadata comments. When executing a feature file, grizzly-cli will add the specified arguments automagically, if they match the command being executed.

This makes it possible to add arguments needed for a specific feature file to be documented in the feature file itself, and one does not have to remember all combinations in memory.

Format

# grizzly-cli <[sub]parser> <argument>

No validation is done that an argument actually exists in the subparser, other than that grizzly-cli will fail with an argument error. Which is solved by checking Usage and correct the metadata comments.

Examples

E.g., the run subparser is used by both dist and local, so when specifying an metadata comment for run arguments it should be:

example.feature
# grizzly-cli run --verbose
Feature: Example Feature
  Scenario: Example Scenario
    ...

This means that executing example.feature either in mode local or dist, the argument --verbose will be injected unless already manually specified.

grizzly-cli local run example.feature -> grizzly-cli local run example.feature --verbose
grizzly-cli dist run example.feature -> grizzly-cli dist run example.feature --verbose

If metadata comments adds arguments for a subparser that is not used when executing the feature file the following message will be seen when executing grizzly-cli:

?? ignoring <arguments>

Given the following feature file:

example-dist.feature
# grizzly-cli dist --health-retries 999
# grizzly-cli dist --workers 6
# grizzly-cli run --verbose
Feature: Example Feature
  Scenario: Example Scenario
    ...

When executed with grizzly-cli local run example-dist.feature, the output will contain:

?? ignoring dist --health-retries 999
?? ignoring dist --workers 6

And the command that is actually executed is grizzly local run example-dist.feature --verbose.

Notices

It is possible to tell grizzly-cli show confirmation notices with metadata in a a feature file.

This is useful to remind the user about manual steps och checks that should be done before running the feature.

Format

# grizzly-cli:notice <message>

Everything after # grizzly-cli:notice (notice the space) will be displayed in the confirmation prompt.

Examples

example.feature
# grizzly-cli:notice have you piped the fork in a loop?
Feature: Example Feature
  Scenario: Example Scenario
    ...

Running example.feature will in additional to the normal grizzly-cli input/output also trigger the following prompt:

have you piped the fork in a loop? [y/n]

If run argument -y/--yes is provided, it will only print the message and not ask for confirmation.