apiVersion: v1
kind: Namespace
metadata:
  name: sidecar-demo
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: report-demo
  namespace: sidecar-demo
spec:
  replicas: 1
  selector:
    matchLabels:
      app: report-demo
  template:
    metadata:
      labels:
        app: report-demo
    spec:
      containers:
        - name: writer
          image: busybox:1.37.0
          command: ["sh", "-c"]
          args:
            - |
              while true; do
                echo "Hello from the app" >> /output/report.log
                sleep 5
              done
          resources:
            requests:
              cpu: 10m
              memory: 16Mi
            limits:
              memory: 64Mi
          volumeMounts:
            - name: shared-files
              mountPath: /output
        - name: reader
          image: busybox:1.37.0
          command: ["sh", "-c"]
          args:
            - |
              until [ -f /input/report.log ]; do
                sleep 1
              done
              exec tail -n+1 -f /input/report.log
          resources:
            requests:
              cpu: 10m
              memory: 16Mi
            limits:
              memory: 64Mi
          volumeMounts:
            - name: shared-files
              mountPath: /input
              readOnly: true
      volumes:
        - name: shared-files
          emptyDir:
            sizeLimit: 64Mi
