发布到sns的包
zeel-publisher的Python项目详细描述
Zeel出版社
一个旨在标准化zapi服务与sns/sqs交互方式的库。
入门
码头工人
这个库的基础设施设计为运行在 码头集装箱。具体来说,有一个容器用于:
- 库代码运行的python环境
- jaeger跟踪实例
- 本地堆栈AWS模拟器
这些容器可以在项目的docker-compose.yml中查看
因为这些容器都是创建正常运行的本地 环境,不建议在没有Docker的情况下继续。可以安装 使用Docker for Mac安装程序或通过
brew cask install docker
pipenv虚拟环境
此服务的依赖项都是通过 https://github.com/pypa/pipenv并在项目的 pipfile和pipfile.lock文件。pipenv是pip的超集,它将创建 此服务的虚拟python环境(.venv文件夹)。为此, 请确保在本地计算机上安装了pipenv。
brew install pipenv
配置虚拟环境
在项目文件夹中创建虚拟环境(.venv目录) 将以下内容保存在.bash_配置文件或.zshrc中,而不是保存主目录(~):
export PIPENV_VENV_IN_PROJECT=1
强烈建议vscode用户这样做,因为项目的linter和 格式化程序配置为使用安装到本地.venv的二进制文件
在Docker上运行库测试
虽然测试可以在本地运行,但建议通过Docker运行, 在那里他们可以使用他们需要的基础设施。这样你就可以 使用此命令:
docker-compose run publisher-app bash test.sh
模块
事件发布器
用于将事件消息发布到单个sns主题的类。
分布
此代码用于跨多个项目分发,即 需要zeel publisher作为依赖项的zapi服务。图书馆本身 位于PYPI上,可在
https://pypi.org/project/zeel-publisher/
版本控制
zeel发布服务器版本控制遵循Semantic Versioning语法:
Major.Minor.Patch
在发布新版本之前,请确保相应地更新setup.py。
上传到pypi的命令
创建生成-pipenv run python3 setup.py sdist
发布-pipenv run twine upload dist/*