aws-actions/amazon-ecs-render-task-definition

Unable to use multi-line environment variables

bachya opened this issue · 3 comments

bachya commented

We have an ECS task into which we've inserted a private key as a multi-line environment variable from a secret store. To retain the newlines, we wrap the environment variable in quotes inside of this actions:

environment-variables: |
  PRIVATE_KEY="{{ secrets.PRIVATE_KEY }}"

Because of how the action parses environment variables (by newlines), it will fail to see this multi-line value as a single variable:

Error: Cannot parse the environment variable '***'. Environment variable pairs must be of the form NAME=value.

Is there a way this scenario can be accommodated?

@bachya pretty sure your issue is that GH Actions is masking secrets.PRIVATE_KEY automatically.

@bachya Did you find a way how to fix it?

@bachya Did you find a way how to fix it?

I ended up storing my key as a base64-encoded string; then, in my application code, I decode it before I want to use it.