Resolve container image names from environment variables

Is it possible to use environment variables as the name of an image for a step?

e.g.:

steps:
  - name: foo
    image: $CUSTOM_FOO_IMAGE
    commands:
      - foo

I’ve tried with both unescaped ($) and escaped ($$) variables, and both seem to get passed directly to Kubernetes with the variable name (i.e., $CUSTOM_FOO_IMAGE) as the image name. Which is obviously an invalid image name.