David Yang
01/28/2022, 4:13 PMAnna Geller
FLOW_ENV = os.environ.get("FLOW_ENV")
password_var = f"password_{FLOW_ENV}"
David Yang
01/28/2022, 4:24 PMAnna Geller
import os
from prefect.tasks.secrets import PrefectSecret
import prefect
from prefect import Flow, task
class EnvSecret(PrefectSecret):
def __init__(self, name=None, **kwargs):
self.environment = os.environ.get("FLOW_ENV")
_name = f"{name}_{self.environment.upper()}"
super().__init__(name=_name, **kwargs)
env_secret = EnvSecret("A_PASSWORD")
@task
def print_result(secret):
logger = prefect.context.get("logger")
<http://logger.info|logger.info>(secret)
with Flow("flow_sample") as flow:
secret = env_secret(task_args={"name": "A_PASSWORD"})
print_result(secret)
David Yang
01/29/2022, 1:40 AMAnna Geller
David Yang
01/31/2022, 3:05 PM