Skip to content

joachimdalen/azdevops-auto-state

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Logo

Auto State

Auto State is an extension to automate state changes of parent work items.
Explore the docs »

View Extension · Changelog · Report Bug · Request Feature

Azure DevOps builds Issues License
Visual Studio Marketplace Installs - Azure DevOps Extension Visual Studio Marketplace Last Updated Visual Studio Marketplace Rating
Table of Contents
  1. About The Project
  2. Post Install Activation
  3. Getting Started
  4. Usage
  5. Roadmap
  6. Contributing
  7. Release and merge strategy
  8. License
  9. Contact

About The Project

Product Name Screen Shot

An issue I often face is forgetting to update the state of a parent workitem when starting a new Task. This extension aims to auto update parent workitems based on a set of rules when the child workitem is started.

Features:

  • Create rules to manage state transitions
    • Ability to check that all child work items also matches rules
    • Ability to process rules from the current work item to the top of the tree
  • Rule tester to see how rules work and what work items will be updated
  • Get started easily by using preset rules. See preset rules

Limitations

  • This extension does not work when doing mass updates
  • The state must be updated from the work item form for the update to trigger

(back to top)

Post Install Activation

Auto State is hidden behind a feature flag for several reasons. After installing the extension a Project or Organization administrator will need to toggle the feature flag to On in the Preview Features menu. This feature flag is scoped to individual projects, that means you need to be inside a project for the feature flag to appear. The url should look something like https://dev.azure.com/ORGANIZATION/PROJECT

When you open the modal with all the feature flags the dropdown should have three options

  • for me [Your name]
  • for this project [Project Name] (This is the one you should select)
  • for this organization [Organization Name]

Feature Toggle

Getting Started

Prerequisites

  • A MarketPlace publisher Create a publisher

  • tfx-cli installed. Due to issues with outdated dependencies this is not included in package.json

    npm install -g tfx-cli
  • Pipelines uses the following extensions that needs to be installed in your organization in addition to default tasks:

Installation

  1. Clone the repo

    git clone https://github.com/joachimdalen/azdevops-auto-state.git
  2. Install dependencies

    > npm install
  3. Update publisher in vss-extension-dev.json

  4. Compile development version

    npm run prepare:dev
  5. Publish extension

  6. Share and install extension

  7. Run extension

    npm run serve:dev

    Note: You might need to open https://localhost:3000/ in your browser from time to time to accept the unsecure certificate to have the extension load properly from your local environment.

(back to top)

Usage

See documenation for rule usage.

(back to top)

Roadmap

See the open issues for a full list of proposed features.

(back to top)

Contributing

Contributions are welcome, both in the form of suggestions and code. Create

If you want to contribute code, I ask that you follow some guidelines.

  • New and changed features should to the best ability be covered by tests
  • Follow the branching policy:
    • feature/ for new features
    • bugfix/ for bug fixes
    • docs/ for documentation changes
  • If your change is related to an issue, use the id as the first part of the branch e.g bugfix/12-fix-crash-when-updating-rule
  • Pull requests should target the develop branch
  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

Release and merge strategy

  • master is only deployed to PROD and tagged with v<extension_version>
    • Pull requests are always squash merged into master
    • master is the only branch where GitHub releases are created for
  • feature/* and bugfix/* are deployed to QA. For deployment to DEV using local assets (only manifest changes are deployed to dev), the Deploy to DEV instead of QA option needs to be checked when running the deployment pipeline.

QA and DEV are private development and verfication environments (publications of the extensions.) Submit a new issue if you for some reason wish access to either of these.

Note Access to these are not given for your local development. Please publish your own development release.

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

Contact

If you have generic questions about the project or usage you can make contact in the following ways:

(back to top)