<commit_before>apiVersion: v1
kind: PersistentVolume
metadata:
  name: nfs-tusd
  namespace: tusd
spec:
  capacity:
    storage: 50Gi
  accessModes:
    - ReadWriteMany
  nfs:
    server: NFS_SERVER_IP
    path: "/tusd"

---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: nfs-tusd
  namespace: tusd
spec:
  accessModes:
    - ReadWriteMany
  storageClassName: ""
  resources:
    requests:
      storage: 50Gi
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: tusd
  namespace: tus
spec:
  replicas: 1
  minReadySeconds: 10
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxSurge: 2
      maxUnavailable: 0  
  template:
    metadata:
      labels:
        app: tusd
    spec:
      containers:
      - image: docker.io/tusproject/tusd:latest
        imagePullPolicy: Always
        args: ["-port=8080","-behind-proxy","-max-size=1000000000"]
        name: tusd
        resources:
          limits:
            cpu: 0.7
            memory: "2Gi"
          requests:
            cpu: 0.5
            memory: "1Gi"
        ports:
        - containerPort: 8080
        securityContext:
          runAsUser: 1000
          fsGroup: 1000
        volumeMounts:
        - name: tusd-disk
          mountPath: /srv/tusd-data
      volumes:
      - name: tusd-disk
        persistentVolumeClaim:
          claimName: nfs-tusd
---
apiVersion: v1
kind: Service
metadata:
  name: tusd
  namespace: tus
spec:
  ports:
  - port: 80
    targetPort: 8080
    protocol: TCP
  selector:
    app: tusd
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: tusd
  namespace: tus
  annotations:
    kubernetes.io/tls-acme: "true"
    kubernetes.io/ingress.class: "nginx"
    nginx.ingress.kubernetes.io/proxy-body-size: 0m
    nginx.ingress.kubernetes.io/proxy-connect-timeout: "300"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "300"
    nginx.ingress.kubernetes.io/proxy-request-buffering: "off"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "300"
spec:
  tls:
  - hosts:
    - tusd.tus.io
    secretName: tusd-tls
  - hosts:
    - master.tus.io
    secretName: master-tls    
  rules:
  - host: tusd.tus.io
    http:
      paths:
      - path: /
        backend:
          serviceName: tusd
          servicePort: 80
  - host: master.tus.io
    http:
      paths:
      - path: /
        backend:
          serviceName: tusd
          servicePort: 80
---
apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
  name: tusd
  namespace: tus
spec:
  scaleTargetRef:
    apiVersion: apps/v1beta1
    kind: Deployment
    name: tusd
  minReplicas: 1
  maxReplicas: 5
  targetCPUUtilizationPercentage: 90<commit_msg>tus namespace<commit_after>apiVersion: v1
kind: PersistentVolume
metadata:
  name: nfs-tusd
  namespace: tus
spec:
  capacity:
    storage: 50Gi
  accessModes:
    - ReadWriteMany
  nfs:
    server: NFS_SERVER_IP
    path: "/tusd"

---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: nfs-tusd
  namespace: tus
spec:
  accessModes:
    - ReadWriteMany
  storageClassName: ""
  resources:
    requests:
      storage: 50Gi
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: tusd
  namespace: tus
spec:
  replicas: 1
  minReadySeconds: 10
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxSurge: 2
      maxUnavailable: 0  
  template:
    metadata:
      labels:
        app: tusd
    spec:
      containers:
      - image: docker.io/tusproject/tusd:latest
        imagePullPolicy: Always
        args: ["-port=8080","-behind-proxy","-max-size=1000000000"]
        name: tusd
        resources:
          limits:
            cpu: 0.7
            memory: "2Gi"
          requests:
            cpu: 0.5
            memory: "1Gi"
        ports:
        - containerPort: 8080
        securityContext:
          runAsUser: 1000
          fsGroup: 1000
        volumeMounts:
        - name: tusd-disk
          mountPath: /srv/tusd-data
      volumes:
      - name: tusd-disk
        persistentVolumeClaim:
          claimName: nfs-tusd
---
apiVersion: v1
kind: Service
metadata:
  name: tusd
  namespace: tus
spec:
  ports:
  - port: 80
    targetPort: 8080
    protocol: TCP
  selector:
    app: tusd
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: tusd
  namespace: tus
  annotations:
    kubernetes.io/tls-acme: "true"
    kubernetes.io/ingress.class: "nginx"
    nginx.ingress.kubernetes.io/proxy-body-size: 0m
    nginx.ingress.kubernetes.io/proxy-connect-timeout: "300"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "300"
    nginx.ingress.kubernetes.io/proxy-request-buffering: "off"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "300"
spec:
  tls:
  - hosts:
    - tusd.tus.io
    secretName: tusd-tls
  - hosts:
    - master.tus.io
    secretName: master-tls    
  rules:
  - host: tusd.tus.io
    http:
      paths:
      - path: /
        backend:
          serviceName: tusd
          servicePort: 80
  - host: master.tus.io
    http:
      paths:
      - path: /
        backend:
          serviceName: tusd
          servicePort: 80
---
apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
  name: tusd
  namespace: tus
spec:
  scaleTargetRef:
    apiVersion: apps/v1beta1
    kind: Deployment
    name: tusd
  minReplicas: 1
  maxReplicas: 5
  targetCPUUtilizationPercentage: 90
{'fraction_non_alphanumeric': 0.09746079163554892, 'fraction_numerical': 0.028005974607916356, 'mean_word_length': 2.1698224852071006, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 2, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '485559', 'n_tokens_mistral': 2021, 'n_tokens_neox': 1874, 'n_words': 404}