nebari icon indicating copy to clipboard operation
nebari copied to clipboard

META - CLI enhancements

Open iameskild opened this issue 2 years ago • 4 comments

A lot of work has been put into the new typer-based CLI but there are still a few remaining items that would be nice to include sooner or later.

### User experience
- [x] Move the remaining init input checks closer to the user
- [x] [SSL email check](https://github.com/Quansight/qhub/blob/3866ec9133c0976129f4676ef1de64f483bc9502/qhub/initialize.py#L430)
- [x] [GitHub repo check](https://github.com/Quansight/qhub/blob/3866ec9133c0976129f4676ef1de64f483bc9502/qhub/initialize.py#L443)
- [x] create `check_repository_creds` function (similar to `check_cloud_provider_creds`
- [ ] As more docs are updated and added to `nebari.dev`, we can add them to the CLI
- [ ] Docs for "advanced configuration changes"
- [ ] https://github.com/nebari-dev/nebari/issues/1743
- [ ] Unify the styling in a [style theme](https://rich.readthedocs.io/en/stable/style.html#style-themes) to avoid mismatch and duplication here and there (this can also help us with solving some colour contrast issues)
- [ ] Improve text entry position visibility after verbose outputs and commands
- [ ] Ensure we are adhering to known [CLI conventions](https://nullprogram.com/blog/2020/08/01/)
- [ ] Replace the `-c` flag with a more intituive and standard `--file/-f` flag
- [ ] Alternative `render` formats (tree view for example
- [ ] https://github.com/nebari-dev/nebari/issues/1742
- [ ] Project name can be eagerly verified to follow cloud provider specific naming convensions
- [ ] https://github.com/nebari-dev/nebari/issues/1708
- [ ] re-prompt user during guided init #1812 
- [ ] https://github.com/nebari-dev/nebari/issues/1946
- [ ] https://github.com/nebari-dev/nebari/issues/2023
### Functional
- [ ] For `nebari render`, add an option for additional output formats (tree view or simplified table)
- [ ] Adding verbose flag option for deploy / destroy commands (updates to run_subprocess_cmd)
- [ ] project name validation #1813 
- [ ] https://github.com/nebari-dev/nebari/issues/1935
- [ ] https://github.com/nebari-dev/nebari/issues/1936
- [ ] https://github.com/nebari-dev/nebari/issues/1937
- [ ] https://github.com/nebari-dev/nebari/issues/1934
- [ ] https://github.com/nebari-dev/nebari/issues/1964
- [ ] https://github.com/nebari-dev/nebari/issues/1962
- [ ] https://github.com/nebari-dev/nebari/issues/1961
- [ ] https://github.com/nebari-dev/nebari/issues/1960
### Miscellaneous
- [x] Add tests to the CLI (see #1862)

iameskild avatar Oct 03 '22 22:10 iameskild

Additional items and ideas:

  • [ ] Add tests to the CLI
  • [ ] Usability and accessibility improvements
    • [ ] Unify the styling in a style theme to avoid mismatch and duplication here and there (this can also help us with solving some colour contrast issues)
    • [ ] Improve text entry position visibility after verbose outputs and commands
    • [ ] Ensure we are adhering to known CLI conventions
    • [ ] Replace the -c file with a more intuitive and standard --file/-f flag
  • [ ] For render some formats could be
  • [ ] Documentation
    • [ ] Add docstrings to all the methods
    • [ ] Autogenerate API docs with py-markdown
    • [ ] Sync and publish in the nebari docs

trallard avatar Oct 07 '22 16:10 trallard

From https://github.com/Quansight/qhub/pull/1443#issuecomment-1259898747

  • [ ] adding verbose flag option for deploy / destroy commands (updates to run_subprocess_cmd)

trallard avatar Oct 07 '22 16:10 trallard

  • [x] add --disable-checks to nebari deploy
  • [x] ensure nebari destroy confirmation prompt works correctly
  • [x] ensure that terraform_state is added to config when using nebari init

iameskild avatar Oct 11 '22 02:10 iameskild

A small, nice-to-have improvement -- For the "y/N" questions, we can wait for the users to press Enter after "y" for consistency with the general flow. I find myself pressing enter out of habit after previous questions, which automatically selects an answer for the next question. This means I need to restart the guided init from the beginning.

pavithraes avatar Dec 19 '22 17:12 pavithraes

Now that we have tasklists in the org I reorganised all the tasks in the meta issue above cc/ @pavithraes @iameskild

trallard avatar Jan 12 '23 11:01 trallard

@iameskild @trallard Some of the tasks here can be good first issues, so converting them into separate issue with the GFI tags. :)

The mentored sprint at PyCon US 2023 is prompting this decision, but it can be useful for future sprints too. :)

pavithraes avatar Apr 22 '23 10:04 pavithraes