Draft: sylva-setup cli
Relates to sylva-projects.gitlab.io#28
What does this MR do and why?
It's still a WIP MR, once the relevant functionnalities will be implementend as intended, we will try add this in the sylvactl binary.
The main objective is to provide the end user with a setup script to facilitate deployments.
For example, nextjs uses something like this :
What is your project named? my-app
Would you like to use TypeScript? No / Yes
Would you like to use ESLint? No / Yes
Would you like to use Tailwind CSS? No / Yes
Would you like to use `src/` directory? No / Yes
Would you like to use App Router? (recommended) No / Yes
Would you like to customize the default import alias (@/*)? No / Yes
It would be great to have something similar for Sylva deployments
Let's expose a use case for explanation :
sylvactl init
- Infraprovider
**capo** / capd / capv / capm3
- BootstrapProvider
**kubeadm** / cabprke2
- Specific proxy config ?
**No** / Yes
- Anything Else
...
You choose : kubeadm - capd
Configuration files have been copied
...
WARNINGS:
You have not set proxies
DockerHub rate limit ! Set your mirrors
Cluster_public_ip not set
etc
...
Sylva setup completed successfully!
Test coverage
Automatic testing : Will provide appropriate files for unit testing (TBD) Manual testing : All branches of this script will be tested on a clean VM with appropriate requirements.
Notes
(I'll also bring a sylvactl req command that will check necessary binary access and that will give the user the opportunity to download it easily)
Edited by Antoine Monlong