gcshelpers:mozintermitted google云服务的助手类和函数的集合。
gcshelpers-SaschaJust的Python项目详细描述
关于gcshelpers
gcshelpers库为mozintermitted microservices提供帮助函数和实用程序类,以便与google云交互。
内容
类:配置
Config
是json配置文件的包装器。第一次访问CONFIG
会导致
配置对象的延迟初始化。配置文件的名称派生自
调用实例,即包gcshelpers
是从调用的。这意味着使用
^来自hgminer
的{hgminer.conf
配置文件。这个
库将首先在当前目录中查找文件,然后在用户的主目录中查找,并且
最后/etc
。
如果找不到配置文件,库将尝试从
调用项目的asset
目录。假设hgminer
被执行并且没有配置文件
现在,gcshelpers
试图将hgminer/assets/hgminer.conf.example
复制到用户的家中
目录
json文件被转换成一个对象,可以通过属性或字典订阅 进入。这意味着以下配置将产生以下有效访问:
{"contact":{"email":"sascha.just@own-hero.net"}}
CONFIG['contact']['email']
如果本地assets
目录包含语法(antlr4),则检查配置
这种语法在构造过程中,即在第一次访问期间最初读取配置时。
语法示例
下面的示例需要一个由具有name
和
email
集合,而它们的结构在终端部分定义。
doc{contact:{name:NAME,email:EMAIL}}@terminalsNAME:[A-Za-z].*;EMAIL:[a-zA-Z0-9_\-\.\+]+'@'[a-zA-Z0-9_\-\.]+'.'[a-zA-Z]{2,};
课程:mozlogger
此类使用默认配置包装标准记录器。这也提供了记录的方法 发布/订阅。它具有快速初始化功能,可以直接使用。如果没有日志配置 现在,一个是在飞行中创造的。
LOGGER.debug('Persisting %s',taskid)
函数:pkgload
此函数允许您从包中加载资源。确保在
Manifest.in
以确保它们与包一起安装。
QUERY_INSERT=pkgload(__package__,'assets/insert_job.sql')
存储模块
该模块包含与google云存储交互的方法。
遥测模块
该模块包含与google pub/sub交互的方法。