.env.dist in .env and put the secrets in it (ask us of course)task kubeconfig to load all the kubeconfig in ops.ops config use then ops config use <n> to select a configurationops setup nuvolaris login to log into one of them.env.dist in .env and put the secrets in ittask secrets generates a .secrets with all the secrets for githubtests/1-deploy.sh that builds environmentsThose notes are a remindinder of the steps executed to build our CI environment.
We have a stable test environment on Azure/AWS/GCloud with:
You to install a few tools:
taskaws cliazure cligcloud cliGenerated an user with admin power and extacted the Access and Secret Key
gcloud services enable cloudresourcemanager.googleapis.com gcloud services enable dns.googleapis.com gcloud services enable iamcredentials.googleapis.com gcloud services enable iam.googleapis.com gcloud services enable servicemanagement.googleapis.com gcloud services enable serviceusage.googleapis.com gcloud services enable storage-api.googleapis.com gcloud services enable storage-component.googleapis.com gcloud services enable deploymentmanager.googleapis.com gcloud services enable resourcemanager.projects.delete
Also manually enabled Kubernetes cluster creation and IAM management
The service account email available in: https://console.cloud.google.com/iam-admin/serviceaccounts, assigned the role “Owner” to the service account, then extracted the json for the service account:
gcloud iam service-accounts keys create ~/.ssh/gcloud.json --iam-account=<account-email>
Created the zone oshgcp.opstest.top in Gcloud
Created the following zones in AWS Route53
Registered a domain in AWS (opstest.top) and delegated all the subzones.
First running the openshift-install and then manually tweaked the configuration.
Note you need:
{"auths":{"fake":{"auth":"aWQ6cGFzcwo="}}}
Configure env copying it from env.dit and filling it with all the required secrets.
Once everything is configured we can build all the clusters:
task k3s:createtask mk8s:createtask gke:createtask aks:createtask eks:createtask osh:createNOTE: many parameters are wired in the taskfiles: look for the *:config tasks in Taskfile*.yml if you want to tune them.
Once you created the clusters, you can upload their kubeconfig or ip as secrets to GitHub with:
task secretstask upload-secrets