Script deploy to multi-AZ Kube from CI

This commit is contained in:
Emanuel Borsboom 2016-02-18 06:38:43 -08:00
parent eaa816885e
commit 46b185766d
9 changed files with 48 additions and 22 deletions

3
.gitmodules vendored Normal file
View file

@ -0,0 +1,3 @@
[submodule "etc/common/devops-helpers"]
path = etc/common/devops-helpers
url = https://github.com/fpco/devops-helpers.git

8
etc/build-deploy.sh Executable file
View file

@ -0,0 +1,8 @@
#!/usr/bin/env bash
set -xe
cd "$(dirname "${BASH_SOURCE[0]}")/.."
ENV="$1"; shift
stack --install-ghc test "$@"
etc/docker/build.sh --no-build "$@"
etc/docker/push.sh "$ENV"
etc/kubernetes/deploy_rc.sh "$ENV"

@ -0,0 +1 @@
Subproject commit 0674691287f5acb1d7eb8da3fcf67b0a8ea8d133

4
etc/docker/build.sh Executable file
View file

@ -0,0 +1,4 @@
#!/usr/bin/env bash
set -xe
cd "$(dirname "${BASH_SOURCE[0]}")/../.."
stack image container "$@"

3
etc/docker/push.sh Executable file
View file

@ -0,0 +1,3 @@
#!/usr/bin/env bash
exec "$(dirname "${BASH_SOURCE[0]}")/../common/devops-helpers/docker/push_helper.sh" \
--repo fpco/stackage-server "$@"

7
etc/kubernetes/deploy_rc.sh Executable file
View file

@ -0,0 +1,7 @@
#!/usr/bin/env bash
exec "$(dirname ${BASH_SOURCE[0]})/../common/devops-helpers/kubernetes/deploy_rc_helper.sh" \
--app "stackage-server" \
--repo fpco/stackage-server \
--specdir "$(dirname "${BASH_SOURCE[0]}")" \
--clusters ~/.kube/clusters/fpco-prod-us-east-1?/kubeconfig \
"$@"

View file

@ -1,26 +1,6 @@
# Kubernetes
---
apiVersion: v1
kind: Service
metadata:
name: stackage-server-prod
labels:
app: stackage-server-prod
spec:
ports:
- name: http
port: 80
nodePort: 31419
targetPort: http
- name: https
port: 443
nodePort: 30733
targetPort: http
type: NodePort
selector:
app: stackage-server-prod
---
apiVersion: v1
kind: ReplicationController
metadata:
name: stackage-server-prod-v0
@ -34,7 +14,8 @@ spec:
spec:
containers:
- name: stackage-server
image: snoyberg/stackage-server:latest
image: fpco/stackage-server:prod
imagePullPolicy: Always
ports:
- name: http
containerPort: 3000

View file

@ -0,0 +1,19 @@
# Kubernetes
---
apiVersion: v1
kind: Service
metadata:
name: stackage-server-prod
labels:
app: stackage-server-prod
spec:
ports:
- name: http
port: 80
targetPort: http
- name: https
port: 443
targetPort: http
type: ClusterIP
selector:
app: stackage-server-prod

View file

@ -1,7 +1,7 @@
resolver: lts-5.1
image:
container:
name: snoyberg/stackage-server
name: fpco/stackage-server
base: fpco/stack-run
add:
config: /app/config