Files
bruce-operator/deploy/operator.yml
T
2018-10-01 18:47:51 -04:00

381 lines
8.0 KiB
YAML

---
kind: Namespace
apiVersion: v1
metadata:
name: bruce
labels:
name: bruce
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: bruce-operator
namespace: bruce
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: bruce-operator
labels:
k8s-app: bruce-operator
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: bruce-operator
namespace: bruce
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
name: bruce-operator
namespace: bruce
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: bruce-operator
subjects:
- kind: ServiceAccount
name: bruce-operator
namespace: bruce
---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: buildpacks.bruce.kennethreitz.org
spec:
group: bruce.kennethreitz.org
names:
kind: Buildpack
listKind: buildpackList
plural: buildpacks
singular: buildpack
shortNames: [bp,]
scope: Namespaced
version: v1alpha1
---
apiVersion: v1
items:
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "multi"
spec:
repo: "https://github.com/heroku/heroku-buildpack-multi"
index: 0
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "ruby"
spec:
buildkit: "heroku/ruby"
index: 1
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "nodejs"
spec:
buildkit: "heroku/nodejs"
index: 2
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "clojure"
spec:
buildkit: "heroku/clojure"
index: 3
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "python"
spec:
buildkit: "heroku/python"
index: 4
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "java"
spec:
buildkit: "heroku/java"
index: 5
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "gradle"
spec:
buildkit: "heroku/gradle"
index: 6
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "scala"
spec:
buildkit: "heroku/scala"
index: 7
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "php"
spec:
buildkit: "heroku/php"
index: 8
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "go"
spec:
buildkit: "heroku/go"
index: 9
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "elixir"
spec:
buildkit: "hashnuke/elixir"
index: 10
- apiVersion: bruce.kennethreitz.org/v1alpha1
kind: Buildpack
metadata:
name: "static"
spec:
repo: "https://github.com/dokku/buildpack-nginx"
index: 11
kind: List
metadata:
resourceVersion: ""
selfLink: ""
---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: apps.bruce.kennethreitz.org
spec:
group: bruce.kennethreitz.org
names:
kind: App
listKind: appList
plural: apps
singular: app
scope: Namespaced
version: v1alpha1
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\Users\me\OneDrive\system\bin\kompose.exe convert -f .\kubernetes-compose.yml
kompose.version: 1.1.0 (36652f6)
creationTimestamp: null
labels:
io.kompose.service: bruce-operator
name: bruce-operator
spec:
replicas: 1
strategy:
type: Recreate
template:
metadata:
creationTimestamp: null
labels:
io.kompose.service: bruce-operator
spec:
initContainers:
- name: init-wait
image: alpine
command: ["sh", "-c", "for i in $(seq 1 300); do nc -zvw1 minio.bruce 9000 && exit 0 || sleep 3; done; exit 1"]
containers:
- env:
- name: WATCH_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: MINIO_ACCESS_KEY
value: brucebruce
- name: MINIO_SECRET_KEY
value: brucebruce
- name: MINIO_SERVER
value: minio.bruce:9000
image: kennethreitz/bruce-operator:latest
name: bruce-operator
resources: {}
restartPolicy: Always
status: {}
---
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\Users\me\OneDrive\system\bin\kompose.exe convert -f .\kubernetes-compose.yml
kompose.version: 1.1.0 (36652f6)
creationTimestamp: null
labels:
io.kompose.service: bruce-operator
name: bruce-operator
spec:
clusterIP: None
ports:
- name: operator-http
port: 80
# nodePort: 80
targetPort: 0
selector:
io.kompose.service: bruce-operator
status:
loadBalancer: {}
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
io.kompose.service: bruce-registry-data
name: bruce-registry-data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 80Gi
status: {}
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\Users\me\OneDrive\system\bin\kompose.exe convert -f .\kubernetes-compose.yml
kompose.version: 1.1.0 (36652f6)
creationTimestamp: null
labels:
io.kompose.service: registry
name: registry
spec:
replicas: 1
strategy:
type: Recreate
template:
metadata:
creationTimestamp: null
labels:
io.kompose.service: registry
spec:
containers:
- env:
- name: REGISTRY_HTTP_ADDR
value: 0.0.0.0:80
image: registry:2
name: registry
resources: {}
volumeMounts:
- mountPath: /var/lib/registry
name: bruce-registry-data
restartPolicy: Always
volumes:
- name: bruce-registry-data
persistentVolumeClaim:
claimName: bruce-registry-data
status: {}
---
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\Users\me\OneDrive\system\bin\kompose.exe convert -f .\kubernetes-compose.yml
kompose.version: 1.1.0 (36652f6)
creationTimestamp: null
labels:
io.kompose.service: registry
name: registry
spec:
clusterIP: None
ports:
- name: registry-http
port: 80
# nodePort: 80
targetPort: 0
selector:
io.kompose.service: registry
status:
loadBalancer: {}
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
io.kompose.service: bruce-minio-data
name: bruce-minio-data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 20Gi
status: {}
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
annotations:
kompose.cmd: C:\Users\me\OneDrive\system\bin\kompose.exe convert -f .\kubernetes-compose.yml
kompose.version: 1.1.0 (36652f6)
creationTimestamp: null
labels:
io.kompose.service: minio
name: minio
spec:
replicas: 1
strategy:
type: Recreate
template:
metadata:
creationTimestamp: null
labels:
io.kompose.service: minio
spec:
containers:
- env:
- name: MINIO_ACCESS_KEY
value: brucebruce
- name: MINIO_SECRET_KEY
value: brucebruce
image: minio/minio:latest
ports:
- containerPort: 9000
args:
- server
- /storage
name: minio
resources: {}
volumeMounts:
- mountPath: /storage
name: bruce-minio-data
restartPolicy: Always
volumes:
- name: bruce-minio-data
persistentVolumeClaim:
claimName: bruce-minio-data
status: {}
---
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: C:\Users\me\OneDrive\system\bin\kompose.exe convert -f .\kubernetes-compose.yml
kompose.version: 1.1.0 (36652f6)
creationTimestamp: null
labels:
io.kompose.service: minio
name: minio
spec:
clusterIP: None
ports:
- name: minio-http
port: 9000
targetPort: 0
selector:
io.kompose.service: minio
status:
loadBalancer: {}