FourDigits CLI工具
项目描述
FourDigits CLI
一个命令行工具,用于使在Four Digits中的开发和部署更简单。
它具有以下命令
- "docker"
- "build": 在我们的Gitlab CI管道中构建Docker镜像
- "tag": 在注册表上的现有Docker标签上创建新的Docker标签
- "gitlab"
- "fix-coverage-paths": 更改生成的coverage.xml,以便Gitlab可以在合并请求中显示覆盖率可视化
- "exonet"
- "deploy": 将项目部署到Exonet
- "db:download": 从Exonet下载数据库并在本地导入
- "db:copy": 将一个环境中的数据库复制到另一个环境
- "docker-compose"
- "sync": 将服务中的文件同步到本地文件夹
- "sync:env": django:home/userapp/env -> env-docker的快捷方式
安装
pip install fourdigits-cli
升级
pip install --upgrade fourdigits-cli
启用自动完成
bash
将此添加到~/.bashrc
eval "$(_4D_COMPLETE=bash_source 4d)"
eval "$(_FOURDIGITS_COMPLETE=bash_source fourdigits)"
Zsh
将此添加到~/.zshrc
eval "$(_4D_COMPLETE=zsh_source 4d)"
eval "$(_FOURDIGITS_COMPLETE=zsh_source fourdigits)"
用法
安装后,cli工具在fourdigits
和4d
下可用。有关更多信息,请使用
fourdigits --help
示例:构建Docker镜像并将其部署到测试环境
为tst
环境构建镜像并将其上传到我们的注册表
$ fourdigits docker build tst --push
Docker build image <docker_tag>
- file=Dockerfile
- context=.
- target=None
Docker create tag <tmp_tag> -> docker-registry.fourdigits.nl/fourdigits/<project>:tst
Docker push tag docker-registry.fourdigits.nl/fourdigits/<project>:tst
Docker create tag <tmp_tag> -> docker-registry.fourdigits.nl/fourdigits/<project>:<docker_tag>
Docker push tag docker-registry.fourdigits.nl/fourdigits/wijsproductportals:<docker_tag>
要部署此到tst
环境,请使用上一步中的docker_tag
(而不是tmp_tag
)
$ fourdigits exonet deploy tst <docker_tag>
{"id":...,"number":<number>,...}
您可以在https://drone.exonet.nl/exonet/containers-fourdigits/上查看部署管道的进度。
故障排除
未授权
如果您收到
unauthorized: unauthorized to access repository: fourdigits/<project>, action: push: unauthorized to access repository: fourdigits/<project>, action: push
您需要登录到注册表
docker login
docker login docker-registry.fourdigits.nl
项目配置
该项目配置在pyproject.toml
文件中,可用选项及其默认值
[project]
name = "default-project"
[tool.fourdigits]
exonet_project_name="<default is project name>"
docker_repo="<default is project name>"
slack_channel="<default is project name>"
docker_image_user="fourdigits"
[tool.fourdigits.envs.<environment anem>]
exonet_environment="<default is environment name>"
# Every setting can be overridden per environment
slack_channel="custom-channel"
示例项目具有独立的nextjs
[project]
name = "django-project"
[tool.fourdigits]
# default to project name
[tool.fourdigits.envs.tst]
[tool.fourdigits.envs.acc]
[tool.fourdigits.envs.prd]
[tool.fourdigits.envs.nextjs_tst]
exonet_project_name = "nextjs"
exonet_environment = "tst"
docker_repo = "nextjs"
[tool.fourdigits.envs.nextjs_acc]
exonet_project_name = "nextjs"
exonet_environment = "acc"
docker_repo = "nextjs"
[tool.fourdigits.envs.nextjs_prd]
exonet_project_name = "nextjs"
exonet_environment = "prd"
docker_repo = "nextjs"
开发
make develop
发布
要使新版本在PyPI上可用,请按照以下步骤操作
- 更新版本:编辑
fourdigits_cli/__init__.py
并提交。 - 运行:
make push-version
- 将https://gitlab.com/fourdigits/utils/docker-pipeline-image/-/blob/main/Dockerfile中fourdigits-cli的安装更新到最新版本。
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码分发
fourdigits_cli-1.16.1.tar.gz (14.3 kB 查看哈希值)
构建分发
fourdigits_cli-1.16.1-py3-none-any.whl (15.1 kB 查看哈希值)
关闭
fourdigits_cli-1.16.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 04839f669a08ac5a677b3cb722a75530aee4f0af39ab147a914733532240d78a |
|
MD5 | 1825a07f45d3a48f01c61fbcb553bf0b |
|
BLAKE2b-256 | ab97da39071a4e76154f3de77a68355c80206b44904d9befb69d5c8e74732cb7 |
关闭
fourdigits_cli-1.16.1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ad78cb7537b761278e6f05141fa1cc4467a34f33b796819004f54305d3ad1abf |
|
MD5 | 6743cdadc9b91063371d8d6b466a5651 |
|
BLAKE2b-256 | df64a1516ec1d90dc1bc7fbffb55dbfc4e50a1262ddbbfec92154adf8930ed12 |