Environmental Variables are getting removed on each app update

Hey, so I’m having some issues keeping my env variables.

When I update my app.yaml file:

doctl apps update $APPID --spec .do/app.yaml

And then I log into my dashboard only to see the Web UI env variables are now gone. Each time I deploy, I need to re-input them.

What is the process here for keeping them? I can’t deploy my .env file, because it’s not in version control. I don’t want to put my env variables into app.yaml, because that does go into version control.

So I’m stuck here having to copy/paste them for 5 mins each time I change the app.

I think I’m doing something wrong here - any suggestions?

Submit an answer
Answer a question...

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Jon Friesen
DigitalOcean Employee
DigitalOcean Employee badge
October 23, 2020
Accepted Answer

👋 @wesbos

As you may have guessed, the spec is a representation of your app, when updating without the environment variables we take that to mean the current env vars should not be included.

A possible solution is, when creating the environment variables mark the secret ones as secret and when you’re happy with this you can go to the settings tab and view the App Spec which will have encrypted values for your secrets. These values are bound to your app and can be safely stored in your git repository. You can also use this spec to update your app and the encrypted values will continue to work as expected.