如何使用tfs-cli(tfx)更新内部部署TFS实例的TFS扩展?

时间:2017-06-30 19:08:22

标签: tfs tfs2017

我的公司有一个内部部署的TFS 2017实例。我知道如何通过Web界面安装和更新扩展,但这非常繁琐。我想知道是否有更快捷的方式使用tfs-cli

1 个答案:

答案 0 :(得分:2)

由于某种原因,我花了一些时间来解决这个问题。起初我以为tfs-cli只能用于发布Visual Studio Marketplace的扩展,但事实并非如此。以下是如何为本地TFS执行此操作:

生成个人访问令牌

您可以关注instructions here。或者:

  1. 将鼠标悬停在右上角的个人资料图片上。
  2. 选择“安全”。
  3. 如果尚未选择,则选择“个人访问令牌”部分。
  4. 点击“添加”按钮生成新令牌。
  5. 如果您想限制范围,请选择“市场(发布)”选项。
  6. 点击“创建令牌”。
  7. 复制并保存在安全的地方!
  8. 登录

    在命令行中输入以下内容:

    tfx login

    系统将提示您输入服务URL和您在上一步中生成的个人访问令牌。

    对于服务URL,请使用贵公司用于访问TFS的任何内容。示例网址:

    需要注意的一些事项:

    1. 指定http / https。
    2. 您可能/可能不需要指定端口号。
    3. 根据您正在运行的TFS 2017的版本及其安装方式,您可能需要也可能不需要在网址中加入/tfs/。例如,安装时it's possible to get rid of the /tfs/ virtual directory。查看在浏览器中使用TFS时使用的URL以及相应的命令。
    4. 打包您的扩展程序

      1. 导航到您的扩展程序的根目录。
      2. tfx extension create --manifests <manifest-file-name> --rev-version
        • --manifests标志用于指定清单的文件名,例如vss-extension.json
        • --rev-version标志会自动增加包裹的补丁号码。
      3. 发布(安装/更新)您的分机

        使用publish命令安装/更新(它将确定需要完成哪些操作)您的扩展程序。

        tfx extension publish --service-url <tfs-url>

        您需要在此处再次指定服务网址。如果不这样做,tfx将尝试将您的扩展程序发布到VSS市场。

        最后,我的首选脚本:

        rm *.vsix &&    # Remove old packages
        tfx extension create --manifests <manifest-file-name> --rev-version &&
        tfx extension publish --service-url <tfs-url>