superduper
superduper copied to clipboard
[TASK] Mount/ re-mount secrets on start
trafficstars
- Secrets assumed to be mounted at
/session/secrets - Load these as
envvariables when program starts - Add property to components to listen to certain
envvariables
Secrets volume looks like this:
|_/session/secrets
|_OPENAI_API_KEY // content is "sk-123294323923..."
|_AWS_ACCESS_KEY_ID
|_...
@requires_secrets
def predict(self, X):
...
def requires_secrets(f):
def wrapper(*args, **kwargs):
try:
f(*args, **kwargs)
except MissingSecretException:
CFG.load_secrets()
f(*args, **kwargs)
return wrapper