Skip to content
This repository was archived by the owner on Aug 4, 2023. It is now read-only.

Commit 2e4be76

Browse files
committed
Add support to shared env vars
1 parent f529f50 commit 2e4be76

File tree

3 files changed

+15
-4
lines changed

3 files changed

+15
-4
lines changed

flamingo/models/buildpack.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
import settings
1313
from models.base import KeyValue
14-
from models.env_var import EnvVar
14+
from models.env_var import EnvVar, EnvVarSource
1515

1616
if TYPE_CHECKING:
1717
from models.app import App
@@ -90,5 +90,10 @@ def get_extra_build_steps(self, app: 'App') -> List[str]:
9090

9191
def get_all_env_vars(self):
9292
# Here's the opportunity to inject dynamic env vars from the app's BuildPack
93-
all_vars = self.env_vars.copy()
93+
all_vars = []
94+
95+
for var in self.env_vars.copy():
96+
var.source = EnvVarSource.SHARED.value
97+
all_vars.append(var)
98+
9499
return all_vars

flamingo/models/env_var.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
class EnvVarSource(Enum):
1111
USER = 'user'
12+
SHARED = 'shared'
1213
FLAMINGO = 'flamingo'
1314

1415

@@ -25,4 +26,4 @@ def serialize(self) -> Dict:
2526

2627
@property
2728
def is_implicit(self):
28-
return self.source != EnvVarSource.USER
29+
return self.source == EnvVarSource.FLAMINGO

flamingo/models/environment.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,12 @@ def __post_init__(self):
2424
self.name = slugify(self.name)
2525

2626
def get_all_env_vars(self) -> List[EnvVar]:
27-
all_vars = self.vars.copy()
27+
all_vars = []
28+
29+
for var in self.vars.copy():
30+
var.source = EnvVarSource.SHARED.value
31+
all_vars.append(var)
32+
2833
all_vars.extend([
2934
EnvVar(key='ENV', value=self.name, source=EnvVarSource.FLAMINGO)
3035
])

0 commit comments

Comments
 (0)