温馨提示:本文翻译自stackoverflow.com,查看原文请点击:python - Which Continuum APIs can be used to track artifacts, packages and releases?
azure-devops jenkins-pipeline python devops continuum

python - 哪些Continuum API可用于跟踪工件,程序包和发行版?

发布于 2020-03-27 11:41:24

连续产品具有许多内置的UI插件,使团队可以跟踪从提交到生产的一系列故事和缺陷。有没有一种方法可以通过API来完成此工作,以帮助它与已经存在的管道集成Jenkins还是Azure DevOps?

查看更多

查看更多

提问者
TheDevOpsGuru
被浏览
130
hikaru 2019-07-04 02:12

尽管这很难回答,但由于开发工作流通常如此不同,因此有多种API可以简化各种工作流。

在最小

Continuum is heavily dependent on telemetry from VCS, so at a minimum set up a webhook from your VCS (GitHub, GitLab, BB, etc) to a project defined in Continuum. This will allow continuum to correlate changes to your code base with "motivators for change" (workitems) in your chosen planning system (VersionOne, Jira, ADO, etc)

The simple act of sending VCS pushes to Continuum activates a ton of value - from Rogue Commit awareness to Risk Analysis.

Using Pipelines

Very often, value stream designers will trigger a Continuum pipeline even if there is other build automation already in place. (Continuum pipelines have many features and integrations not always available in other pure-automation devops tools.) When done this way, the Continuum pipeline will typically wait for data from the external process. Using this endpoint, the external process can signal when it's done, and Continuum will carry on its prescribed path.

Another common approach is to configure the Continuum project to stage the commits and workitems for a subsequent pipeline run to be triggered by the existing external automation. In this case, the manifest of data that was received in the VCS push is set up and ready to run, awaiting a simple trigger from the external job.

Using Packages

In more mature cases, where a value stream is fully defined in Continuum, you will need to embrace the concept of Package Progression. A higher level grouping mechanism that a pipeline, and far higher than simple "build pipelines", the Package Progression is a fully defined workflow and version management process for a product, including the ability to capture manual activities outside the domain of "devops", and generate comprehensive flow metrics. When using Packages, several API's are valuable.

If the external automation has created a build artifact that actually has a chance at being a production release candidate, use this API to tell Continuum to register a new revision of that package.

在外部自动化更为全面的情况下,甚至可能将工件部署到生产发行版的目的地时,使用此API可以在工件逐步成熟时使Continuum保持最新状态,从而可以保持流量指标的准确性。

最后,如果您现有的自动化非常完整,可以实际进行正式的生产部署,请使用此API通知Continuum,该修订版已经delivered针对消费者-它的旅程已经结束。

还有其他一些API有助于监视/管理程序包进度过程:

给定使用创建的修订new_revision,您可以查询它manifest(与之关联的提交,工作项和工件的列表。

如果您的Progression实现了手动活动(例如,您需要手动触发一些自动化过程),则此API可以以编程方式完成该活动。

同样,如果您要捕获Controls审计和合规性报告,则外部流程可以告诉Continuum控制已得到满足,从而可以继续进行。

对Package Revision的当前状态感到好奇吗?这将返回有关其在值流中当前位置的详细信息。

对软件包修订的历史感到好奇吗?这将通过值流返回有关修订历史记录的详细信息。

完整的API文档可在此处找到

如果您想聊天,我们很乐意详细讨论-support@versionone.com