Graphql query for deployment approval summary
What does this MR do and why?
This MR extends GraphQL query for fetching approval details of a specific deployment. This query can be used in Environment Details page.
Related #367410 (closed) #371948 (closed) !100382 (closed)
Query example
{
project(fullPath: "dosuken-org/deployment-approval-test") {
deployment(iid: 1) {
approvalSummary {
totalRequiredApprovalCount
totalPendingApprovalCount
status
rules {
group {
name
}
user {
name
}
accessLevel {
stringValue
}
approvedCount
requiredApprovalCount
pendingApprovalCount
status
approvals {
user {
name
}
status
comment
createdAt
updatedAt
}
}
}
}
}
}
Response example
{
"project": {
"deployment": {
"approvalSummary": {
"totalRequiredApprovalCount": 2,
"totalPendingApprovalCount": 1,
"status": "PENDING_APPROVAL",
"rules": [
{
"group": { "name": "QA" },
"user": null,
"accessLevel": null,
"approvedCount": 0,
"requiredApprovalCount": 1,
"pendingApprovalCount": 1,
"status": "PENDING_APPROVAL",
"approvals": []
},
{
"group": null,
"user": null,
"accessLevel": { "stringValue": "MAINTAINER" },
"approvedCount": 1,
"requiredApprovalCount": 1,
"pendingApprovalCount": 0,
"status": "APPROVED",
"approvals": [
{
"user": { "name": "Sidney Jones4" },
"status": "APPROVED",
"comment": "Looks good to me!",
"createdAt": "2022-10-14T09:57:34Z",
"updatedAt": "2022-10-14T09:57:34Z"
}
]
}
]
}
}
}
}
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Shinya Maeda