mirror of https://github.com/gsi-upm/senpy
Add CI/CD and k8s
parent
62142482dc
commit
54da48b548
@ -0,0 +1,50 @@
|
|||||||
|
# Uncomment if you want to use docker-in-docker
|
||||||
|
# image: gsiupm/dockermake:latest
|
||||||
|
# services:
|
||||||
|
# - docker:dind
|
||||||
|
# When using dind, it's wise to use the overlayfs driver for
|
||||||
|
# improved performance.
|
||||||
|
|
||||||
|
stages:
|
||||||
|
- test
|
||||||
|
- build
|
||||||
|
- push
|
||||||
|
- deploy
|
||||||
|
|
||||||
|
before_script:
|
||||||
|
- make -e login
|
||||||
|
|
||||||
|
test:
|
||||||
|
stage: test
|
||||||
|
script:
|
||||||
|
- make -e test
|
||||||
|
|
||||||
|
build:
|
||||||
|
stage: build
|
||||||
|
script:
|
||||||
|
- make -e docker-build
|
||||||
|
only:
|
||||||
|
- master
|
||||||
|
- fix-makefiles
|
||||||
|
|
||||||
|
push:
|
||||||
|
stage: push
|
||||||
|
script:
|
||||||
|
- make -e docker-push
|
||||||
|
only:
|
||||||
|
- master
|
||||||
|
- fix-makefiles
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
stage: deploy
|
||||||
|
script:
|
||||||
|
- make -e deploy
|
||||||
|
only:
|
||||||
|
- master
|
||||||
|
- fix-makefiles
|
||||||
|
|
||||||
|
clean :
|
||||||
|
stage: clean
|
||||||
|
script:
|
||||||
|
- make -e clean
|
||||||
|
when: manual
|
@ -0,0 +1,8 @@
|
|||||||
|
Deploy senpy to a kubernetes cluster.
|
||||||
|
The files are templates, which need to be expanded with something like envsubst.
|
||||||
|
|
||||||
|
Example usage:
|
||||||
|
|
||||||
|
```
|
||||||
|
cat k8s/*.ya*ml | envsubst | kubectl apply -n senpy -f -
|
||||||
|
```
|
@ -0,0 +1,24 @@
|
|||||||
|
---
|
||||||
|
apiVersion: extensions/v1beta1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: senpy-$NAME-latest
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
role: $NAME-latest
|
||||||
|
app: test
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: senpy-latest
|
||||||
|
image: $IMAGEWTAG
|
||||||
|
imagePullPolicy: Always
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
memory: "512Mi"
|
||||||
|
cpu: "1000m"
|
||||||
|
ports:
|
||||||
|
- name: web
|
||||||
|
containerPort: 5000
|
@ -0,0 +1,14 @@
|
|||||||
|
---
|
||||||
|
apiVersion: extensions/v1beta1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: senpy-$NAME-ingress
|
||||||
|
spec:
|
||||||
|
rules:
|
||||||
|
- host: senpy.cluster.gsi.dit.upm.es
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
backend:
|
||||||
|
serviceName: senpy-$NAME-latest
|
||||||
|
servicePort: 5000
|
@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: senpy-$NAME-latest
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: 5000
|
||||||
|
protocol: TCP
|
||||||
|
selector:
|
||||||
|
role: $NAME-latest
|
Loading…
Reference in New Issue