Sub-pipeline example: Simple pipeline
Source code for this example.
- In the Radix application repository create a folder tekton. This folder need to be in the configuration branch and in the same folder, whereradixconfig.yamlfile is located - it is by default a root of the repository.
- The sub-pipeline in this example runs one task with a name hello. Create a filehello-task.yaml(file name can be arbitrary, file extension should beyaml). This task runs in the container with Alpine Linux and execute one commandecho "Hello".
apiVersion: tekton.dev/v1
kind: Task
metadata:
  name: hello
spec:
  steps:
    - name: say-hello
      image: alpine
      command:
        - echo "Hello"
- Create a file pipeline.yaml. Add a task in thetaskslist: give it a name (it can be any name, unique within this sub-pipeline), in the propertytaskRef("reference to a task") put the value from the propertymetadata.nameof the task, created above:
apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: pipeline-example
spec:
  tasks:
    - name: task-example-hello
      taskRef:
        name: hello
- File structure should be like this:
/
├── tekton/
│   ├── pipeline.yaml
│   └── hello-task.yaml
└── radixconfig.yaml
- Commit changes in the repository. Look at the details of a started Radix pipeline job (if the Radix app is connected to the GitHub WebHook, otherwise - start a job manually).
- Navigate to the Radix pipeline step "Run pipeline", when it is running or completed: the pipelines overview page shows a table with a list of sub-pipelines - in this example it is one sub-pipeline "pipeline-example", running for an environment "dev", and the sub-pipeline status.
 
- Navigate to the sub-pipeline (click on its name in the table row)
- The pipeline overview page shows a table with a list of this sub-pipeline's tasks - in this example it is one task "task-example-hello", and the task status.
 
- Navigate to the task (click on its name in the table row)
- The sub-pipeline task overview page shows a table with a list of this task's steps - in this example it is one step "say-hello", the step status and the step log: text "Hello", printed by the command echo "Hello"in the Linux container.