diff --git a/.gitignore b/.gitignore index 585e3ad..382902f 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ .vscode/ **/*.json +!**/*.example.json **/cert-manager-certificate.yaml diff --git a/README.md b/README.md index 7d5151f..485d9db 100644 --- a/README.md +++ b/README.md @@ -1 +1,27 @@ -# infra-kubernetes +# infra-hideyoshi.com + +## How to Configure + +- Requirements: + + This project requires a working kubernetes cluster, in case of a testing environment a minikube cluster will by configured for you, otherwise a kubernetes will not be configured. + +- Configuring Secrets: + + ``` + python -m pip install --upgrade pip pipenv + pipenv install + pipenv run python setup.py -e {{environment-option}} -f config.json + ``` + +- Running Kubernetes Application: + + ``` + sudo apt update && sudo apt install -y jq python3-pip + cd infra-hideyoshi.com + ./deploy.sh {{environmet-flag}} + ``` + + `{{environment-flag}}` : `--local`, `--staging`, `--prod` + + `{{environment-option}` : `local`, `staging`, `prod` diff --git a/deploy.sh b/deploy.sh index 7097ef0..9c8eb9a 100755 --- a/deploy.sh +++ b/deploy.sh @@ -67,7 +67,7 @@ function application_deploy() { function main() { - if [[ $1 == "--test" || $1 == "-t" ]]; then + if [[ $1 == "--local" || $1 == "-l" ]]; then function kubectl { minikube kubectl -- $@ diff --git a/env.example.json b/env.example.json new file mode 100644 index 0000000..1533946 --- /dev/null +++ b/env.example.json @@ -0,0 +1,39 @@ +{ + "backendSecret": { + "tokenSecret": "", + "accessTokenDuration": "", + "refreshTokenDuration": "", + "defaultUserFullName": "", + "defaultUserEmail": "", + "defaultUserUsername": "", + "defaultUserPassword": "", + "googleClientId": "", + "googleClientSecret": "", + "googleRedirectUrl": "", + "githubClientId": "", + "githubClientSecret": "", + "githubRedirectUrl": "" + }, + "frontendSecret": { + "frontendPath": "", + "backendUrl": "", + "backendOAuthUrl": "" + }, + "postgresSecret": { + "postgresDatabase": "", + "postgresUser": "", + "postgresPassword": "" + }, + "redisSecret": { + "redisPassword": "" + }, + "storageSecret": { + "storageType": "", + "awsAccessKeyId": "", + "awsSecretAccessKey": "", + "awsRegion": "", + "awsBucket": "", + "virusCheckerType": "", + "virusCheckerApiKey": "" + } +} \ No newline at end of file diff --git a/setup.py b/setup.py index c93cdc5..d9466b7 100644 --- a/setup.py +++ b/setup.py @@ -14,7 +14,7 @@ def write_template(template: str, output: str): output.write(envsubst(template.read())) def configure_templates(environment: str): - if not environment in ("prod", "staging", "local", "dev"): + if not environment in ("prod", "staging", "local"): raise ValueError("Invalid Environment Selected") match environment: