Giter Site home page Giter Site logo

adoscheduledworkitemquery's Introduction

NOTE

This project has moved to https://github.com/techfreakado/ADOScheduledWorkItemQuery

This repository is now considered legacy and archived.

Azure DevOps Schedule Work Item Query

Introduction

The Goal of this extension was to keep as much functionality as possible inside Azure DevOps / Team Foundation Server. We have opted to realize this by using a standard Build Pipeline in Azure DevOps / Team Foundation Server as our "Scheduling" Engine.

The actual functionality is realized as a Build Pipeline Task called "Scheduled Work Item Query". This task executes a query that is saved in either the "My Queries" or "Shared Queries" folders, and sends the results by e-mail using either SendGrid or standard SMTP.

Setup

Introduction

Setup of the Task should be straight forward. You should probably create a new Build Pipeline, and then add as many "Scheduled Work Item Query" Tasks as needed. Each Task is able to send a single Query to multiple people. The Build Pipeline does not have to live in the same Project as the Query.

You should then add a Schedule Trigger to the Build Pipline, that it gets executed automatically whenever you need it to.

Endpoints

SendGrid Endpoint

The SendGrid endpoint can be used if you want to send e-mails using SendGrid. All you need is a SendGrid API Token with the permissions to send e-mails. For Documentation about this, see here

SMTP Endpoint

The SMTP endpoint can be used to send e-mails using standard SMTP interfaces. It supports common TLS configurations as well as authentication.

Azure Repos / Team Foundation Server Endpoint

This Endpoint is needed when you want to send a query that exists only in someone's "My Queries" folder. It is not needed if you want to send out queries living in the "Shared Queries" folder.

Task

Shared Queries

Shared queries can be scheduled without any other authentication, it uses the authentication/authorization of the Agent to connect to Azure DevOps Service / Azure DevOps Server.

Personal (My) Queries

"My Queries" requires a personal access token or username/password from the person which owns the query. You need to configure an Azure DevOps Endpoint for this to work. Note: We recommend generating a Personal Access Token with minimal rights (e.g. only work_item.read scope), and to limit the created Endpoint to a specific pipeline. Make sure you don't expose the endpoint for others to use, as this might be a security risk.

Release Notes

2020-02-14

  • Initial support for Work Items with direct links queries

