Skip to content

Concept for CLI to populate the SCS #257

@ckunki

Description

@ckunki

Ticket NC #253 made the dependencies of the NC optional.

This enables us to add the NC as light-weight dependency to the EMCP by requesting only the optional dependencies required by the EMCP.

Initial elements to be supported can be obtained from the AI Lab's main_config_ui.ipynb.

Proposal Try to stick to already established option names as far as possible, see

  • PEC
  • pytest-exasol-backend
  • BFSPY
  • ITDE

Tasks

  • Concept, naming, grouping
  • Design UI commands, subcommands, options
  • Backend variant is (must be) also stored in SCS
  • Implement
    • Commands, Sub commands
    • Environment variables, e.g. as in AI Lab
    • Interactive input for secrets, e.g. passwords
    • Store into SCS
  • Create tests
  • Create User Guide: Low prio, minimal, as last

Proposed Command Line

poetry run scs [OPTIONS] COMMAND [ARGS]...

Required arguments (ARGS):

  • SCS_FILE, optionally from environment variable SCS_FILE
  • SCS_MASTER_PASSWORD: from environment variable SCS_MASTER_PASSWORD or typed interactively

Commands:

  • show: Show the configuration currently saved to the Secure Configuration Storage.
  • check:
    • option --connect will additionally verify if connecting to the configured Exasol database instance succeeds
  • configure, sub-commands
    • onprem
    • saas
    • docker-db

Examples

  • scs show
    • replace secrets by asterisks ****
  • scs check
    • verifies if all required configs are stored
    • prints missing options
  • scs check --connect
    • verifies if all required configs are stored
    • if this is true, then additionally tries to connect
  • scs configure onprem
    • requires confirmation in case a different backend is configured in SCS already

Metadata

Metadata

Assignees

Labels

taskTasks without changes to the code base

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions