When deploy Kubeinvaders on Openshift, the variable ENDPOINT is not needed anymore

This commit is contained in:
luckysideburn
2019-04-19 17:57:26 -04:00
parent b4df7de1ed
commit 9a130d40e5
4 changed files with 30 additions and 17 deletions
+2 -3
View File
@@ -2,9 +2,8 @@ FROM nginx
COPY ./js-web/KubeInvaders /var/www/html
RUN sed -i.bak 's/^user/#user/' /etc/nginx/nginx.conf
RUN sed -i.bak 's/listen\(.*\)80;/listen 8081;/' /etc/nginx/conf.d/default.conf
RUN chmod g+rwx /var/cache/nginx /var/run /var/log/nginx /var/www/html
COPY KubeInvaders.conf /etc/nginx/conf.d/KubeInvaders.conf
#COPY .KubeInv-example.json /home/web_user/.KubeInv.json
COPY nginx/KubeInvaders.templ /etc/nginx/conf.d/KubeInvaders.templ
RUN chmod g+rwx /var/cache/nginx /var/run /var/log/nginx /var/www/html /etc/nginx/conf.d/KubeInvaders.templ /etc/nginx/conf.d
EXPOSE 8080
COPY ./temporary_hack.sh /
RUN chmod a+rwx temporary_hack.sh
+7 -4
View File
@@ -25,15 +25,19 @@ To Install KubeInvaders on your Openshift Cluster clone this repo and launch the
```bash
TARGET_NAMESPACE=foobar
ENDPOINT=https://ocmaster39:8443
ROUTE_URL=kubeinvaders.org
ROUTE_HOST=kubeinvaders.org
# Please add your source ip IP_WHITELIST. This will add haproxy.router.openshift.io/ip_whitelist in KubeInvaders route
# https://docs.openshift.com/container-platform/3.9/architecture/networking/routes.html#whitelist
IP_WHITELIST="93.44.96.4"
oc new-project kubeinvaders --display-name='KubeInvaders'
oc create sa kubeinvaders -n kubeinvaders
oc create sa kubeinvaders -n $TARGET_NAMESPACE
oc adm policy add-role-to-user edit -z kubeinvaders -n $TARGET_NAMESPACE
TOKEN=$(oc describe secret -n $TARGET_NAMESPACE $(oc describe sa kubeinvaders -n $TARGET_NAMESPACE | grep Tokens | awk '{ print $2}') | grep 'token:'| awk '{ print $2}')
oc process -f openshift/KubeInvaders.yaml -p ROUTE_URL=$ROUTE_URL -p TARGET_NAMESPACE=$TARGET_NAMESPACE -p ENDPOINT=$ENDPOINT TOKEN=$TOKEN | oc create -f -
oc process -f openshift/KubeInvaders.yaml -p ROUTE_HOST=$ROUTE_HOST -p TARGET_NAMESPACE=$TARGET_NAMESPACE -p TOKEN=$TOKEN | oc create -f -
```
### Donwload KubeInvaders - External to Openshift (macOS or Linux clients)
@@ -45,7 +49,6 @@ Please check the [releases](https://github.com/lucky-sideburn/KubeInvaders/relea
Change the following variables inside the kubeinvaders DeploymentConfig
* TARGET_NAMESPACE
* ENDPOINT
* TOKEN
### How Configure KubeInvaders - Local execution
+11 -8
View File
@@ -9,8 +9,10 @@ metadata:
iconClass: fa fa-cogs
tags: "spaceinvaders"
parameters:
- description: IP addresses that can contact Kubernetes
name: IP_WHITELIST
- description: URL of KubeInvaders
name: ROUTE_URL
name: ROUTE_HOST
value: kubeinvaders.local
- description: The location of the kubeinvaders image
name: IMAGE_KUBEINVADERS
@@ -22,8 +24,6 @@ parameters:
name: TARGET_NAMESPACE
- description: Token of a serviceAccount that can kill PODs in specific namespace.
name: TOKEN
- description: Openshift Master URL
name: ENDPOINT
objects:
- apiVersion: v1
kind: ServiceAccount
@@ -35,8 +35,10 @@ objects:
metadata:
name: kubeinvaders
namespace: "${NAMESPACE}"
annotations:
haproxy.router.openshift.io/ip_whitelist: ${IP_WHITELIST}
spec:
host: "${ROUTE_URL}"
host: "${ROUTE_HOST}"
to:
name: kubeinvaders
tls:
@@ -74,15 +76,16 @@ objects:
spec:
serviceAccountName: kubeinvaders
containers:
- env:
- env:
- name: ROUTE_HOST
value: "${ROUTE_HOST}"
- name: NAMESPACE
value: "${TARGET_NAMESPACE}"
- name: TOKEN
value: "${TOKEN}"
- name: ENDPOINT
value: "${ENDPOINT}"
name: kubeinvaders
image: "docker.io/luckysideburn/kubeinvaders:0.2.7"
image: ${IMAGE_KUBEINVADERS}
imagePullPolicy: Always
ports:
- containerPort: 8080
protocol: TCP
+10 -2
View File
@@ -1,4 +1,12 @@
#!/bin/sh
ENDPOINT=$(echo $ENDPOINT | sed "s/\//\\\\\//g")
sed -i "s/___buildEnvironment.called=true/___buildEnvironment.called=true;ENV[\"TOKEN\"]=\"$TOKEN\";ENV[\"ENDPOINT\"]=\"$ENDPOINT\";ENV[\"NAMESPACE\"]=\"$NAMESPACE\"/g" /var/www/html/KubeInvaders_wasm.js
ENDPOINT=$(echo "https://${ROUTE_HOST}" | sed "s/\//\\\\\//g")
sed -i "s/___buildEnvironment.called=true/___buildEnvironment.called=true;ENV[\"TOKEN\"]=\"$TOKEN\";ENV[\"ENDPOINT\"]=\"$ENDPOINT\/kube\";ENV[\"NAMESPACE\"]=\"$NAMESPACE\"/g" /var/www/html/KubeInvaders_wasm.js
sed -i "s/TOTAL_ENV_SIZE=1024/TOTAL_ENV_SIZE=2048/g" /var/www/html/KubeInvaders_wasm.js
sed -i "s/TOTAL_ENV_SIZE=1024/TOTAL_ENV_SIZE=2048/g" /var/www/html/KubeInvaders_asmjs.js
envsubst '${KUBERNETES_SERVICE_HOST}:${KUBERNETES_SERVICE_PORT_HTTPS}' < "/etc/nginx/conf.d/KubeInvaders.templ" > "/etc/nginx/conf.d/KubeInvaders.conf"
nginx -g 'daemon off;'