You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将资源传递给Dagster Job供内部Op访问并解决配置缺失报错

报错原因

你定义的boto3_connection资源显式声明了两个必填配置项aws_access_key_id和aws_secret_access_key,但调用Job运行时没有传入对应的资源配置,因此触发配置校验错误。


解决方案

方案1:运行Job时传入配置

本地直接运行Job时,调用my_job.execute_in_process()传入run_config参数即可,示例如下:

if __name__ == "__main__":
    my_job.execute_in_process(
        run_config={
            "resources": {
                "boto3_connection": {
                    "config": {
                        "aws_access_key_id": os.getenv("AWS_ACCESS_KEY_ID"),
                        "aws_secret_access_key": os.getenv("AWS_SECRET_ACCESS_KEY")
                    }
                }
            }
        }
    )

如果是在Dagster UI中触发运行,在运行配置页填写对应层级的resources配置项即可。

方案2:资源默认读取环境变量,无需每次传配置

如果不想每次运行都手动传配置,可以修改资源定义,直接从环境变量读取值,不需要额外声明必填配置:

@resource
def boto3_connection(context):
    return Boto3Connector(
        aws_access_key_id=os.getenv("AWS_ACCESS_KEY_ID"),
        aws_secret_access_key=os.getenv("AWS_SECRET_ACCESS_KEY")
    )

修改后运行Job不需要再额外传入run_config参数即可直接运行。


额外注意

检查代码开头是否已经导入boto3和dagster.StringSource,避免运行时出现模块导入错误。

内容的提问来源于stack exchange,提问作者StackEdd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 17:45:01