Tag not monitored by Microsoft.
How to send email from manualValidation@0
Suraj Salunkhe
0
Reputation points
- stage: approval
jobs:
- job: memberlist
pool:
name: Azure Pipelines
vmImage: 'windows-2019'
steps:
- task: PowerShell@2
inputs:
targetType: 'inline'
script: |
try {
$redmineUrl = "http://redmine/projects/${env:REDMINEPROJECTID}/memberships.json?key={key}&limit=100&Content-Type=application/json"
Write-Host $redmineUrl
$response = Invoke-RestMethod -Uri $redmineUrl -Method Get
$redmineData = $response | ConvertTo-Json -Depth 100 | ConvertFrom-Json
# Write-Host $redmineData
$filteredUsers = $redmineData.memberships | Where-Object {
# dev members
$_.roles.id -contains 4 -or
$_.roles.id -contains 9 -or
$_.roles.id -contains 14 -or
$_.roles.id -contains 17 #-or
# PM members
# $_.roles.id -contains 3 -or
# architect members
# $_.roles.id -contains 16 -or
# $_.roles.id -contains 25
}
$userIDs = $filteredUsers.user.id
$emailAddresses = @()
Write-Host $userIDs
foreach ($userID in $userIDs) {
$userUrl = "http://redmine/users/${userID}.json?key=946b8ee19b89bbe02b3ffd140eed83acd90b9724"
$userDetails = Invoke-RestMethod -Uri $userUrl -Method Get
$userData = $userDetails | ConvertTo-Json -Depth 100 | ConvertFrom-Json
$userEmail = $userData.user.mail
$emailAddresses += $userEmail
}
Write-Host $emailAddresses
$emailAddressesString = $emailAddresses -join ";"
Write-Host $emailAddressesString
Write-Host "##vso[task.setvariable variable=DevMembers;isOutput=true]$emailAddresses"
# Write-Output "##vso[task.setvariable variable=deploymentCounter;isOutput=true]1"
}catch {
Write-Host "Error: $_"
}
name: ProjectmembersDev
- job: waitForValidation
dependsOn: memberlist
displayName: Wait for Approval
pool: server
timeoutInMinutes: 4320
variables:
DevStageVar: $[dependencies.memberlist.outputs['ProjectmembersDev.DevMembers']]
steps:
- task: ManualValidation@0
timeoutInMinutes: 1440
inputs:
notifyUsers: |
$(DevStageVar)
******@email.com
******@email.com
******@email.com
instructions: 'Please validate the build configuration and resume'
onTimeout: 'reject'
condition: and(succeeded(), ne(variables['DevStageVar'], ''))
name: validation
above is my code for extracting mail IDs for respective projects and adding manual validation to notify users and try to send them mail.
I'm able to receive the mail but others who are not in the organization in azure project setting are not able to receive the mail.
suggest to me how can i tackle this issue.
Community Center | Not monitored
Community Center | Not monitored
Sign in to answer