扎贝尔。

zabel的Python项目详细描述


扎贝尔

概述

Projects,意思是一群人在 时间和意图达到一个特定的目的,是每天开始的,存在的 到处都是。在

启动这些项目,如果他们依赖某种软件基础设施, 可能是一个乏味的工作。配置必要的工具,创建必要的 资源、链接、权限、访问等非常耗时,而且容易出错。在

项目也会随着时间的推移而发展。新的需求可能会出现,新的工具可能会被添加,旧的 可以拆卸或更换工具。这群人可能会缩小或增长。以及 也许有些工具我们是按座位付费的。在

那么,我们如何管理这些事情呢?在

Zabel引入了managed project definitions的概念,它是 描述项目脚手架的文本文件(YAML或JSON文档)。 它们可以保存在版本控制系统中。在

管理项目定义

每个项目都有一个托管项目定义,它可以随着时间的推移而发展。在

托管项目定义至少有一个名称:

apiVersion:zabel/v1kind:ManagedProjectmetadata:name:Project42

如果所有的项目都有相同的布局,比如说,有一个源,这就足够了 代码库、CI/CD工具链上的一组管道,以及一些 文档空间。在

Zabel将使用此托管项目定义来创建必要的资源和 配置它们。在

不过,在大多数情况下,并不是所有的项目都有相同的布局,而且您可能有 管理用户访问和许可席位。在

因此,更常见的托管项目定义可能如下所示:

^{pr2}$

在上面的例子中,我们有三个访问级别(adminsusers,和{}), 项目将在一组domainssourcesteams)中有关联的资源, spacestestbooks,和trackers)。在

访问权限可以在项目级别指定,并在域上进行优化。在

域正在表示工具。例如,{cd4lab}可以是GitLab 例如,teams可能是一个Artifactory+Jenkins+sonarquobe工具链,并且 spaces可能是一个聚合服务器。在

不过,这只是一个例子。您可能需要更精细或更粗糙的访问级别,以及什么 你需要的领域和它们依赖的工具当然是特定于你的环境的。在

简而言之

Zabel提供了必要的基础设施来管理不断发展的托管集合 项目定义。在

Zabel的一个部署可以管理多个上下文,每个上下文都有自己的域, 访问级别定义、约定。。。在

对于每个上下文(Realm,用Zabel的说法),您定义预期的策略, 约定、域、约束和Zabel将为您管理其余部分。在

许可证

Copyright (c) 2019-2020 Martin Lafaix (martin.lafaix@external.engie.com) and others

This program and the accompanying materials are made
available under the terms of the Eclipse Public License 2.0
which is available at https://www.eclipse.org/legal/epl-2.0/

SPDX-License-Identifier: EPL-2.0

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

推荐PyPI第三方库


热门话题
java Jsonify使用Jackson来定义嵌套对象   在Swing中禁用java图形调试   java Selenium Webdriver拖放在Jenkins上不起作用   java我对一个显示器的问题有一个非常不切实际的询问   java增强的“for”循环导致ArrayIndexOutOfBoundsException   ArrayAdapter适用于Java中的安卓编程,字符串数组   linux在Ubuntu上通过PulseAudio播放Java音频文件时出错   java在Spring应用程序中加载内部(类路径)和外部属性文件   java使用Maven连接到mySQL   Java应用程序的设计   websocket在电报api java中与dc的连接   java XMLStreamException,因为xml中的(&N)   java从控制台输出到JTextArea   Java导出文本文件   java实现parseInt方法   java为什么servlet容器会同步对特定资源/servlet的多个请求的访问?   循环中的Java“while”变量   用Java编程一个国际象棋游戏,gameOver布尔不起作用   java如何获得真正的JPanel大小?