Open gregdan3 opened 1 year ago
@gregdan3 Thanks for reporting this! We'll take a look at it. In the mean time though, one thing you might consider is taking advantage of the monorepo-friendly setup file format we introduced in #394. Essentially, in your example, you could add a single doppler.yaml
file in your /home/gregdan3/example
directory. The contents of that file might look something like this:
setup:
- project: common
config: prd
path: project_1/
- project: common
config: prd
path: project_2/
You then just need to run something along the lines of doppler setup --no-interactive
from the root directory and it'll setup all the subdirectories you configure in the setup file.
Not a solution for the race condition, but perhaps a better way to accomplish what you're after in the mean time.
Describe the bug If you run
doppler setup
in two or more projects at once, they will open the user's doppler config~/.doppler/.doppler.yaml
at the same time and apply their changes to the same copy of the file, resulting in only one of the changes applying. This might occur if the user batches changes across several projects withdoppler setup --no-interactive
.To Reproduce
doppler.yaml
doppler configure
in any of the projects, observing that one of the projects has aproject
andconfig
in itsconfigure
, but the others do not~/.doppler/.doppler.yaml
to confirm the sameExample of this occurring:
Expected behavior Doppler should keep track of a lockfile so the config file can only be read and written to by one process at a time.
Desktop (please complete the following information):
uname --all
:Linux ilo 6.3.4-arch2-1 #1 SMP PREEMPT_DYNAMIC Mon, 29 May 2023 13:58:34 +0000 x86_64 GNU/Linux
CLI Version: Version v3.60.1
Additional context Feel free to let me know if this a harebrained activity that doesn't need fixing- for the time being we'll be working around this by dispatching setup commands consecutively rather than simultaneously anyway.