Bulk rename namespace staging->human-connection

This commit is contained in:
Robert Schäfer 2019-02-07 23:14:01 +01:00
parent 3bbe1f1471
commit 066adb9b6e
18 changed files with 92 additions and 92 deletions

View File

@ -28,7 +28,7 @@ If all the pods and services have settled and everything looks green in your
minikube dashboard, expose the `nitro-web` service on your host system with:
```shell
$ minikube service nitro-web --namespace=staging
$ minikube service nitro-web --namespace=human-connection
```
## Digital Ocean
@ -72,14 +72,14 @@ own setup.
#### Setup config maps
```shell
$ cp configmap-db-migration-worker.template.yaml staging/configmap-db-migration-worker.yaml
$ cp configmap-db-migration-worker.template.yaml human-connection/configmap-db-migration-worker.yaml
```
Edit all variables according to the setup of the remote legacy server.
#### Setup secrets and deploy themn
```sh
$ cp secrets.template.yaml staging/secrets.yaml
$ cp secrets.template.yaml human-connection/secrets.yaml
```
Change all secrets as needed.
@ -94,14 +94,14 @@ Those secrets get `base64` decoded in a kubernetes pod.
#### Create a namespace locally
```shell
$ kubectl create -f namespace-staging.yaml
$ kubectl create -f namespace-human-connection.yaml
```
Switch to the namespace `staging` in your kubernetes dashboard.
Switch to the namespace `human-connection` in your kubernetes dashboard.
### Run the configuration
```shell
$ kubectl apply -f staging/
$ kubectl apply -f human-connection/
```
This can take a while because kubernetes will download the docker images.
@ -118,10 +118,10 @@ tl;dr:
$ kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/mandatory.yaml
$ kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/provider/cloud-generic.yaml
```
And create an ingress service in namespace `staging`:
And create an ingress service in namespace `human-connection`:
```sh
# you should change the domain name according to your needs
$ kubectl apply -f staging/ingress.yaml
$ kubectl apply -f human-connection/ingress.yaml
```
#### Legacy data migration
@ -134,7 +134,7 @@ import the uploads folder and migrate a dump of mongodb into neo4j.
Create a configmap with the specific connection data of your legacy server:
```sh
$ kubectl create configmap db-migration-worker \
--namespace=staging \
--namespace=human-connection \
--from-literal=SSH_USERNAME=someuser \
--from-literal=SSH_HOST=yourhost \
--from-literal=MONGODB_USERNAME=hc-api \
@ -148,7 +148,7 @@ $ kubectl create configmap db-migration-worker \
Create a secret with your public and private ssh keys:
```sh
$ kubectl create secret generic ssh-keys \
--namespace=staging \
--namespace=human-connection \
--from-file=id_rsa=/path/to/.ssh/id_rsa \
--from-file=id_rsa.pub=/path/to/.ssh/id_rsa.pub \
--from-file=known_hosts=/path/to/.ssh/known_hosts
@ -163,15 +163,15 @@ Patch the existing deployments to use a multi-container setup:
```bash
cd legacy-migration
kubectl apply -f volume-claim-mongo-export.yaml
kubectl patch --namespace=staging deployment nitro-backend --patch "$(cat deployment-backend.yaml)"
kubectl patch --namespace=staging deployment nitro-neo4j --patch "$(cat deployment-neo4j.yaml)"
kubectl patch --namespace=human-connection deployment nitro-backend --patch "$(cat deployment-backend.yaml)"
kubectl patch --namespace=human-connection deployment nitro-neo4j --patch "$(cat deployment-neo4j.yaml)"
cd ..
```
Run the migration:
```shell
$ kubectl --namespace=staging get pods
$ kubectl --namespace=human-connection get pods
# change <POD_IDs> below
$ kubectl --namespace=staging exec -it nitro-neo4j-65bbdb597c-nc2lv migrate
$ kubectl --namespace=staging exec -it nitro-backend-c6cc5ff69-8h96z sync_uploads
$ kubectl --namespace=human-connection exec -it nitro-neo4j-65bbdb597c-nc2lv migrate
$ kubectl --namespace=human-connection exec -it nitro-backend-c6cc5ff69-8h96z sync_uploads
```

View File

@ -3,7 +3,7 @@
apiVersion: v1
metadata:
name: nitro-db-migration-worker
namespace: staging
namespace: human-connection
spec:
volumes:
- name: secret-volume
@ -30,7 +30,7 @@
apiVersion: v1
metadata:
name: mongo-export-claim
namespace: staging
namespace: human-connection
spec:
accessModes:
- ReadWriteOnce

View File

@ -3,27 +3,27 @@
kind: ConfigMap
data:
GRAPHQL_PORT: "4000"
GRAPHQL_URI: "http://nitro-backend.staging:4000"
GRAPHQL_URI: "http://nitro-backend.human-connection:4000"
MOCK: "false"
metadata:
name: staging-backend
namespace: staging
name: human-connection-backend
namespace: human-connection
---
apiVersion: v1
kind: ConfigMap
data:
NEO4J_URI: "bolt://nitro-neo4j.staging:7687"
NEO4J_URI: "bolt://nitro-neo4j.human-connection:7687"
NEO4J_USER: "neo4j"
NEO4J_AUTH: none
metadata:
name: staging-neo4j
namespace: staging
name: human-connection-neo4j
namespace: human-connection
---
apiVersion: v1
kind: ConfigMap
data:
CLIENT_URI: "https://nitro-staging.human-connection.org"
CLIENT_URI: "https://nitro-human-connection.human-connection.org"
MAPBOX_TOKEN: pk.eyJ1IjoiaHVtYW4tY29ubmVjdGlvbiIsImEiOiJjajl0cnBubGoweTVlM3VwZ2lzNTNud3ZtIn0.KZ8KK9l70omjXbEkkbHGsQ
metadata:
name: staging-web
namespace: staging
name: human-connection-web
namespace: human-connection

View File

@ -3,18 +3,18 @@
kind: Deployment
metadata:
name: nitro-backend
namespace: staging
namespace: human-connection
spec:
replicas: 2
minReadySeconds: 15
progressDeadlineSeconds: 60
selector:
matchLabels:
workload.user.cattle.io/workloadselector: deployment-staging-backend
human-connection.org/selector: deployment-human-connection-backend
template:
metadata:
labels:
workload.user.cattle.io/workloadselector: deployment-staging-backend
human-connection.org/selector: deployment-human-connection-backend
name: "nitro-backend"
spec:
containers:
@ -31,33 +31,33 @@
- name: CLIENT_URI
valueFrom:
configMapKeyRef:
name: staging-web
name: human-connection-web
key: CLIENT_URI
- name: GRAPHQL_PORT
valueFrom:
configMapKeyRef:
name: staging-backend
name: human-connection-backend
key: GRAPHQL_PORT
- name: GRAPHQL_URI
valueFrom:
configMapKeyRef:
name: staging-backend
name: human-connection-backend
key: GRAPHQL_URI
- name: MAPBOX_TOKEN
valueFrom:
configMapKeyRef:
name: staging-web
name: human-connection-web
key: MAPBOX_TOKEN
- name: JWT_SECRET
valueFrom:
secretKeyRef:
name: staging
name: human-connection
key: JWT_SECRET
optional: false
- name: NEO4J_URI
valueFrom:
configMapKeyRef:
name: staging-neo4j
name: human-connection-neo4j
key: NEO4J_URI
volumeMounts:
- mountPath: /nitro-backend/public/uploads
@ -74,7 +74,7 @@
apiVersion: v1
metadata:
name: uploads-claim
namespace: staging
namespace: human-connection
spec:
accessModes:
- ReadWriteOnce

View File

@ -3,17 +3,17 @@
kind: Deployment
metadata:
name: nitro-neo4j
namespace: staging
namespace: human-connection
spec:
replicas: 1
strategy: {}
selector:
matchLabels:
workload.user.cattle.io/workloadselector: deployment-staging-neo4j
human-connection.org/selector: deployment-human-connection-neo4j
template:
metadata:
labels:
workload.user.cattle.io/workloadselector: deployment-staging-neo4j
human-connection.org/selector: deployment-human-connection-neo4j
name: nitro-neo4j
spec:
containers:
@ -34,17 +34,17 @@
- name: NEO4J_URI
valueFrom:
configMapKeyRef:
name: staging-neo4j
name: human-connection-neo4j
key: NEO4J_URI
- name: NEO4J_USER
valueFrom:
configMapKeyRef:
name: staging-neo4j
name: human-connection-neo4j
key: NEO4J_USER
- name: NEO4J_AUTH
valueFrom:
configMapKeyRef:
name: staging-neo4j
name: human-connection-neo4j
key: NEO4J_AUTH
ports:
- containerPort: 7687
@ -63,7 +63,7 @@
apiVersion: v1
metadata:
name: neo4j-data-claim
namespace: staging
namespace: human-connection
spec:
accessModes:
- ReadWriteOnce

View File

@ -2,18 +2,18 @@ apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nitro-web
namespace: staging
namespace: human-connection
spec:
replicas: 2
minReadySeconds: 15
progressDeadlineSeconds: 60
selector:
matchLabels:
workload.user.cattle.io/workloadselector: deployment-staging-web
human-connection.org/selector: deployment-human-connection-web
template:
metadata:
labels:
workload.user.cattle.io/workloadselector: deployment-staging-web
human-connection.org/selector: deployment-human-connection-web
name: nitro-web
spec:
containers:
@ -26,17 +26,17 @@ spec:
- name: BACKEND_URL
valueFrom:
configMapKeyRef:
name: staging-backend
name: human-connection-backend
key: GRAPHQL_URI
- name: MAPBOX_TOKEN
valueFrom:
configMapKeyRef:
name: staging-web
name: human-connection-web
key: MAPBOX_TOKEN
- name: JWT_SECRET
valueFrom:
secretKeyRef:
name: staging
name: human-connection
key: JWT_SECRET
optional: false
image: humanconnection/nitro-web:latest

View File

@ -2,7 +2,7 @@ apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress
namespace: staging
namespace: human-connection
spec:
rules:
- host: master.nitro.human-connection.org

View File

@ -0,0 +1,14 @@
apiVersion: v1
kind: Service
metadata:
name: nitro-backend
namespace: human-connection
labels:
human-connection.org/selector: deployment-human-connection-backend
spec:
ports:
- name: web
port: 4000
targetPort: 4000
selector:
human-connection.org/selector: deployment-human-connection-backend

View File

@ -2,9 +2,9 @@ apiVersion: v1
kind: Service
metadata:
name: nitro-neo4j
namespace: staging
namespace: human-connection
labels:
workload.user.cattle.io/workloadselector: deployment-staging-neo4j
human-connection.org/selector: deployment-human-connection-neo4j
spec:
ports:
- name: bolt
@ -14,4 +14,4 @@ spec:
port: 7474
targetPort: 7474
selector:
workload.user.cattle.io/workloadselector: deployment-staging-neo4j
human-connection.org/selector: deployment-human-connection-neo4j

View File

@ -0,0 +1,14 @@
apiVersion: v1
kind: Service
metadata:
name: nitro-web
namespace: human-connection
labels:
human-connection.org/selector: deployment-human-connection-web
spec:
ports:
- name: web
port: 3000
targetPort: 3000
selector:
human-connection.org/selector: deployment-human-connection-web

View File

@ -3,7 +3,7 @@
kind: Deployment
metadata:
name: nitro-backend
namespace: staging
namespace: human-connection
spec:
template:
spec:

View File

@ -3,7 +3,7 @@
kind: Deployment
metadata:
name: nitro-neo4j
namespace: staging
namespace: human-connection
spec:
template:
spec:

View File

@ -3,7 +3,7 @@
apiVersion: v1
metadata:
name: mongo-export-claim
namespace: staging
namespace: human-connection
spec:
accessModes:
- ReadWriteOnce

View File

@ -0,0 +1,6 @@
kind: Namespace
apiVersion: v1
metadata:
name: human-connection
labels:
name: human-connection

View File

@ -1,6 +0,0 @@
kind: Namespace
apiVersion: v1
metadata:
name: staging
labels:
name: staging

View File

@ -4,5 +4,5 @@ data:
JWT_SECRET: "Yi8mJjdiNzhCRiZmdi9WZA=="
MONGODB_PASSWORD: "TU9OR09EQl9QQVNTV09SRA=="
metadata:
name: staging
namespace: staging
name: human-connection
namespace: human-connection

View File

@ -1,14 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: nitro-backend
namespace: staging
labels:
workload.user.cattle.io/workloadselector: deployment-staging-backend
spec:
ports:
- name: web
port: 4000
targetPort: 4000
selector:
workload.user.cattle.io/workloadselector: deployment-staging-backend

View File

@ -1,14 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: nitro-web
namespace: staging
labels:
workload.user.cattle.io/workloadselector: deployment-staging-web
spec:
ports:
- name: web
port: 3000
targetPort: 3000
selector:
workload.user.cattle.io/workloadselector: deployment-staging-web