Skip to content

Instantly share code, notes, and snippets.

@rhs
Created March 6, 2018 21:44
Show Gist options
  • Save rhs/86e94497197287118e294771f928cda3 to your computer and use it in GitHub Desktop.
Save rhs/86e94497197287118e294771f928cda3 to your computer and use it in GitHub Desktop.
forge project skeleton
---
apiVersion: v1
kind: Service
metadata:
name: {{build.name}}
spec:
type: ClusterIP
selector:
app: {{build.name}}
ports:
- port: 80
name: http-web
targetPort: http-api
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: {{build.name}}
spec:
replicas: {{build.profile.replicas}}
strategy:
type: RollingUpdate
template:
metadata:
labels:
app: {{build.name}}
spec:
containers:
- name: web
image: {{build.images[build.profile.container]}}
ports:
- name: http-api
containerPort: 3000
{% if build.profile.name == "dev" %}
volumeMounts:
- name: shared-data
mountPath: /usr/src/service
volumes:
- name: shared-data
hostPath:
path: /path/to/root/services/web
{% endif %}
<root>
|
+-- service.yaml
|
+-- k8s/deployment.yaml
|
+-- dev-node8.dockerfile
|
+-- prod-node8.dockerfile
name: my-service
containers:
- name: dev
dockerfile: dev-node8.dockerfile
- name: prod
dockerfile: prod-node8.dockerfile
profiles:
prod:
container: prod
replicas: 2
canary:
container: prod
replicas: 2
weight: 2.0
dev:
container: dev
replicas: 1
branches:
master: prod
'*': dev
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment