colindembovsky / cols-agent-tasks

Colin's ALM Corner Custom Build Tasks
MIT License
83 stars 68 forks source link
build coverage dacpac replace-token tag tokenizer versioning vsts vsts-extension

Colin's ALM Corner Custom Build Tasks

Build Status

Donate

As Scott Hanselman says, "donations pay for tacos" (or low carb equivalent).

Overview

This repo contains custom tasks that meant to be used with Visual Studio Online and Team Foundation Server.

Build and Test

Use yarn to build and test these extensions. All yarn scripts are specified in the package.json file. Run yarn run to get a prompt of all the targets. The most important are:

  1. install: install dependencies in root folder.
  2. install-libs install dependencies in each Task folder (required since each task has to be self-contained).
  3. test to run tests.
  4. debugtest to run tests with verbose logging.
  5. cover to run tests with code coverage.
  6. prepextension to run install and coverage (used to package the extension in the build).

Tasks

The following tasks are available:

  1. Version Assemblies

    This task versions assemblies according to the build number. More...

  2. Replace Tokens

    This task replaces tokens in a file using Environment variables. More...

  3. DacPac Change Report Task

    This task calculates the changes in an SSDT project between builds. More...

  4. Tokenizer

    This task tokenizes a file automatically. More...

  5. Coverage Gate

    This task allows you to fail a release (or build) based of coverage delta. More...

Changing the Code

The easiest way to open the source is to clone the repo and open in VSCode. If you change the .ts files, then run build (ctrl-shift-b) to compile the .js files.

Creating the Extension Package

Help Pages can be found here.

To compile the extension, update the version number in the extension-manifest.json file and run:

tfx extension create --manifest-globs .\vss-extension.json

Upload to the marketplace by singing in to your publisher profile.