53 lines
1.3 KiB
YAML
53 lines
1.3 KiB
YAML
apiVersion: tekton.dev/v1beta1
|
|
kind: Task
|
|
metadata:
|
|
name: j7s-onedev-pr-review
|
|
namespace: j7s-ci
|
|
spec:
|
|
params:
|
|
- name: tekton-login-secret-name
|
|
- name: feedback-url
|
|
- name: pr-id
|
|
- name: run-name
|
|
- name: status
|
|
steps:
|
|
- image: 192.168.1.149:8443/curl:latest
|
|
script: |
|
|
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
STATUS=""
|
|
case "$(params.status)" in
|
|
"Succeeded" | "Completed")
|
|
echo "Build was successful!"
|
|
STATUS="Sucess! :) "
|
|
;;
|
|
"Failed" | "None")
|
|
STATUS="Error! :( "
|
|
;;
|
|
esac
|
|
|
|
# Make a comment on the PR.
|
|
cat <<EOF > comment.json
|
|
{
|
|
"userId": $TEKTON_USER_ID,
|
|
"requestId": $(params.pr-id),
|
|
"date": "`date +"%Y-%m-%dT%H:%M:%S%:z"`",
|
|
"content": "$STATUS Tekton run: $(params.run-name)."
|
|
}
|
|
EOF
|
|
curl -u tekton:$TEKTON_API_KEY \
|
|
-H "Content-Type: application/json" \
|
|
-d@comment.json \
|
|
$(params.feedback-url)/~api/pull-request-comments
|
|
env:
|
|
- name: TEKTON_API_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: $(params.tekton-login-secret-name)
|
|
key: accesstoken
|
|
- name: TEKTON_USER_ID
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: $(params.tekton-login-secret-name)
|
|
key: userid |