VSTS-将扩展发布到私有集合以进行测试 [英] VSTS - Publish extension to private collection for testing

查看:80
本文介绍了VSTS-将扩展发布到私有集合以进行测试的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我创建了一些VSTS扩展供内部使用.我还使用MS DevLabs的用于VSTS扩展的CI/CD工具"为此创建了CI/CD管道.我的方法是先将扩展推送到私有测试VSTS集合中,然后在我对其进行验证之后,将其与我的产品"集合共享.我昨天注意到,尽管我的更改立即出现在我的产品集合中,所以我需要纠正它.

I created some VSTS extension for internal use. I also created a CI/CD pipeline for these using the "CI/CD Tools for VSTS Extensions" by MS DevLabs. My approach has been to first push the extensions to a private testing VSTS collection and then once I have verified them I share them with my "prod" collections. I noticed yesterday though that my changes were immediately visible in my prod collections so I need to correct that.

发布管道如下:

测试环境执行发布扩展,共享扩展和安装扩展.

Test environment does a Publish Extension, Share Extension, and Install Extension.

  • 发布:我已将扩展可见性"设置为私人",而共享于"为 设置为我的测试收藏.
  • 分享:分享对象"已设置为我的测试收藏集.
  • 安装:安装于"设置为我的测试收藏
  • Publish: I have "Extension visibility" set to Private and "Share with" is set to my test collection.
  • Share: "Share with" is set to my test collection.
  • Install: "Install in" is set to my test collection

产品环境执行共享并安装".那些推到我的产品集合.我已设置了部署前授权,因此可以在验证测试后释放到产品环境.我尚未批准任何更改,因此我不希望在prod集合中进行任何更改.

Prod environment does a Share and Install. Those push out to my prod collections. I have a Pre-deployment authorization set up so I can release to the prod environment after verifying Test. I haven't approved any changes yet so I do not expect my changes in the prod collection.

为什么仅在测试环境中执行扩展后,我的扩展发布立即显示在我的prod集合中?是因为一旦我发布了任何已安装的扩展集,就可以看到新功能?我需要在发布步骤中将可见性设置为私有预览吗?

Why are my extension publishes immediately visible in my prod collections after only executing against the test environment? Is it because once I publish any collection that has installed my extension has visibility to new functionality? Do I need to set the visibility to private preview in my publish step?

如果是这样,是否意味着我需要在产品"环境中添加发布以将扩展名从私有预览更改为私有?我担心在这种情况下,我需要将版本控制步骤从构建中移出,并移至发行版中.我假设我不能在不更改版本的情况下再次发布扩展.由于共享是发布的一部分,因此在测试环境中是否需要共享"步骤?

If so does that mean I need to add a publish in my "prod" environment to change my extension from private preview to private? I have concerns I'll need to move the versioning step out of the build and into the release in that case. I'm assuming I can't publish the extension again without changing the version. Is that Share step necessary in test environment since share is part of the publish?

推荐答案

我们仅在构建中进行一次版本控制.每个内部版本都会增加版本号.然后部署这些版本.这可能意味着您的公共扩展程序会跳过某些版本,因为这些版本仅部署到测试环境中.构建会生成VSIX.

We do versioning only once in the build. Each build increases the version number. These versions are then deployed. This could mean that your Public extension skips some versions since those are only deployed to the test environments. The build produces a VSIX.

我们在市场中使用两个发布者帐户:alm-rangers和msdevlabs. ALM游骑兵之一用于我们所有的私人测试. msdevlabs是您在市场中找到的公共帐户.

We use two publisher accounts in the marketplace: alm-rangers and msdevlabs. The ALM Rangers one is used for all our private testing. msdevlabs is the public account that you find in the marketplace.

我们的每个发布环境只有一项任务:发布扩展.对于我们的金丝雀环境,我们将扩展发布为私有.对于msdevlabs公开.

Each of our release environments has only one single task: Publish Extension. For our canary environment, we publish the extension as private. For msdevlabs as public.

以下是一些屏幕截图:

我是负责扩展管道指导的ALM Ranger,所以请让我知道如何改进它!

这篇关于VSTS-将扩展发布到私有集合以进行测试的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