elura-cli 0.2.2

Project scaffold generator for Elura applications
apiVersion: apps/v1
kind: Deployment
metadata:
  name: world
spec:
  replicas: 1
  selector:
    matchLabels:
      app: world
  template:
    metadata:
      labels:
        app: world
    spec:
      terminationGracePeriodSeconds: 30
      containers:
        - name: world
          image: elura-game:dev
          command: ["/app/world"]
          env:
            - name: APP_WORLD_CONFIG
              value: "/etc/elura/world.json"
            - name: APP_WORLD_LISTEN
              value: "0.0.0.0:18000"
            - name: APP_WORLD_ADMIN_ADDR
              value: "0.0.0.0:18001"
            - name: APP_INTERNAL_TOKEN
              valueFrom:
                secretKeyRef:
                  name: elura-secrets
                  key: internal-token
            - name: APP_ADMIN_TOKEN
              valueFrom:
                secretKeyRef:
                  name: elura-secrets
                  key: admin-token
            - name: APP_INSTANCE_ID
              valueFrom:
                fieldRef:
                  fieldPath: metadata.name
          ports:
            - name: world
              containerPort: 18000
            - name: admin
              containerPort: 18001
          readinessProbe:
            httpGet:
              path: /elura/readyz
              port: admin
            periodSeconds: 5
            timeoutSeconds: 2
            failureThreshold: 3
          startupProbe:
            httpGet:
              path: /elura/healthz
              port: admin
            periodSeconds: 5
            timeoutSeconds: 2
            failureThreshold: 12
          livenessProbe:
            httpGet:
              path: /elura/healthz
              port: admin
          securityContext:
            allowPrivilegeEscalation: false
            readOnlyRootFilesystem: true
            capabilities:
              drop: ["ALL"]
          resources:
            requests:
              cpu: 100m
              memory: 128Mi
            limits:
              cpu: "1"
              memory: 512Mi
          volumeMounts:
            - name: elura-runtime-config
              mountPath: /etc/elura
              readOnly: true
      volumes:
        - name: elura-runtime-config
          configMap:
            name: elura-runtime-config
---
apiVersion: v1
kind: Service
metadata:
  name: world
spec:
  clusterIP: None
  publishNotReadyAddresses: false
  selector:
    app: world
  ports:
    - name: world
      port: 18000
      targetPort: world