如何从其他bucket(而不是composer bucket)访问任何配置文件

2024-04-25 22:41:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python和googlecomposer新手。 我试图从我的python脚本从google云存储读取配置(.properties)文件。配置文件包含键值对。 我尝试使用configparser读取配置文件&normal with operator 如果同一个文件在同一个composer环境中,那么我们可以给出路径 家庭/家庭/家庭/配置属性'

但对于另一个桶,我能给出什么样的路径??在

我正在尝试使用下面的代码访问路径存储\u客户端

separator = "="
keys = {}

def iterate_bucket():
    bucket_name = 'other-bucket'
    storage_client = storage.Client.from_service_account_json(
    '/home/airflow/gcs/data/*************.json')
    bucket = storage_client.get_bucket(bucket_name)
    blobs = bucket.list_blobs()
    return blobs

def read_Prop():
    blobs = iterate_bucket()

    for blob in blobs:
        if "config.properties" in blob.name:
            print("hello : ", blob.name)
            #file_name = "/home/airflow/gcs/" + blob.name
            file_name = blob.name

    with open(file_name, 'r') as f: 
       for line in f:
       if separator in line:

            name, value = line.split(separator, 1)
           keys[name.strip()] = value.strip()

print(keys.get('any_key'))

我还使用了configparser

^{pr2}$

在这两种情况下,其他google云存储(bucket)的条件都无法从python脚本访问。 我没有得到这样的文件或目录错误

我们能提供什么样的路径或任何其他途径进入??在

例2-

^{3}$

在print语句中查看日志-文件名即将到来,但是当我们读取getting error时没有出现这样的文件或目录错误。在

[2020-01-02 12:39:12,853] {base_task_runner.py:101} INFO - Job 11782: 
Subtask Raw1 [2020-01-02 12:39:12,852] {logging_mixin.py:95} INFO - hello :  
sample_config.yml
[2020-01-02 12:39:12,853] {logging_mixin.py:95} INFO - file_name :  
sample_config.yml
[2020-01-02 12:39:12,853] {base_task_runner.py:101} INFO - Job 11782: 
Subtask Raw1 [2020-01-02 12:39:12,853] {logging_mixin.py:95} INFO - 
file_name :  sample_config.yml
[2020-01-02 12:39:12,855] {models.py:1846} ERROR - [Errno 2] No such file or 
directory: 'sample_config.yml'

提前谢谢


Tags: 文件samplenameinpy路径infoconfig