The postStart hook is weird

apiVersion: v1
kind: Pod
metadata:
  name: myapp
  labels:
    app: myapp
spec:
  containers:
  - name: normalc1
    image: nginx
    command: ["sh", "-c", "sleep 100 | curl http://172.16.1.20"]  
    lifecycle:
      postStart:
        exec:
          command: ["sh", "-c", "sleep 100 | curl http://172.16.1.20"]

the app.spec.containers.command works! But app.spec.containers.lifecycle.postStart.exec.command exit with code 137.
This is so weird!!!

I can’t see right now, but I think postStart has a timeout which you are almost certainly exceeding with that sleep.

exit 137 == signal 9 == SIGKILL.

$10 bet that kubelet said “you took too long” and killed your postStart.