diff --git a/k8s/deluge-pvc.yaml b/k8s/deluge-pvc.yaml new file mode 100644 index 0000000..adce2bb --- /dev/null +++ b/k8s/deluge-pvc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: deluge-pvc + namespace: codex-benchmarks +spec: + accessModes: + - ReadWriteMany + resources: + requests: + storage: 10Gi \ No newline at end of file diff --git a/k8s/deluge-statefulset.yaml b/k8s/deluge-statefulset.yaml new file mode 100644 index 0000000..46aaacb --- /dev/null +++ b/k8s/deluge-statefulset.yaml @@ -0,0 +1,53 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: deluge-nodes + namespace: codex-benchmarks + +spec: + replicas: 5 + serviceName: deluge-service + selector: + matchLabels: + app: deluge-nodes + + template: + metadata: + labels: + app: deluge-nodes + + spec: + containers: + - name: deluge + image: codexstorage/deluge + ports: + - containerPort: 6890 + env: + - name: CLIENT_POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: DELUGE_RPC_PORT + value: "6890" + - name: DELUGE_LISTEN_PORTS + value: "6891,6892" + + command: [ "/bin/bash", "--login", "-c" ] + args: + - | + export DELUGE_CONFIG_DIR=/var/lib/deluge/${CLIENT_POD_NAME} + + # Makes sure there's no previous garbage in there. + rm -rf ${DELUGE_CONFIG_DIR} + mkdir -p ${DELUGE_CONFIG_DIR} + + ${DELUGE_APP}/docker/bin/start.sh + + volumeMounts: + - name: deluge-volume + mountPath: /var/lib/deluge + + volumes: + - name: deluge-volume + persistentVolumeClaim: + claimName: deluge-pvc diff --git a/k8s/namespace.yaml b/k8s/namespace.yaml new file mode 100644 index 0000000..d6ac571 --- /dev/null +++ b/k8s/namespace.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: codex-benchmarks \ No newline at end of file