Kubernetes部署的输出说明

dok8s的Python项目详细描述


github latest releasepypi latest packagedocker latest imageproject license

dok8s CIdok8s CDsecurity scanpre-commit

code coveragecode alertscode qualitycode style

dok8s公司

dok8s:Kubernetes部署的输出说明。在

目录

  1. Use Case
  2. Configuration
  3. Development
  4. Testing
  5. Versioning
  6. Deployment
  7. Production

用例

以表格格式收集和导出Kubernetes部署的信息(例如组件、资源和docker映像/标记)。 输入:部署文件(YAML定义的集合)。
输出:漂亮的打印表格数据。在

要求

  • 解析以下Kubernetes组件:
    ConfigMapDeploymentIngressPersistentVolumeClaimSecretServiceStatefulSet。在
  • 收集相关信息:
    kindmetadata namedata filenames(init) containershosts / rulesstorage name / sizeportscpu/memory requests/limits
  • 生产就绪代码。在

假设

设计

此项目基于CLI界面。在

示例输出

输入

{yama19}文件

输出

组件

ComponentValueDetails
ClusterRolecluster-autoscaler--
ClusterRoleBindingcluster-autoscaler--
Deploymentcluster-autoscalercluster-autoscaler
Rolecluster-autoscaler--
RoleBindingcluster-autoscaler--
ServiceAccountcluster-autoscaler--

资源

^{tb2}$

Docker图像

Platform/ServiceNameImageVersion
cluster-autoscalercluster-autoscalerk8s.gcr.io/cluster-autoscalerv1.14.7

配置

应用程序的行为可以通过环境变量进行配置。在

Environment VariableDescriptionTypeDefault Value
^{}Level of logging - overrides verbose/quiet flagstring-
^{}Directory to save logsstring-
^{}Directory to save any output (bin)stringbin

发展

配置本地开发

  • 在本地计算机上克隆repo
  • 安装^{}^{}
  • 创建本地项目环境(基于^{}^{}^{}):
    ^{cd24}
  • (可选)更新现有本地项目环境:
    $ make env-update

本地运行

在终端上,运行以下命令(在项目的根目录上执行):

  • 激活项目环境:
    $ . ./scripts/helpers/environment.sh
  • 使用poetry:
    $ dok8s

贡献

[不可用]

测试

(CI/CD的一部分)

[正在工作。。。]在

要运行测试,请打开终端并运行以下命令(在项目的根目录上执行):

  • 激活项目环境:
    $ . ./scripts/helpers/environment.sh
  • 运行pytest:
    $ make test
  • 检查测试覆盖率:
    $ make test-coverage

版本控制

增加版本号:
$ poetry version {bump rule}
其中有效的通气规则为:

  1. 补丁
  2. 小调
  3. 少校
  4. 预赛
  5. 普雷米诺
  6. 前主
  7. 预释放

变更日志

使用CHANGELOG.md跟踪此包的演变。
文件顶部的[UNRELEASED]标记应该一直在那里记录工作,直到发布发生。在

工作应记录在以下子标题之一下:

  • 已添加
  • 改变
  • 固定的
  • 已删除

在版本中,应将以下格式的版本添加到文件中所有当前未发布的更改。
## [major.minor.patch] - YYYY-MM-DD

部署

Pip包

在终端上,运行以下命令(在项目的根目录上执行):

  • 激活项目环境:
    $ . ./scripts/helpers/environment.sh
  • 构建pip包:
    $ make build-package
  • 要发布pip包(需要向PyPi提供凭据):
    $ make publish-package

Docker图像

在根目录下执行(在以下根目录上运行):

  • 激活项目环境:
    $ . ./scripts/helpers/environment.sh
  • 要构建docker映像:
    $ make build-docker

生产

对于生产,使用Docker映像。 此图片在docker hub上公开发布。在

  • 第一次从docker hub拉取图像:
    $ docker pull nichelia/dok8s:{version}
  • 通过docker运行执行CLI:
    $ docker run --rm -it -v ~/dok8s_bin:/tmp/bin nichelia/dok8s:{version} {command} -d /tmp/bin -o {filename}
    将应用程序挂载到根目录下。要解析的kubernetesyaml文件应该包含在这个目录中。在

在哪里rsion是发布的应用程序版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何根据特定条件替换方括号内的单词   java为什么从数组流式传输时不能将整数映射到字符串?   java如何更改首选项活动主题?   java在JComboBox中显示时区   java我可以通过文档对象将PDF上传到SugarCRM吗?   web服务如何调用。通过NTLM身份验证从java客户端提供基于Net的Web服务   java使用Servlet读取Jar内部的清单文件   java当我们声明变量时,编译器实际上做什么?   寻找印地语背后的java直觉   java如何设置表格布局的样式   java Android在目标类上指定默认值   if语句在这两个java行中jvm是否存在任何差异:   java网格正在脱离屏幕   java将XLSX行转换为字符串并添加到数组   java JSF2 ResourceBundleLoader覆盖?