|
| 1 | +--- |
| 2 | +apiVersion: tekton.dev/v1beta1 |
| 3 | +kind: TriggerTemplate |
| 4 | +args: [--allow-multiple-documents] |
| 5 | +metadata: |
| 6 | + name: triggertemplate-git-pr-status |
| 7 | +spec: |
| 8 | + params: |
| 9 | + - name: git-access-token |
| 10 | + description: the token to access the git repository for the clone operations |
| 11 | + - name: repository |
| 12 | + description: The git repo |
| 13 | + default: " " |
| 14 | + - name: branch |
| 15 | + description: the branch for the git repo |
| 16 | + - name: directory-name |
| 17 | + default: "." |
| 18 | + - name: pr-repository |
| 19 | + description: The source git repo for the PullRequest |
| 20 | + default: " " |
| 21 | + - name: pr-branch |
| 22 | + description: The source branch for the PullRequest |
| 23 | + default: " " |
| 24 | + - name: pr-revision |
| 25 | + description: the commit id/sha for the PullRequest |
| 26 | + default: " " |
| 27 | + - name: triggerName |
| 28 | + default: "git-pr-process" |
| 29 | + - name: pipeline-debug |
| 30 | + default: "0" |
| 31 | + - name: ssh_keys |
| 32 | + default: "" |
| 33 | + description: List of names of the SSH keys that is configured in your IBM Cloud account, used to establish a connection to the IBM Cloud HPC bastion and login node. Ensure that the SSH key is present in the same resource group and region where the cluster is being provisioned. If you do not have an SSH key in your IBM Cloud account, create one by according to [SSH Keys](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys). |
| 34 | + - name: zones |
| 35 | + default: "" |
| 36 | + description: IBM Cloud zone names within the selected region where the IBM Cloud HPC cluster should be deployed. Two zone names are required as input value and supported zones for eu-de are eu-de-2, eu-de-3 and for us-east us-east-1, us-east-3. The management nodes and file storage shares will be deployed to the first zone in the list. Compute nodes will be deployed across both first and second zones, where the first zone in the list will be considered as the most preferred zone for compute nodes deployment. [Learn more](https://cloud.ibm.com/docs/vpc?topic=vpc-creating-a-vpc-in-a-different-region#get-zones-using-the-cli). |
| 37 | + - name: cluster_prefix |
| 38 | + description: Prefix that is used to name the IBM Cloud HPC cluster and IBM Cloud resources that are provisioned to build the IBM Cloud HPC cluster instance. You cannot create more than one instance of the IBM Cloud HPC cluster with the same name. Ensure that the name is unique. |
| 39 | + default: cicd-wes |
| 40 | + - name: resource_group |
| 41 | + description: Resource group name from your IBM Cloud account where the VPC resources should be deployed. Note. If the resource group value is set as null, automation creates two different RG with the name (workload-rg and service-rg). For additional information on resource groups, see [Managing resource groups](https://cloud.ibm.com/docs/account?topic=account-rgs). |
| 42 | + default: Default |
| 43 | + - name: remote_allowed_ips |
| 44 | + default: "" |
| 45 | + description: Comma-separated list of IP addresses that can access the IBM Cloud HPC cluster instance through an SSH interface. For security purposes, provide the public IP addresses assigned to the devices that are authorized to establish SSH connections (for example, [\"169.45.117.34\"]). To fetch the IP address of the device, use [https://ipv4.icanhazip.com/](https://ipv4.icanhazip.com/). |
| 46 | + - name: compute_image_name_rhel |
| 47 | + description: Name of the custom image that you want to use to create virtual server instances in your IBM Cloud account to deploy the IBM Cloud HPC cluster dynamic compute nodes. By default, the solution uses a RHEL 8-6 OS image with additional software packages mentioned [here](https://cloud.ibm.com/docs/hpc-spectrum-LSF#create-custom-image). The solution also offers, Ubuntu 22-04 OS base image (hpcaas-lsf10-ubuntu2204-compute-v1). If you would like to include your application-specific binary files, follow the instructions in [ Planning for custom images ](https://cloud.ibm.com/docs/vpc?topic=vpc-planning-custom-images) to create your own custom image and use that to build the IBM Cloud HPC cluster through this offering. |
| 48 | + default: "" |
| 49 | + - name: compute_image_name_ubuntu |
| 50 | + description: Name of the custom image that you want to use to create virtual server instances in your IBM Cloud account to deploy the IBM Cloud HPC cluster dynamic compute nodes. By default, the solution uses a RHEL 8-6 OS image with additional software packages mentioned [here](https://cloud.ibm.com/docs/hpc-spectrum-LSF#create-custom-image). The solution also offers, Ubuntu 22-04 OS base image (hpcaas-lsf10-ubuntu2204-compute-v1). If you would like to include your application-specific binary files, follow the instructions in [ Planning for custom images ](https://cloud.ibm.com/docs/vpc?topic=vpc-planning-custom-images) to create your own custom image and use that to build the IBM Cloud HPC cluster through this offering. |
| 51 | + default: "" |
| 52 | + - name: login_image_name |
| 53 | + description: Name of the custom image that you want to use to create virtual server instances in your IBM Cloud account to deploy the IBM Cloud HPC cluster login node. By default, the solution uses a RHEL 8-6 OS image with additional software packages mentioned [here](https://cloud.ibm.com/docs/hpc-spectrum-LSF#create-custom-image). The solution also offers, Ubuntu 22-04 OS base image (hpcaas-lsf10-ubuntu2204-compute-v2). If you would like to include your application-specific binary files, follow the instructions in [ Planning for custom images ](https://cloud.ibm.com/docs/vpc?topic=vpc-planning-custom-images) to create your own custom image and use that to build the IBM Cloud HPC cluster through this offering. |
| 54 | + default: "" |
| 55 | + - name: cluster_id |
| 56 | + description: Ensure that you have received the cluster ID from IBM technical sales. A unique identifer for HPC cluster used by IBM Cloud HPC to differentiate different HPC clusters within the same reservation. This can be up to 39 alphanumeric characters including the underscore (_), the hyphen (-), and the period (.) characters. You cannot change the cluster ID after deployment. |
| 57 | + default: "" |
| 58 | + - name: reservation_id |
| 59 | + description: Ensure that you have received the reservation ID from IBM technical sales. Reservation ID is a unique identifier to distinguish different IBM Cloud HPC service agreements. It must start with a letter and can only contain letters, numbers, hyphens (-), or underscores (_). |
| 60 | + default: "" |
| 61 | + - name: us_east_reservation_id |
| 62 | + description: Ensure that you have received the reservation ID from IBM technical sales. Reservation ID is a unique identifier to distinguish different IBM Cloud HPC service agreements. It must start with a letter and can only contain letters, numbers, hyphens (-), or underscores (_). |
| 63 | + default: "" |
| 64 | + - name: eu_de_reservation_id |
| 65 | + description: Ensure that you have received the reservation ID from IBM technical sales. Reservation ID is a unique identifier to distinguish different IBM Cloud HPC service agreements. It must start with a letter and can only contain letters, numbers, hyphens (-), or underscores (_). |
| 66 | + default: "" |
| 67 | + - name: us_south_reservation_id |
| 68 | + description: Ensure that you have received the reservation ID from IBM technical sales. Reservation ID is a unique identifier to distinguish different IBM Cloud HPC service agreements. It must start with a letter and can only contain letters, numbers, hyphens (-), or underscores (_). |
| 69 | + default: "" |
| 70 | + resourcetemplates: |
| 71 | + - apiVersion: v1 |
| 72 | + kind: PersistentVolumeClaim |
| 73 | + metadata: |
| 74 | + name: $(params.triggerName)-$(uid)-pvc |
| 75 | + spec: |
| 76 | + resources: |
| 77 | + requests: |
| 78 | + storage: 5Gi |
| 79 | + volumeMode: Filesystem |
| 80 | + accessModes: |
| 81 | + - ReadWriteOnce |
| 82 | + - apiVersion: tekton.dev/v1beta1 |
| 83 | + kind: PipelineRun |
| 84 | + metadata: |
| 85 | + name: $(params.triggerName)-$(uid) |
| 86 | + spec: |
| 87 | + pipelineRef: |
| 88 | + name: pipeline-git-pr-status |
| 89 | + params: |
| 90 | + - name: git-access-token |
| 91 | + value: $(params.git-access-token) |
| 92 | + - name: repository |
| 93 | + value: $(params.repository) |
| 94 | + - name: branch |
| 95 | + value: $(params.branch) |
| 96 | + - name: pr-repository |
| 97 | + value: $(params.pr-repository) |
| 98 | + - name: pr-branch |
| 99 | + value: $(params.pr-branch) |
| 100 | + - name: pr-revision |
| 101 | + value: $(params.pr-revision) |
| 102 | + - name: pipeline-debug |
| 103 | + value: $(params.pipeline-debug) |
| 104 | + - name: directory-name |
| 105 | + value: $(params.directory-name) |
| 106 | + - name: ssh_keys |
| 107 | + value: $(params.ssh_keys) |
| 108 | + - name: zones |
| 109 | + value: $(params.zones) |
| 110 | + - name: cluster_prefix |
| 111 | + value: $(params.cluster_prefix) |
| 112 | + - name: resource_group |
| 113 | + value: $(params.resource_group) |
| 114 | + - name: remote_allowed_ips |
| 115 | + value: $(params.remote_allowed_ips) |
| 116 | + - name: compute_image_name_rhel |
| 117 | + value: $(params.compute_image_name_rhel) |
| 118 | + - name: compute_image_name_ubuntu |
| 119 | + value: $(params.compute_image_name_ubuntu) |
| 120 | + - name: login_image_name |
| 121 | + value: $(params.login_image_name) |
| 122 | + - name: cluster_id |
| 123 | + value: $(params.cluster_id) |
| 124 | + - name: reservation_id |
| 125 | + value: $(params.reservation_id) |
| 126 | + - name: us_east_reservation_id |
| 127 | + value: $(params.us_east_reservation_id) |
| 128 | + - name: eu_de_reservation_id |
| 129 | + value: $(params.eu_de_reservation_id) |
| 130 | + - name: us_south_reservation_id |
| 131 | + value: $(params.us_south_reservation_id) |
| 132 | + workspaces: |
| 133 | + - name: pipeline-ws |
| 134 | + persistentVolumeClaim: |
| 135 | + claimName: $(params.triggerName)-$(uid)-pvc |
| 136 | +... |
| 137 | + |
| 138 | +--- |
| 139 | +apiVersion: tekton.dev/v1beta1 |
| 140 | +kind: TriggerBinding |
| 141 | +metadata: |
| 142 | + name: triggerbinding-git-pr-status-github-pr |
| 143 | +spec: |
| 144 | + params: |
| 145 | + - name: repository |
| 146 | + value: "$(event.pull_request.base.repo.clone_url)" |
| 147 | + - name: branch |
| 148 | + value: "$(event.pull_request.base.ref)" |
| 149 | + - name: pr-repository |
| 150 | + value: "$(event.pull_request.head.repo.clone_url)" |
| 151 | + - name: pr-branch |
| 152 | + value: "$(event.pull_request.head.ref)" |
| 153 | + - name: pr-revision |
| 154 | + value: "$(event.pull_request.head.sha)" |
| 155 | + - name: triggerName |
| 156 | + value: "github-pullrequest" |
| 157 | +... |
| 158 | + |
| 159 | +--- |
| 160 | +apiVersion: tekton.dev/v1beta1 |
| 161 | +kind: EventListener |
| 162 | +metadata: |
| 163 | + name: eventlistener-git-pr-status-github-pr |
| 164 | +spec: |
| 165 | + triggers: |
| 166 | + - binding: |
| 167 | + name: triggerbinding-git-pr-status-github-pr |
| 168 | + template: |
| 169 | + name: triggertemplate-git-pr-status |
| 170 | +... |
0 commit comments