You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This task aims to implement approval functionality within the Portal UI, enabling users to Approve or Reject approval tasks directly from the interface. This functionality is critical for streamlining the approval process in our deployment pipelines, particularly when using Tekton pipelines with custom tasks for deployment approvals.
{}Pre-requisites{}:
Deploy the environment with the latest Tekton pipeline using the 'deploy-with-approve' deployment template.
{}Technical Details{}:
It is essential to identify custom Tasks in the Tekton Pipeline, distinguishing between traditional and custom tasks based on their 'taskRef' properties.
The Portal UI should display "Approve" and "Reject" buttons for identified custom tasks. The exact location of these buttons within the UI needs discussion and finalization.
Upon user interaction (Approve/Reject), the Portal UI should modify the corresponding custom resource 'ApprovalTask' to reflect the user's decision. This modification is based on identifying the 'ApprovalTask' resource using labels.
The Portal UI successfully identifies custom tasks within Tekton Pipelines, specifically those marked as 'ApprovalTask'.
"Approve" and "Reject" buttons are correctly displayed within the Portal UI for each identified custom task.
User interactions with the "Approve" or "Reject" buttons appropriately modify the 'ApprovalTask' custom resource to reflect the chosen action.
The visual presentation and status of approval tasks within the Portal UI accurately reflect the current state of the task, derived from the 'CustomRun' resource.
Comprehensive documentation is provided detailing the implementation process, user interaction flow, and any necessary configuration steps.
This task aims to implement approval functionality within the Portal UI, enabling users to Approve or Reject approval tasks directly from the interface. This functionality is critical for streamlining the approval process in our deployment pipelines, particularly when using Tekton pipelines with custom tasks for deployment approvals.
{}Pre-requisites{}:
Deploy the environment with the latest Tekton pipeline using the 'deploy-with-approve' deployment template.
{}Technical Details{}:
spec.action set to: Approved/Rejected
{}Acceptance Criteria{}
Examples:
Pipeline:
ApprovalTask
apiVersion: edp.epam.com/v1alpha1
kind: ApprovalTask
metadata: creationTimestamp: '2024-08-29T16:00:49Z'
generation: 1
labels: tekton.dev/pipeline: deploy-with-approve
tekton.dev/pipelineRun: deploy-sktest-dev7njvq
tekton.dev/pipelineTask: promote-approve
managedFields: - apiVersion: edp.epam.com/v1alpha1
fieldsType: FieldsV1
fieldsV1:
f:metadata: f:labels: .: {}
f:tekton.dev/pipeline: {}
f:tekton.dev/pipelineRun: {}
f:tekton.dev/pipelineTask: {}
f:ownerReferences: .: {}
k:{"uid":"6b7032d6-7796-401c-9522-39b8fbab575e"}: {}
f:spec: .: {}
f:action: {}
f:description: {}
manager: manager
operation: Update
time: '2024-08-29T16:00:49Z'
name: deploy-sktest-dev7njvq-promote-approve-approval
namespace: edp-delivery-tekton-dev
ownerReferences: - apiVersion: tekton.dev/v1beta1
blockOwnerDeletion: true
controller: true
kind: CustomRun
name: deploy-sktest-dev7njvq-promote-approve
uid: 6b7032d6-7796-401c-9522-39b8fbab575e
resourceVersion: '1532494482'
uid: a67b6dd8-1902-4849-b153-557b6aec8290
selfLink: >-
/apis/edp.epam.com/v1alpha1/namespaces/edp-delivery-tekton-dev/approvaltasks/deploy-sktest-dev7njvq-promote-approve-approval
spec: action: Approved
description: Proceed
CustomRun
apiVersion: tekton.dev/v1beta1
kind: CustomRun
metadata: creationTimestamp: '2024-08-29T16:00:49Z'
generation: 1
labels: app.edp.epam.com/cdpipeline: sktest
app.edp.epam.com/cdstage: sktest-dev
app.edp.epam.com/pipelinetype: deploy
argocd.argoproj.io/instance-edp: edp-delivery_tekton-dev-edp-tekton
tekton.dev/memberOf: tasks
tekton.dev/pipeline: deploy-with-approve
tekton.dev/pipelineRun: deploy-sktest-dev7njvq
tekton.dev/pipelineTask: promote-approve
managedFields: - apiVersion: tekton.dev/v1beta1
fieldsType: FieldsV1
fieldsV1:
f:metadata: f:labels: .: {}
f:app.edp.epam.com/cdpipeline: {}
f:app.edp.epam.com/cdstage: {}
f:app.edp.epam.com/pipelinetype: {}
f:argocd.argoproj.io/instance-edp: {}
f:tekton.dev/memberOf: {}
f:tekton.dev/pipeline: {}
f:tekton.dev/pipelineRun: {}
f:tekton.dev/pipelineTask: {}
f:ownerReferences: .: {}
k:{"uid":"65faac81-2d60-486e-993e-1dbfde224228"}: {}
f:spec: .: {}
f:customRef: .: {}
f:apiVersion: {}
f:kind: {}
f:name: {}
f:serviceAccountName: {}
manager: controller
operation: Update
time: '2024-08-29T16:00:49Z'
- apiVersion: tekton.dev/v1beta1
fieldsType: FieldsV1
fieldsV1:
f:status: .: {}
f:completionTime: {}
f:conditions: {}
f:extraFields: {}
f:startTime: {}
manager: manager
operation: Update
subresource: status
time: '2024-08-29T16:03:29Z'
name: deploy-sktest-dev7njvq-promote-approve
namespace: edp-delivery-tekton-dev
ownerReferences: - apiVersion: tekton.dev/v1
blockOwnerDeletion: true
controller: true
kind: PipelineRun
name: deploy-sktest-dev7njvq
uid: 65faac81-2d60-486e-993e-1dbfde224228
resourceVersion: '1532498443'
uid: 6b7032d6-7796-401c-9522-39b8fbab575e
selfLink: >-
/apis/tekton.dev/v1beta1/namespaces/edp-delivery-tekton-dev/customruns/deploy-sktest-dev7njvq-promote-approve
status: completionTime: '2024-08-29T16:03:29Z'
conditions: - lastTransitionTime: '2024-08-29T16:03:29Z'
message: Pipeline run was approved
reason: Approved
status: 'True'
type: Succeeded
extraFields: null
startTime: '2024-08-29T16:00:49Z'
spec: customRef: apiVersion: edp.epam.com/v1alpha1
kind: ApprovalTask
name: promote-approve
serviceAccountName: tekton
test
The text was updated successfully, but these errors were encountered: