Tekton Integration
Integrating ReportPortal with Tekton centralizes the management of all automation outcomes and reports, enabling the visualization of metrics and analytics. This integration facilitates team collaboration by associating statistical results, enhancing the overall efficiency and insight into the automation processes.
For integration, take the following steps:
- 
Log in to the ReportPortal console and navigate to the User Profile menu:  
- 
Copy the Access token and use it as a value while creating a kubernetes secret for the ReportPortal credentials: apiVersion: v1
 kind: Secret
 type: Opaque
 metadata:
 name: rp-credentials
 namespace: krci
 stringData:
 rp_uuid: <access-token>
- 
In the Configuration examples section of the ReportPortal User Profile menu, copy the following REQUIREDfields:rp.endpoint,rp.launchandrp.project. Insert these fields to thepytest.inifile in root directory of your project:[pytest]
 addopts = -rsxX -l --tb=short --junitxml test-report.xml
 rp_endpoint = <endpoint>
 rp_launch = <launch>
 rp_project = <project>
- 
In root directory of the project create/update requirements.txt file and fill with following. It's mandatory to install report-portal python library (version may vary): pytest-reportportal == 5.1.2
- 
Create a custom Tekton task: View: Custom Tekton taskapiVersion: tekton.dev/v1beta1
 kind: Task
 metadata:
 labels:
 app.kubernetes.io/version: '0.1'
 name: pytest-reportportal
 namespace: krci
 spec:
 description: |-
 This task can be used to run pytest integrated with report portal.
 params:
 - default: .
 description: The path where package.json of the project is defined.
 name: PATH_CONTEXT
 type: string
 - name: EXTRA_COMMANDS
 type: string
 - default: python:3.8-alpine3.16
 description: The python image you want to use.
 name: BASE_IMAGE
 type: string
 - default: rp-credentials
 description: name of the secret holding the rp token
 name: rp-secret
 type: string
 steps:
 - env:
 - name: HOME
 value: $(workspaces.source.path)
 - name: RP_UUID
 valueFrom:
 secretKeyRef:
 key: rp_uuid
 name: $(params.rp-secret)
 image: $(params.BASE_IMAGE)
 name: pytest
 resources: {}
 script: >
 #!/usr/bin/env sh
 set -e
 export PATH=$PATH:$HOME/.local/bin
 $(params.EXTRA_COMMANDS)
 # tests are being run from ./test directory in the project
 pytest ./tests --reportportal
 workingDir: $(workspaces.source.path)/$(params.PATH_CONTEXT)
 workspaces:
 - name: source
- 
Add this task ref to your Tekton pipeline after tasks: View: Tekton pipeline- name: pytest
 params:
 - name: BASE_IMAGE
 value: $(params.image)
 - name: EXTRA_COMMANDS
 value: |
 set -ex
 pip3 install -r requirements.txt
 [ -f run_service.py ] && python run_service.py &
 runAfter:
 - compile
 taskRef:
 kind: Task
 name: pytest-reportportal
 workspaces:
 - name: source
 workspace: shared-workspace
- 
Launch your Tekton pipeline and check that the custom task has been successfully executed:  
- 
Test reports will be displayed in the Launches section of the ReportPortal: 