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

kw first setup #242

Open
rodrigosiqueira opened this issue Apr 25, 2021 · 3 comments
Open

kw first setup #242

rodrigosiqueira opened this issue Apr 25, 2021 · 3 comments
Labels
enhancement New feature or request good first issue Good for newcomers init
Projects

Comments

@rodrigosiqueira
Copy link
Collaborator

It could be nice if we have an interactive feature that organizes the first setup, something that checks or configures:

  1. Check if the user has ssh setup in their machine;
  2. Setup ssh in a remote machine;
  3. Help to setup git;
  4. Help to setup kworkflow.config;
  5. Check for required;

Maybe we can add this inside kw init, maybe something like:

kw init --interactive-setup
1. Check ssh
   [OK] It looks like that you already setup ssh
2. Check remote
   [Fail] It looks like that you don't have ssh access to your remote machine.
   Do you want to setup it now? (y/n)
   y
   ...
3. Check local git:
   Your git name: lala
   Is this your real name? (y/n)
   ...
   Your git email:
   ...
4. Setup your kworkflow.config:
...
@rodrigosiqueira rodrigosiqueira added enhancement New feature or request good first issue Good for newcomers labels Apr 25, 2021
@magalilemes magalilemes self-assigned this Jul 15, 2021
@magalilemes magalilemes added this to Backlog in LabXP via automation Jul 15, 2021
@magalilemes magalilemes moved this from Backlog to TODO in LabXP Aug 2, 2021
@magalilemes magalilemes moved this from TODO to Assess in LabXP Aug 2, 2021
@rodrigosiqueira rodrigosiqueira moved this from Assess to TODO in LabXP Aug 12, 2021
@magalilemes magalilemes removed their assignment Aug 23, 2021
@rodrigosiqueira rodrigosiqueira moved this from TODO to Assess in LabXP Sep 14, 2021
@migueldmc
Copy link
Contributor

Team USP started working on this issue.

@EduBrancher
Copy link

This is our current working proposal for a first-setup API:
points between (( point )) are new feature suggestions that will not necessarily be implemented in this issue due to scoping concerns.

Steps for first setup:

  1. Verify if the user has SSH installed and active.
    - if yes, proceed
    - if not, let the user know that it is recommended to use ssh to work with kw in a virtual or remote machine. Ask if the user wants to proceed without ssh anyway. (does the remote module work without ssh?)
  2. Verify if the user has a .git directory in the present working directory.
    - check if git is installed
    - if not, let the user know that git was not found, and asks if he wants to proceed without installing git.
    - if git is installed, asks if a repository should be created and ask for user credentials if answer is affirmative.
    - ask if the user wants to use his --global or --local .git configurations in this repo. If local, proceed to set them, requesting user input.
  3. QEMU configuration and tutorials
    - ask if user has configured and installed a QEMU virtual machine for his work with KW. If not, ask if he wants to do so. If the user answers affirmatively, link FLUSP's QEMU tutorial and instruct user to follow it to configure QEMU. If the user does have a machine setup, collect it's name and path for safekeeping and future reference.
    - (( Maybe we could add an alias to it as well, such as VM1, and keep a list of VMs in use ))
  4. Remaining options
    - iterate over the remainder of the config file, and explain the configuration flags to the user interactively. Ask for confirmation (or a replacement) for all flags and explain what they do and show default value.
    - (( ask if user wants to set a prompt operation (like rm -i). This would be a new configuration flag that, when activated, treats the user as a new user and explains implications of commands, provides advice and requests confirmation of execution (for example, telling the user he should save his .config in a safe location in case things break down). This could be solved in concert with issue Add verbose option #179 ))

Co-authored by @melloguel @louhmmsb

@fonseca54nh
Copy link

It seems development for this issue is stopped, so I'll start working on it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers init
Projects
No open projects
LabXP
Assess
Development

No branches or pull requests

6 participants