The customer developer team has the request to do a validation of the app manifest.yml file before cf cli is being used to deploy apps.
Unfortunately, there is no command like this for CF CLI now. However, there are some other options:
1. Do cf push but don't start it using "--no-start", which should trigger validations.
Example as below -
cf push -f /tmp/foo.yml --no-start
Pushing app foo to org org-1 / space space-1 as admin...
Applying manifest file /private/tmp/foo.yml...
For application 'foo': Buildpacks must be an array
FAILED
2. Use the manifest diff endpoint https://v3-apidocs.cloudfoundry.org/version/3.196.0/index.html#create-a-manifest-diff-for-a-space-experimental.
Example as below -
cf curl "/v3/spaces/$(cf space space-1 --guid)/manifest_diff" -X POST -H "Content-Type: application/x-yaml" -d @/tmp/foo.yml
{"errors":[{"detail":"For application 'foo': Buildpacks must be an array","title":"CF-UnprocessableEntity","code":10008}]}
There is a feature request add --dry-run option to cf push in the cloud foundry project, but it is still on-going.