Skip to content
Snippets Groups Projects
jbrowse2-dep.yml 1.64 KiB
Newer Older
cyril.cros's avatar
cyril.cros committed
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: jbrowse2-${RELEASE_LABEL}
cyril.cros's avatar
cyril.cros committed
  namespace: ${NS}
cyril.cros's avatar
cyril.cros committed
  labels:
    name: jbrowse2
    environment: ${RELEASE_LABEL}
cyril.cros's avatar
cyril.cros committed
spec:
  replicas: 1
  selector:
    matchLabels:
      app: jbrowse2
      environment: ${RELEASE_LABEL}
cyril.cros's avatar
cyril.cros committed
  template:
    metadata:
      labels:
        app: jbrowse2
        environment: ${RELEASE_LABEL}
cyril.cros's avatar
cyril.cros committed
    spec:
cyril.cros's avatar
cyril.cros committed
      imagePullSecrets:
        - name: gitlab-token-auth
cyril.cros's avatar
cyril.cros committed
      containers:
        - name: jbrowse2
cyril.cros's avatar
cyril.cros committed
          image: ${CI_REGISTRY_IMAGE}:jbrowse2-${CI_COMMIT_SHORT_SHA}
cyril.cros's avatar
cyril.cros committed
          imagePullPolicy: Always
          resources:
            requests:
              memory: 2048Mi
cyril.cros's avatar
cyril.cros committed
              cpu: 1
            limits:
              memory: 4096Mi
              cpu: 1
cyril.cros's avatar
cyril.cros committed
          ports:
            - name: http
              containerPort: 80
              protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
  name: jbrowse2-${RELEASE_LABEL}
cyril.cros's avatar
cyril.cros committed
  namespace: ${NS}
cyril.cros's avatar
cyril.cros committed
spec:
  selector:
    app: jbrowse2
    environment: ${RELEASE_LABEL}
cyril.cros's avatar
cyril.cros committed
  ports:
    - name: http
      protocol: TCP
      port: 80
      targetPort: http
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: jbrowse2-${RELEASE_LABEL}
cyril.cros's avatar
cyril.cros committed
  namespace: ${NS}
cyril.cros's avatar
cyril.cros committed
  annotations:
    traefik.ingress.kubernetes.io/router.tls.certresolver: sectigo
  labels:
    environment: ${RELEASE_LABEL}
cyril.cros's avatar
cyril.cros committed
spec:
  ingressClassName: ${INGRESS_CLASS}
cyril.cros's avatar
cyril.cros committed
  rules:
cyril.cros's avatar
cyril.cros committed
    - host: ${JBROWSE_HOSTNAME}
cyril.cros's avatar
cyril.cros committed
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: jbrowse2
                port:
                  name: http
  tls:
    - hosts:
        - ${JBROWSE_HOSTNAME}