diff --git a/code/pep-stats-report/README.md b/code/pep-stats-report/README.md index a15b353..c466ec2 100644 --- a/code/pep-stats-report/README.md +++ b/code/pep-stats-report/README.md @@ -1,3 +1,17 @@ +## 环境变量 +对于配置项,环境变量优先于配置文件 +- ClickHouse 数据库环境变量如下: + - `CLICKHOUSE_HOST`为数据库的主机地址。 + - `CLICKHOUSE_PORT`为数据库的`TCP`端口。 + - `CLICKHOUSE_USERNAME`为数据库的用户名。 + - `CLICKHOUSE_PASSWORD`为数据库密码,如果没有密码,则不需要配置任何值。 + - `CLICKHOUSE_DATABASE`为数据库名称。 +- 七牛云环境变量如下: + - `QINIU_AK`为七牛云的 Access Key。 + - `QINIU_SK`为七牛云的 Secret Key。 + - `QINIU_BUCKET`为七牛云存储空间。 + - `QINIU_DOMAIN`为存储空间对应的外链域名。 + ## 配置文件 `config.ini`为项目配置文件。 - `[clickhouse]`配置节为 ClickHouse 数据库的配置信息: diff --git a/code/pep-stats-report/SimHei.ttf b/code/pep-stats-report/SimHei.ttf new file mode 100644 index 0000000..c5030ae Binary files /dev/null and b/code/pep-stats-report/SimHei.ttf differ diff --git a/code/pep-stats-report/main.py b/code/pep-stats-report/main.py index 620839d..67438b7 100644 --- a/code/pep-stats-report/main.py +++ b/code/pep-stats-report/main.py @@ -226,9 +226,10 @@ def upload_to_qiniu(filename): # 获取 qiniu 配置参数 qn_cfg = config['qiniu'] - access_key = qn_cfg['access-key'] - secret_key = qn_cfg['secret-key'] - bucket_name = qn_cfg['bucket'] + access_key = os.environ.get('QINIU_AK', qn_cfg['access-key']) + secret_key = os.environ.get('QINIU_SK', qn_cfg['secret-key']) + bucket_name = os.environ.get('QINIU_BUCKET', qn_cfg['bucket']) + domain = os.environ.get('QINIU_DOMAIN', qn_cfg['domain']) q = qiniu.Auth(access_key, secret_key) bucket = qiniu.BucketManager(q) @@ -252,7 +253,7 @@ def upload_to_qiniu(filename): print('上传成功') logging.info('上传成功') # 获取文件访问 URL - url = '{}/{}?attname='.format(qn_cfg['domain'], ret['key']) + url = '{}/{}?attname='.format(domain, ret['key']) print('文件访问 URL:', url) logging.info('文件访问 URL:{}'.format(url)) else: @@ -299,11 +300,11 @@ def generate_word_report(): def create_clickhouse_client(): # 获取 clickhouse 配置参数 ch_cfg = config['clickhouse'] - host = ch_cfg['host'] - port = ch_cfg.getint('port') - username = ch_cfg['username'] - password = ch_cfg['password'] - database = ch_cfg['database'] + host = os.environ.get('CLICKHOUSE_HOST', ch_cfg['host']) + port = int(os.environ.get('CLICKHOUSE_PORT', ch_cfg.getint('port'))) + username = os.environ.get('CLICKHOUSE_USERNAME', ch_cfg['username']) + password = os.environ.get('CLICKHOUSE_PASSWORD', ch_cfg['password']) + database = os.environ.get('CLICKHOUSE_DATABASE', ch_cfg['database']) # 创建 ClickHouse 客户端对象 return Client(host=host, port=port, user=username, password=password, database=database)