httpie and GitHub Actions
I love httpie as an alternative to curl
. It feels fresher, and is built for working with today’s HTTP APIs.
Anyways, I was using httpie’s @=
feature for embedding file content in a JSON field within a GitHub Actions workflow and got an error:
Request body (from stdin, –raw or a file) and request data (key=value) cannot be mixed. Pass –ignore-stdin to let key/value take priority. See https://httpie.io/docs#scripting for details.
I didn’t think I was doing anything with passing standard input, and the command was running just fine locally, so I spent a good while finding possible solutions. Turns out I should have taken the error at face value. Somehow GitHub Actions runs commands in a way that triggers this stdin behaviour and need --ignore-stdin
:
http --ignore-stdin --json post $REGISTRY_URL/subjects/testsubject/versions \
schema=@testsubject.json \
Accept:application/vnd.schemaregistry.v1+json