super-productivity icon indicating copy to clipboard operation
super-productivity copied to clipboard

feat: Integrate with Azure Devops

Open BalighMehrez opened this issue 2 years ago • 21 comments

Description

Integration with Azure DevOps boards.

Issues Resolved

#356

Check List

  • [ ] New functionality includes testing.
  • [ ] New functionality has been documented in the README if applicable.

BalighMehrez avatar Dec 26 '22 15:12 BalighMehrez

Thank you very much!! I try to have a look tomorrow!

johannesjo avatar Jan 04 '23 18:01 johannesjo

There seem to be some minor linting errors:

Linting "sp2"...

/home/runner/work/super-productivity/super-productivity/src/app/features/issue/providers/azuredevops/azuredevops-api.service.ts
Error:   72:1  error  This line has a length of 244. Maximum allowed is 150  max-len
Lint errors found in the listed files.


/home/runner/work/super-productivity/super-productivity/src/app/features/issue/providers/azuredevops/azuredevops-common-interfaces.service.ts
Error:   4:[10](https://github.com/johannesjo/super-productivity/actions/runs/3782159290/jobs/6539750367#step:8:11)  error  'catchError' is defined but never used  @typescript-eslint/no-unused-vars
Error:   4:10  error  'catchError' is defined but never used  unused-imports/no-unused-imports
Error:   4:45  error  'switchMap' is defined but never used   @typescript-eslint/no-unused-vars
Error:   4:45  error  'switchMap' is defined but never used   unused-imports/no-unused-imports

✖ 5 problems (5 errors, 0 warnings)
  2 errors and 0 warnings potentially fixable with the `--fix` option.

Error: Process completed with exit code 1.

johannesjo avatar Jan 05 '23 13:01 johannesjo

Whats the status on this? I would really love to see a DevOps Integration.

LukasKlepper avatar Apr 12 '23 12:04 LukasKlepper

The linting stuff needs to be fixed. Apart from that I am open to merge this. Unfortunately I can't test the feature myself, so help with that would be welcome!

johannesjo avatar Apr 14 '23 10:04 johannesjo

@johannesjo I'd like to fix the linting errors, but the job's log is expired. Could you please rerun it so I can see whats wrong?

LukasKlepper avatar Aug 03 '23 08:08 LukasKlepper

@LukasKlepper looks like I can't :/ But you can also run all the linting/unit testing stuff locally via:

npm run lint
npm run test

If this doesn't work for you, you can retrigger the build by submitting a new commit.

johannesjo avatar Aug 04 '23 16:08 johannesjo

Hi @johannesjo, before I've looked into the linting errors I've checked the integration with devops myself and saw some things which may need to improve before matching the quality of a master pr.

  • [ ] When going on "Project Specific Settings -> Issue Integration" the name of the implementation is written "AZUREDEVOPS", should be "Azure DevOps".
  • [ ] Currently all backlog items are getting fetched (Epic, Features, User Stories), in a real scenario we mostly log to user stories (in my experience). It would be nice to see the type of the issue within Super Productivitiy. We can get the information from the workItem's System.WorkItemType in the api's answer.
  • [ ] It would be nice to also see the acceptance criteria within Super Productivitiy, not only the Description.
  • [ ] A link to the item within Super Productivity which opens the item in Azure DevOps would be nice to have. It seems like there is something like that implemented in the Summary but it always leads me back to localhost. (Could also be an problem to my local environment?) We can get the information from the workItem's _links.html.href in the api's answer.

The linting errors seem quite easy to fix.

src\app\features\issue\providers\azuredevops\azuredevops-api.service.ts
  error  This line has a length of 244. Maximum allowed is 150  max-len
src\app\features\issue\providers\azuredevops\azuredevops-common-interfaces.service.ts
  error  'catchError' is defined but never used  @typescript-eslint/no-unused-vars
  error  'catchError' is defined but never used  unused-imports/no-unused-imports
  error  'switchMap' is defined but never used   @typescript-eslint/no-unused-vars
  error  'switchMap' is defined but never used   unused-imports/no-unused-imports

xTamasu avatar Aug 04 '23 17:08 xTamasu

Currently all backlog items are getting fetched (Epic, Features, User Stories), in a real scenario we mostly log to user stories (in my experience). It would be nice to see the type of the issue within Super Productivitiy.

Attention: This depends on the template you use/have in ADS. You have several different ones and AFAIK you can also customize them. In my experience we log to Tasks, mostly. e.g. and the parent of that can e.g. be called Product Backlog Item (PBI) in the Scrum process.

rklec avatar Aug 07 '23 08:08 rklec

@rklec Yeah, it depends mostly on the organization guidelines/settings. Thats why it should only show the type of the item so the user can decide whats important for him.

xTamasu avatar Aug 07 '23 08:08 xTamasu

Keeping a watchful eye, would be a great addition to my workflow to have this!

Kevinf63 avatar Nov 16 '23 15:11 Kevinf63

Second this, would be amazing to have!

Kigstn avatar Dec 13 '23 20:12 Kigstn

This PR has not received any updates in 90 days. Please comment, if this still relevant!

github-actions[bot] avatar Apr 28 '24 01:04 github-actions[bot]

This PR has not received any updates in 90 days. Please comment, if this still relevant!

Very relevant.

Kevinf63 avatar Apr 28 '24 10:04 Kevinf63

What's the status on this? Any chance of getting it merged?

nemanja010 avatar May 07 '24 09:05 nemanja010

I am unable to test this myself, so if someone were to test this and report how it is working back here, I am all for merging this.

johannesjo avatar May 09 '24 17:05 johannesjo

Note you can AFAIK create a free(?) account on https://dev.azure.com/ and test it. Though this obviously only tests the hosted/SaaS solution.

rklec avatar May 16 '24 16:05 rklec

I use Azure DevOps daily, and this feature would be very useful! I may take a look at this PR and attempt to test the implementation.

tapaolo avatar Jul 09 '24 16:07 tapaolo

I may take a look at this PR and attempt to test the implementation.

That would be great! Let me know if you have any questions!

johannesjo avatar Jul 10 '24 08:07 johannesjo

@tapaolo I can help testing, unfortunely currently don't have experience with angular and thus not the time for learning & implementation.

xTamasu avatar Jul 10 '24 08:07 xTamasu