André Jordaan
04/26/2022, 4:40 PMdagster_aws.secretsmanager.secretsmanager_secrets_resource
definition that a context
ref is passed to a job function in the example, however this doesn’t seem to be allowed at runtime, as I get the “reserved keyword” error. Are the docs incorrect, or am I perhaps missing something? I’m referring to this block in particular;
@job(resource_defs={'secrets': secretsmanager_secrets_resource})
def example_job(context):
example_secretsmanager_secrets_op()
example_secretsmanager_secrets_op_2()
prha
04/26/2022, 4:45 PMAndré Jordaan
04/26/2022, 4:52 PMdocker_example_user_code | Traceback (most recent call last):
docker_example_user_code | File "/usr/local/bin/dagster", line 8, in <module>
docker_example_user_code | sys.exit(main())
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/cli/__init__.py", line 50, in main
docker_example_user_code | cli(auto_envvar_prefix=ENV_PREFIX) # pylint:disable=E1123
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1130, in __call__
docker_example_user_code | return self.main(*args, **kwargs)
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1055, in main
docker_example_user_code | rv = self.invoke(ctx)
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1657, in invoke
docker_example_user_code | return _process_result(sub_ctx.command.invoke(sub_ctx))
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1657, in invoke
docker_example_user_code | return _process_result(sub_ctx.command.invoke(sub_ctx))
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1404, in invoke
docker_example_user_code | return ctx.invoke(self.callback, **ctx.params)
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/click/core.py", line 760, in invoke
docker_example_user_code | return __callback(*args, **kwargs)
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/cli/api.py", line 571, in grpc_command
docker_example_user_code | container_context=json.loads(container_context) if container_context != None else None,
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/grpc/server.py", line 835, in __init__
docker_example_user_code | container_context=container_context,
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/grpc/server.py", line 213, in __init__
docker_example_user_code | loadable_target_origin, self._entry_point
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/grpc/server.py", line 99, in __init__
docker_example_user_code | loadable_target_origin.attribute,
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/grpc/utils.py", line 33, in get_loadable_targets
docker_example_user_code | else loadable_targets_from_python_file(python_file, working_directory)
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/core/workspace/autodiscovery.py", line 26, in loadable_targets_from_python_file
docker_example_user_code | loaded_module = load_python_file(python_file, working_directory)
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/core/code_pointer.py", line 86, in load_python_file
docker_example_user_code | return import_module_from_path(module_name, python_file)
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/seven/__init__.py", line 47, in import_module_from_path
docker_example_user_code | spec.loader.exec_module(module)
docker_example_user_code | File "<frozen importlib._bootstrap_external>", line 728, in exec_module
docker_example_user_code | File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
docker_example_user_code | File "repo.py", line 72, in <module>
docker_example_user_code | @job(resource_defs={'secrets': secretsmanager_secrets_resource})
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/core/definitions/decorators/job_decorator.py", line 70, in __call__
docker_example_user_code | config_mapping=None,
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/core/definitions/composition.py", line 1003, in do_composition
docker_example_user_code | exclude_nothing=False,
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/core/definitions/decorators/solid_decorator.py", line 404, in resolve_checked_solid_fn_inputs
docker_example_user_code | for inferred in inferred_props.values()
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/core/definitions/decorators/solid_decorator.py", line 405, in <genexpr>
docker_example_user_code | if inferred.name in inputs_to_infer
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/core/definitions/input.py", line 237, in create_from_inferred
docker_example_user_code | default_value=inferred.default_value,
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/core/definitions/input.py", line 88, in __init__
docker_example_user_code | self._name = check_valid_name(name) if name else None
docker_example_user_code | File "/usr/local/lib/python3.7/site-packages/dagster/core/definitions/utils.py", line 54, in check_valid_name
docker_example_user_code | f'"{name}" is not a valid name in Dagster. It conflicts with a Dagster or python reserved keyword.'
docker_example_user_code | dagster.core.errors.DagsterInvalidDefinitionError: "context" is not a valid name in Dagster. It conflicts with a Dagster or python reserved keyword.
docker_example_user_code exited with code 1
prha
04/26/2022, 6:24 PMcontext
arg from the job and everything should work correctly:
@job(resource_defs={'secrets': secretsmanager_secrets_resource})
def example_job():
example_secretsmanager_secrets_op()
example_secretsmanager_secrets_op_2()
André Jordaan
04/28/2022, 10:48 AMsecretsmanager_secrets_resource
; I am able to pull the secrets from AWS’ Secrets Manager and can see via the logs that it’s being stored in the /opt/dagster/dagster_home/storage/XX-XX-XX-XX-XX/OP_NAME/result
directory, however it’s not being added as an ENV var, even though I have add_to_environment
set to True
. The documentation does not give an indication of where to name the ENV var you want it to be saved to and it does not seem like it’s assigning a default name either?prha
04/28/2022, 4:51 PMop
includes the secrets manager resource, then the op should have access to those individual secrets.ben
04/28/2022, 5:22 PMAndré Jordaan
04/29/2022, 2:55 PM