Skip to content

belingud/py-flagsmith-cli

Repository files navigation

py-flagsmith-cli

PyPI version License Static Badge PyPI - Downloads Pepy Total Downlods

CodeQL Coverage Status

flagsmith-cli Python Implementation.

Homepage: https://github.com/belingud/py-flagsmith-cli

You can install with pip:

pip install py-flagsmith-cli

Recommand use pipx:

pipx install py-flagsmith-cli

And use in cmd:

pysmith -h

 Usage: pysmith [OPTIONS] COMMAND [ARGS]...

╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --install-completion            Install completion for the current shell.                                    │
│ --show-completion               Show completion for the current shell, to copy it or customize the           │
│                                 installation.                                                                │
│ --help                -h        Show this message and exit.                                                  │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────────────────╮
│ get       Retrieve flagsmith features from the Flagsmith API and output them to file.                        │
│ showenv   Show the current flagsmith environment setup. Including environment id and api host.               │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Include two commands get and showenv.

pysmith get

pysmith get -h

 Usage: pysmith get [OPTIONS] [ENVIRONMENT]

 Retrieve flagsmith features from the Flagsmith API and output them to file.

 EXAMPLES
 $ pysmith get <ENVIRONMENT_API_KEY>

 $ FLAGSMITH_ENVIRONMENT=x pysmith get

 $ pysmith get <environment>

 $ pysmith get -o ./my-file.json

 $ pysmith get -a https://flagsmith.example.com/api/v1/

 $ pysmith get -i flagsmith_identity

 $ pysmith get -np

╭─ Arguments ──────────────────────────────────────────────────────────────────────────────────────────────────╮
│   environment      [ENVIRONMENT]  The flagsmith environment key to use, defaults to the environment variable │
│                                   FLAGSMITH_ENVIRONMENT                                                      │
│                                   [env var: FLAGSMITH_ENVIRONMENT]                                           │
│                                   [default: None]                                                            │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --output     -o       <text>  The file path output [default: None]                                           │
│ --api        -a       <text>  The API URL to fetch the feature flags from                                    │
│                               [default: https://edge.api.flagsmith.com/api/v1/]                              │
│ --identity   -i       <text>  The identity for which to fetch feature flags [default: None]                  │
│ --no-pretty  -np      <flag>  Do not prettify the output JSON                                                │
│ --entity     -e       <text>  The entity to fetch, this will either be the flags or an environment document  │
│                               used for Local Evaluation Mode. Refer to                                       │
│                               https://docs.flagsmith.com/clients/server-side.                                │
│                               [default: flags]                                                               │
│ --help       -h               Show this message and exit.                                                    │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

pysmith showenv

pysmith showenv -h

 Usage: pysmith showenv [OPTIONS]

 Show the current flagsmith environment setup. Including environment id and api host.

 EXAMPLES:

 $ pysmith showenv
 Current flagsmith env setup>>>
 flagsmith environment ID: <environment-id>
 flagsmith host: <api-host>

╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --help  -h        Show this message and exit.                                                                │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Note: There is some differences with flagsmith-cli:

  1. pysmith will not save into json file if you don't specify -o
  2. pysmith will pretty json output as default, use -np to disable it. flagsmith-cli does the opposite

Refer to:

  1. https://docs.flagsmith.com/clients/CLI
  2. https://github.com/Flagsmith/flagsmith-cli

License

FOSSA Status

Releases

No releases published

Packages

No packages published

Languages