2020-02-13

  • Support ordering of the query (defined in the query) (#10)

2020-02-12

  • Support more than 200 results from query (#5)

2019-05-21

  • Add ability to skip sending e-mail when there are no work items in the query

2019-04-03

  • Initial Release

adoscheduledworkitemquery's People

Contributors

michelz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

adoscheduledworkitemquery's Issues

SMTP connections empty?

Why do I see my SMTP connections always empty? (See attached image)
image

How does the task query for list of SMTP connections? do I need to configure this somewhere in my DevOps account?

200 Work Item limit

Hi there,
My build failed last night with the following reason:

VS403474: You requested 203 work items which exceeds the limit of 200

Is this limit of 200 set by this extension or within my settings in DevOps?

Thanks,
Craig

Error executing the query, receiving a cryptic error message

Hi,
we just tried the plugin on our on-premise Azure DevOps Server (Version 17.143.28912.1) and the first query we tried to execute seems to run into an error.

Here's the log:

2019-08-21T12:12:50.5743024Z ##[debug]Evaluating condition for step: 'Send Query Result as E-Mail'
2019-08-21T12:12:50.5745065Z ##[debug]Evaluating: succeeded()
2019-08-21T12:12:50.5745606Z ##[debug]Evaluating succeeded:
2019-08-21T12:12:50.5746387Z ##[debug]=> (Boolean) True
2019-08-21T12:12:50.5746960Z ##[debug]Expanded: True
2019-08-21T12:12:50.5747477Z ##[debug]Result: True
2019-08-21T12:12:50.5748164Z ##[section]Starten: Send Query Result as E-Mail
2019-08-21T12:12:50.5946137Z ==============================================================================
2019-08-21T12:12:50.5946745Z Task         : Scheduled Work Item Query
2019-08-21T12:12:50.5947546Z Description  : Sends an E-Mail on a Schedule for Work Item Queries
2019-08-21T12:12:50.5947878Z Version      : 0.57.0
2019-08-21T12:12:50.5948237Z Author       : Quadrotech Solutions AG
2019-08-21T12:12:50.5948671Z Help         : [More Information](https://github.com/Quadrotech/ADOScheduledWorkItemQuery)
2019-08-21T12:12:50.5949133Z ==============================================================================
2019-08-21T12:12:53.2766290Z ##[debug]agent.TempDirectory=D:\BuildAgents\nightly\Agent_000\_work\_temp
2019-08-21T12:12:53.2767403Z ##[debug]loading inputs and endpoints
2019-08-21T12:12:53.2767963Z ##[debug]loading ENDPOINT_AUTH_6f427f24-524e-4de0-ba88-4b04ad986230
2019-08-21T12:12:53.2768595Z ##[debug]loading ENDPOINT_AUTH_PARAMETER_6f427f24-524e-4de0-ba88-4b04ad986230_PASSWORD
2019-08-21T12:12:53.2769254Z ##[debug]loading ENDPOINT_AUTH_PARAMETER_6f427f24-524e-4de0-ba88-4b04ad986230_SMTPFROMEMAILUSERPASSWORD
2019-08-21T12:12:53.2771204Z ##[debug]loading ENDPOINT_AUTH_PARAMETER_6f427f24-524e-4de0-ba88-4b04ad986230_SMTPFROMNAMEUSERPASSWORD
2019-08-21T12:12:53.2771880Z ##[debug]loading ENDPOINT_AUTH_PARAMETER_6f427f24-524e-4de0-ba88-4b04ad986230_SMTPPORTUSERPASSWORD
2019-08-21T12:12:53.2772855Z ##[debug]loading ENDPOINT_AUTH_PARAMETER_6f427f24-524e-4de0-ba88-4b04ad986230_SMTPSERVERUSERPASSWORD
2019-08-21T12:12:53.2889268Z ##[debug]loading ENDPOINT_AUTH_PARAMETER_6f427f24-524e-4de0-ba88-4b04ad986230_TLSOPTIONSUSERPASSWORD
2019-08-21T12:12:53.2897696Z ##[debug]loading ENDPOINT_AUTH_PARAMETER_6f427f24-524e-4de0-ba88-4b04ad986230_USERNAME
2019-08-21T12:12:53.2898549Z ##[debug]loading ENDPOINT_AUTH_PARAMETER_SYSTEMVSSCONNECTION_ACCESSTOKEN
2019-08-21T12:12:53.2899291Z ##[debug]loading ENDPOINT_AUTH_SCHEME_6f427f24-524e-4de0-ba88-4b04ad986230
2019-08-21T12:12:53.2900033Z ##[debug]loading ENDPOINT_AUTH_SCHEME_SYSTEMVSSCONNECTION
2019-08-21T12:12:53.2907466Z ##[debug]loading ENDPOINT_AUTH_SYSTEMVSSCONNECTION
2019-08-21T12:12:53.2908193Z ##[debug]loading INPUT_CONNECTEDSERVICENAMESMTP
2019-08-21T12:12:53.2908824Z ##[debug]loading INPUT_EMAILADDRESSES
2019-08-21T12:12:53.2909432Z ##[debug]loading INPUT_PROJECT
2019-08-21T12:12:53.2910032Z ##[debug]loading INPUT_QUERY
2019-08-21T12:12:53.2910723Z ##[debug]loading INPUT_QUERYTYPE
2019-08-21T12:12:53.2911335Z ##[debug]loading INPUT_SENDIFEMPTY
2019-08-21T12:12:53.2911943Z ##[debug]loading INPUT_SENDMETHOD
2019-08-21T12:12:53.2912571Z ##[debug]loading INPUT_SUBJECT
2019-08-21T12:12:53.2913151Z ##[debug]loaded 20
2019-08-21T12:12:53.2913739Z ##[debug]Agent.ProxyUrl=undefined
2019-08-21T12:12:53.2914395Z ##[debug]Agent.CAInfo=undefined
2019-08-21T12:12:53.2915022Z ##[debug]Agent.ClientCert=undefined
2019-08-21T12:12:53.2915650Z ##[debug]Agent.SkipCertValidation=undefined
2019-08-21T12:12:54.6855427Z ##[debug]project=df6ac1af-addb-4364-9569-b6982c194177
2019-08-21T12:12:54.6889491Z ##[debug]sendIfEmpty=false
2019-08-21T12:12:54.6891678Z ##[debug]queryType=Shared
2019-08-21T12:12:54.6892468Z ##[debug]query=5c07c61a-7431-4b47-8582-abe7cff84bdf
2019-08-21T12:12:54.6893277Z ##[debug]queryType=Shared
2019-08-21T12:12:54.6893956Z ##[debug]SystemVssConnection=http://gs4-tfs1:8080/tfs/DefaultCollection/
2019-08-21T12:12:54.6894730Z ##[debug][email protected], [email protected],[email protected]
2019-08-21T12:12:54.6895626Z ##[debug]Splitted Addresses: [email protected],[email protected],[email protected]
2019-08-21T12:12:54.6897813Z ##[debug]Validating E-Mail address: "[email protected]"
2019-08-21T12:12:54.6898591Z ##[debug]Validating E-Mail address: "[email protected]"
2019-08-21T12:12:54.6899455Z ##[debug]Validating E-Mail address: "[email protected]"
2019-08-21T12:12:54.6900119Z ##[debug]queryType=Shared
2019-08-21T12:12:54.6902159Z ##[debug]SystemVssConnection auth param AccessToken = ********
2019-08-21T12:12:54.6903008Z ##[debug]queryType=Shared
2019-08-21T12:12:54.6903679Z ##[debug]SystemVssConnection=http://gs4-tfs1:8080/tfs/DefaultCollection/
2019-08-21T12:12:54.7335449Z ##[debug]queryType=Shared
2019-08-21T12:12:54.7348097Z ##[debug]query=5c07c61a-7431-4b47-8582-abe7cff84bdf
2019-08-21T12:12:54.9624367Z ##[debug]{"queryType":1,"queryResultType":1,"asOf":"2019-08-21T12:12:54.980Z","columns":[{"referenceName":"System.Id","name":"ID","url":"http://gs4-tfs1:8080/tfs/DefaultCollection/_apis/wit/fields/System.Id"},{"referenceName":"System.Title","name":"Titel","url":"http://gs4-tfs1:8080/tfs/DefaultCollection/_apis/wit/fields/System.Title"},{"referenceName":"System.State","name":"Zustand","url":"http://gs4-tfs1:8080/tfs/DefaultCollection/_apis/wit/fields/System.State"},{"referenceName":"System.Tags","name":"Tags","url":"http://gs4-tfs1:8080/tfs/DefaultCollection/_apis/wit/fields/System.Tags"},{"referenceName":"Microsoft.VSTS.Common.ClosedDate","name":"Schließungsdatum","url":"http://gs4-tfs1:8080/tfs/DefaultCollection/_apis/wit/fields/Microsoft.VSTS.Common.ClosedDate"}],"sortColumns":[{"field":{"referenceName":"Microsoft.VSTS.Common.ClosedDate","name":"Schließungsdatum","url":"http://gs4-tfs1:8080/tfs/DefaultCollection/_apis/wit/fields/Microsoft.VSTS.Common.ClosedDate"},"descending":false}],"workItems":[{"id":18290,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18290"},{"id":18********0,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18********0"},{"id":18327,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18327"},{"id":18347,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18347"},{"id":18323,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18323"},{"id":18321,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18321"},{"id":18363,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18363"},{"id":18369,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18369"},{"id":18377,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18377"},{"id":18420,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18420"},{"id":18430,"url":"http://gs4-tfs1:8080/tfs/DefaultCollection/df6ac1af-addb-4364-9569-b6982c194177/_apis/wit/workItems/18430"}]}
2019-08-21T12:12:55.0296196Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0445466Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0449619Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0453417Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0464020Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0526287Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0529098Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0530914Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0531743Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0532335Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0532927Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0533507Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0534052Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0534845Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0535469Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0536164Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0537072Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0537759Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0538398Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0539310Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0540025Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0540897Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0541596Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0542449Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0543080Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0543712Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0544474Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0545275Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0545935Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0546779Z ##[debug]System.Id,System.State,System.Title,Microsoft.VSTS.Common.ClosedDate,System.Tags
2019-08-21T12:12:55.0547498Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0548114Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0548781Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0549337Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0549918Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0550502Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0551098Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0551647Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0552219Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0552831Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0553668Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0554304Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0555026Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0555650Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0556206Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0556984Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0557564Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0558346Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0558891Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0559586Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0560415Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0561366Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0562053Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0562890Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0563486Z ##[debug]System.Id,System.State,System.Title,System.Tags
2019-08-21T12:12:55.0563999Z ##[debug]sendMethod=SMTP
2019-08-21T12:12:55.0564516Z ##[debug]Using SMTP as Transport
2019-08-21T12:12:55.0565081Z ##[debug]connectedServiceNameSMTP=6f427f24-524e-4de0-ba88-4b04ad986230
2019-08-21T12:12:55.0565712Z ##[debug]6f427f24-524e-4de0-ba88-4b04ad986230 auth scheme = UsernamePassword
2019-08-21T12:12:55.0566297Z ##[debug]Using authenticated SMTP as transport
2019-08-21T12:12:55.0566988Z ##[debug]6f427f24-524e-4de0-ba88-4b04ad986230 auth param username = ********
2019-08-21T12:12:55.0567694Z ##[debug]6f427f24-524e-4de0-ba88-4b04ad986230 auth param password = ********
2019-08-21T12:12:55.0568290Z ##[debug]6f427f24-524e-4de0-ba88-4b04ad986230 auth param smtpserverUserPassword = ********
2019-08-21T12:12:55.0569332Z ##[debug]6f427f24-524e-4de0-ba88-4b04ad986230 auth param smtpportUserPassword = ********
2019-08-21T12:12:55.0570410Z ##[debug]6f427f24-524e-4de0-ba88-4b04ad986230 auth param tlsOptionsUserPassword = ********
2019-08-21T12:12:55.0571105Z ##[debug]Host: ********
2019-08-21T12:12:55.0571634Z ##[debug]Port: ********
2019-08-21T12:12:55.0572139Z ##[debug]Secure: false
2019-08-21T12:12:55.0572874Z ##[debug]IgnoreTLS: [object Object]
2019-08-21T12:12:55.0573631Z ##[debug]Auth: true
2019-08-21T12:12:55.0574409Z ##[debug]connectedServiceNameSMTP=6f427f24-524e-4de0-ba88-4b04ad986230
2019-08-21T12:12:55.0575033Z ##[debug]6f427f24-524e-4de0-ba88-4b04ad986230 auth scheme = UsernamePassword
2019-08-21T12:12:55.0575605Z ##[debug]Using authenticated SMTP as transport
2019-08-21T12:12:55.0576245Z ##[debug]6f427f24-524e-4de0-ba88-4b04ad986230 auth param smtpFromEmailUserPassword = ********
2019-08-21T12:12:55.0577157Z ##[debug]6f427f24-524e-4de0-ba88-4b04ad986230 auth param smtpFromNameUserPassword = ********
2019-08-21T12:12:55.0577820Z ##[debug]subject=[...] Aktuelle Hotfixes
2019-08-21T12:12:55.0578388Z ##[debug]From: ******** <********>
2019-08-21T12:12:55.0579000Z ##[debug]To: [email protected], [email protected], [email protected]
2019-08-21T12:12:55.0579932Z ##[debug]Subject: [...] Aktuelle Hotfixes
2019-08-21T12:12:55.0611494Z ##[debug]HTML: Query: <a href="http://gs4-tfs1:8080/tfs/DefaultCollection//web/qr.aspx?pguid=df6ac1af-addb-4364-9569-b6982c194177&qid=5c07c61a-7431-4b47-8582-abe7cff84bdf">Freigegebene Abfragen/Queries für Notifications/Fertige Release-Fehler aktueller Sprint</a><br /><br /><table border=1>
<tr>
<td>System.Id</td>
<td>System.Title</td>
<td>System.State</td>
<td>System.Tags</td>
<td>Microsoft.VSTS.Common.ClosedDate</td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18********0">18********0</a></td>
<td>...</td>
<td>Fertig</td>
<td>...; PM; Release</td>
<td>2019-08-12T17:46:49.2Z</td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18290">18290</a></td>
<td>...</td>
<td>Fertig</td>
<td>Release; ...</td>
<td>2019-08-12T09:07:50.33Z</td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18321">18321</a></td>
<td>...</td>
<td>Zugesichert</td>
<td>...; PM; Release</td>
<td></td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18323">18323</a></td>
<td>...</td>
<td>Fertig</td>
<td>APS; PM; Release; ...</td>
<td>2019-08-20T11:22:33.763Z</td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18327">18327</a></td>
<td>...</td>
<td>Fertig</td>
<td>PM; Release; ...</td>
<td>2019-08-16T13:30:06.3Z</td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18347">18347</a></td>
<td>...</td>
<td>Fertig</td>
<td>Release; ...</td>
<td>2019-08-16T14:19:08.327Z</td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18363">18363</a></td>
<td>...</td>
<td>Zugesichert</td>
<td>...; PM; Release</td>
<td></td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18369">18369</a></td>
<td>...</td>
<td>Zugesichert</td>
<td>...; PM; Release</td>
<td></td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18377">18377</a></td>
<td>...</td>
<td>Bestätigt</td>
<td>...; Release</td>
<td></td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18420">18420</a></td>
<td>...</td>
<td>Zugesichert</td>
<td>PM; Release; ...</td>
<td></td>
</tr>
<tr>
<td><a href="http://gs4-tfs1:8080/tfs/DefaultCollection//df6ac1af-addb-4364-9569-b6982c194177/_workItems/edit/18430">18430</a></td>
<td>...</td>
<td>Neu</td>
<td>...; Release</td>
<td></td>
</tr>
</table>
2019-08-21T12:12:55.0858555Z ##[error]queryA ESERVFAIL ********
2019-08-21T12:12:55.0868251Z ##[debug]Processed: ##vso[task.issue type=error;]queryA ESERVFAIL ********
2019-08-21T12:12:55.0875487Z ##[debug]task result: Failed
2019-08-21T12:12:55.0881041Z ##[error]queryA ESERVFAIL ********
2019-08-21T12:12:55.0881894Z ##[debug]Processed: ##vso[task.issue type=error;]queryA ESERVFAIL ********
2019-08-21T12:12:55.0900661Z ##[debug]Processed: ##vso[task.complete result=Failed;]queryA ESERVFAIL ********
2019-08-21T12:12:55.1380005Z ##[section]Abschließen: Send Query Result as E-Mail

Any clues what's going wrong?

Kind regards

Send Query Result as E-Mail

Send Query Result as E-Mail works really well with just one caveat that took me forever to debug. It will NOT work with queries of the type "Work items and direct links". It looks like everything is fine, the task runs and everything is successful but no email is ever sent. With a query of type "Flat list of work items" the results from the build pipeline task looks the same but the email is sent with the query results.

Silent failure on "Work items and direct links" type queries

After spending a lot of time trying to debug why this wasn't working (mostly focusing on the SMTP side), I finally thought of the potential problem with the query type. I have several "Flat list of items" shared queries and a few "Work items and direct links" type queries. All queries show up as available choices under "Choose a Query", but only the flat list queries get processed and sent as an email.

If I open the shared query for the ones with direct links and select "Email query" from within DevOps, it emails the results with linked items just fine.

SMTP not working, and keeps on showing Authentication error

i tried all kind of settings with no success it keeps on giving Authentication Error. i tried on our organisation 365 account and using my personal hotmail all with no success.
Any idea or steps recommended to configure the email properly?
image

Unable to use this extension in Azure DevOps

I use Azure DevOps for managing my projects and want to schedule and email my query results to my team. I do not use pipelines. I have enabled it within my project but not sure how to set it up. Can someone help me with how to set the extension so that I can start using it.

Ordering

Currently the queries are ordered in a different way to that set up within the email. By default the email appears to be ordered by System.Id.

Is it possible to make a modification to allow the user to dictate how the queries are ordered.

Many thanks

Unable to verify the first certificate

I configured the build task to use our internal smtp server, the same used by azure devops server itself. I can find the exactly query I want to email but when the build runs it fails with the message "unable to verify the first certificate" no matter the TLS configuration I use for the connection.

How can I fix this?

Send email with wrong hyperlink

When we click on System Id from the results, its not redirecting to the results board, It says Page Not Found. Is there a way that i can resolve this issue

URL in email does not direct to project

The query URL generated in the email coming from the extention does not link to the query and project specified in the task settings. It links to a project "web" which is non-existent in our Collection so it results in a dead browser link for the recipient . We are running ADO 2019 update 1, On Prem.

Thanks in advance for any insights you might have.

ado

End point not present

I am using shared query but it is still throwing end point error which is needed only for my private queries as per docs.

#[debug]Evaluating condition for step: 'ADOScheduledWorkItemQuery'
##[debug]Evaluating: SucceededNode()
##[debug]Evaluating SucceededNode:
##[debug]=> True
##[debug]Result: True
Starting: ADOScheduledWorkItemQuery

Task : Scheduled Work Item Query
Description : Sends an E-Mail on a Schedule for Work Item Queries
Version : 0.89.0
Author : Quadrotech Solutions AG
Help : https://github.com/Quadrotech/ADOScheduledWorkItemQuery

##[debug]Using node path: /home/vsts/agents/2.187.2/externals/node/bin/node
##[debug]agent.TempDirectory=/home/vsts/work/_temp
##[debug]loading inputs and endpoints
##[debug]loading INPUT_SENDMETHOD
##[debug]loading INPUT_CONNECTEDSERVICENAMESMTP
##[debug]loading INPUT_PROJECT
##[debug]loading INPUT_QUERYTYPE
##[debug]loading INPUT_QUERY
##[debug]loading INPUT_SENDIFEMPTY
##[debug]loading INPUT_SUBJECT
##[debug]loading INPUT_EMAILADDRESSES
##[debug]loading ENDPOINT_AUTH_52a234ee-67ae-4fd4-a12a-2986a62cffd1
##[debug]loading ENDPOINT_AUTH_SCHEME_52a234ee-67ae-4fd4-a12a-2986a62cffd1
##[debug]loading ENDPOINT_AUTH_PARAMETER_52a234ee-67ae-4fd4-a12a-2986a62cffd1_SMTPSERVERNOAUTH
##[debug]loading ENDPOINT_AUTH_PARAMETER_52a234ee-67ae-4fd4-a12a-2986a62cffd1_SMTPPORTNOAUTH
##[debug]loading ENDPOINT_AUTH_PARAMETER_52a234ee-67ae-4fd4-a12a-2986a62cffd1_TLSOPTIONSNOAUTH
##[debug]loading ENDPOINT_AUTH_PARAMETER_52a234ee-67ae-4fd4-a12a-2986a62cffd1_SMTPFROMEMAILNOAUTH
##[debug]loading ENDPOINT_AUTH_PARAMETER_52a234ee-67ae-4fd4-a12a-2986a62cffd1_SMTPFROMNAMENOAUTH
##[debug]loading ENDPOINT_AUTH_SYSTEMVSSCONNECTION
##[debug]loading ENDPOINT_AUTH_SCHEME_SYSTEMVSSCONNECTION
##[debug]loading ENDPOINT_AUTH_PARAMETER_SYSTEMVSSCONNECTION_ACCESSTOKEN
##[debug]loading SECRET_SYSTEM_ACCESSTOKEN
##[debug]loaded 19
##[debug]Agent.ProxyUrl=undefined
##[debug]Agent.CAInfo=undefined
##[debug]Agent.ClientCert=undefined
##[debug]Agent.SkipCertValidation=undefined
##[debug]queryType=Shared
##[debug]task result: Failed
##[error]Endpoint not present: SystemVssConnection
##[debug]Processed: ##vso[task.issue type=error;]Endpoint not present: SystemVssConnection
##[debug]Processed: ##vso[task.complete result=Failed;]Endpoint not present: SystemVssConnection
Finishing: ADOScheduledWorkItemQuery

Dates that are attached to the email

Hi there.
Great plugin! Just successfully implemented it this morning.

I appreciate this may not be an issue with the plugin but thought I would check.

My query includes a date field but the dates are returned like this: 2018-12-14T11:52:35.7Z

Whereas in the query results via devops, they are returned as: 14-12-18 11:52

How can I alter what is emailed to be the same as the query results?

Thanks in advance,
Craig

Possibility to edit email body

Hi,

Requesting the possibility to include a custom message in addition to the query results in the email body.

Thanks;

Not All Project are showing

Hello,

I was trying to create a new job to send email from a specific project, but unfortunately the Project is not showing in the list of Projects, is there any specific steps that needs to be done to show all the projects?

Thank you.

Only a few of my Shared Queries are displayed in the Choose a Query drop down

Hi,

This looks really good, I'm just trying it out for the first time and having an issue.
In the task editor, the dropdown for Choose a Query does not display all my queries.
I'm not sure if it is to do with folder depth. It's only showing older queries, nothing that I have created over the last week or so, all of the new Queries I have saved 4 folder levels deep under Shared Queries.

Hope you can help, and thanks for making this.

None of My Queries are showing up in the My Query ID Dropdown

Hi,
I downloaded the extension and made a new Javascript build pipeline
Javascript Pipeline

A new SMTP Server Service Connection
SMTP Connection

And a new Azure Repos/Team Foundation Server Service Connection
Azure Repos Service Connection

And when I try to create the Scheduled Work Item Query task in my pipeline, none of My Queries are showing up in the My Query ID drop down. It says "No Queries Found."

Am I doing something wrong? For the Azure Repos service connection I tried making the Connection URL the organization URL, the URL of the specific project My Queries are in, and the URL of the Queries page.
For the SMTP service connection, I tried making the SMTP Server Port 25, 587, 2525, 465, and 25025. After changing them, I did hard refreshes on Azure.

The My Query ID drop down was blank with everything I tried. Please help. Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.