从环境变量中可用的CKAN配置设置
项目描述
ckanext-envvars
此CKAN扩展检查符合预期格式的环境变量,并使用其值更新相应的CKAN配置设置。
为了使扩展正确识别哪些env var键映射到用于配置对象的格式,env var键应按以下方式格式化
- 全部大写
- 将点('.')替换为两个下划线('__')
- 键必须以'CKAN'或'CKANEXT'开头
一些示例
ckan.site_id --> CKAN__SITE_ID
ckanext.s3filestore.aws_bucket_name --> CKANEXT__S3FILESTORE__AWS_BUCKET_NAME
对于不以'CKAN'开头的键,请在开头添加'CKAN___'(3个下划线),以帮助扩展识别这些键,例如。
sqlalchemy.url --> CKAN___SQLALCHEMY__URL
beaker.session.secret --> CKAN___BEAKER__SESSION__SECRET
从CKAN 2.10(和ckanext-envvars 0.0.4)开始,如果使用CKAN的配置声明定义配置选项,则键不会进一步处理。这允许保留例如SECRET_KEY、WTF_CSRF_ENABLED等大写设置。
SECRET_KEY --> CKAN___SECRET_KEY
WTF_CSRF_ENABLED --> CKAN___WTF_CSRF_ENABLED
需求
已在CKAN 2.7、CKAN 2.8、CKAN 2.9和CKAN 2.10中进行测试,但可能在其他版本中也能工作。
为确保所有配置设置都被环境变量值覆盖,envvars
必须是ckan.plugins
列表中的最后一个插件条目(见下文“安装”部分)。
安装
要安装ckanext-envvars
-
激活您的CKAN虚拟环境,例如
. /usr/lib/ckan/default/bin/activate
-
将ckanext-envvars Python包安装到您的虚拟环境中
pip install ckanext-envvars
-
将
envvars
添加到您的CKAN配置文件中的ckan.plugins
设置(默认配置文件位于/etc/ckan/default/production.ini
)。 -
重启CKAN。例如,如果您在Ubuntu上使用Apache部署了CKAN
sudo service apache2 reload
开发安装
要为开发安装ckanext-envvars,激活您的CKAN虚拟env并执行以下操作
git clone https://github.com/okfn/ckanext-envvars.git
cd ckanext-envvars
python setup.py develop
pip install -r dev-requirements.txt
运行测试
它们遵循测试CKAN扩展的指南。
要运行测试,请执行以下操作
pytest --ckan-ini=test.ini ckanext/envvars/tests.py
ckanext-envvars在PyPI上
ckanext-envvars作为ckanext-envvars在PyPI上可用。
发布ckanext-envvars的新版本
要发布此CKAN扩展的新版本,您应该
- 更新
setup.py
文件,并设置新版本号(N.N.N) - 使用新版本对repo进行标记
git tag vN.N.N
git push --tags
- 创建新版本源分发版
python setup.py sdist
- 设置twine。必须包含以下内容的
$HOME/.pypirc
文件
[pypi]
username = __token__
password = <the token value, including the `pypi-` prefix>
- 将新版本上传到PyPI
pip install twine
twine check dist/*
twine upload dist/*
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关安装软件包的更多信息。
源分发
构建分发
ckanext_envvars-0.0.6.tar.gz的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 77a9b487cdff96f43b5a7053e6f30304e02c4e3b8bcc0e5fb9e656900d3f0a67 |
|
MD5 | b6b65090eaaf6c855cb2f631b9fb33f8 |
|
BLAKE2b-256 | e98da192dc523ac207cf78cf81d62b7a96c324b27847218f8dcb698b1b3f8269 |
ckanext_envvars-0.0.6-py3-none-any.whl的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | e2f8d05806be05f655f7e548c87672a61c6933343898d62bb4e4d99088dc4e07 |
|
MD5 | 684327533949bccdd4618a0fb4a14f91 |
|
BLAKE2b-256 | 5650e4375319f747f485e3061451a27f4d7582db3df8c5d91a0e9ef4755be82b |