A Github Action to create a .env file with Github Secrets. This is useful when you are creating artifacts that need to contain secrets stored in Github Secrets. This creates a file with variables that are defined in the Action config.
The Action looks for environment variables that start with envkey_
and creates
an envfile with them. These are defined in the with
section of the Action
config. Here is an example of it in use:
name: Create envfile
on: [push]
jobs:
create-envfile:
runs-on: ubuntu-18.04
steps:
- name: Make envfile
uses: SpicyPizza/create-envfile@v1
with:
envkey_DEBUG: false
envkey_SOME_API_KEY: "123456abcdef"
envkey_SECRET_KEY: ${{ secrets.SECRET_KEY }}
some_other_variable: foobar
directory: <directory_name>
file_name: .env
In the example above, there are several key/value pairs that will be added to the envfile:
Name | Description |
---|---|
envkey_DEBUG , envkey_SOME_API_KEY |
These values can be whatever, and they will be added to the envfile as DEBUG and SOME_API_KEY . |
envkey_SECRET_KEY |
This one will use a secret stored in the repository's Github Secrets, and add it to the file as SECRET_KEY |
directory (Optional) |
This key will set the directory in which you want to create env file. (Action will fail if the specified directory doesn't exist.) |
file_name (Optional) |
Set the name of the output envfile. Defaults to .env |
Assuming that the Github Secret that was used is password123
, the .env file
that is created from the config above would contain:
DEBUG: false
SOME_API_KEY: "123456abcdef"
SECRET_KEY: password123
When the Action runs, it will show Warning: Unexpected input(s) ...
. This is
because Github is expecing all the potential input variables to be defined by
the Action's definition. You can read more about it in this
issue.