1
0
mirror of https://github.com/tektoncd/catalog.git synced 2024-11-24 06:15:46 +00:00
catalog/curl
yuege01 8b39de7030 squash all commits of curl task
create curl task to request response from internet

Add a readme file to specify how to run curl task

Modify parts of the readme file

create two simple taskruns to test curl

change spec for url value

change spec to re-push

change image place to be param

users now can pin the version of image as they want

Add a new param

add a curl image option so users now can use different version of curl image at will

update readme file on param description
2020-06-16 06:57:56 +01:00
..
tests squash all commits of curl task 2020-06-16 06:57:56 +01:00
curl.yaml squash all commits of curl task 2020-06-16 06:57:56 +01:00
README.md squash all commits of curl task 2020-06-16 06:57:56 +01:00

curl

This task performs curl operation to transfer data from internet .

Install the Task

kubectl apply -f https://raw.githubusercontent.com/tektoncd/catalog/v1beta1/curl/curl.yaml

Parameters

  • options: The arguments to pass to curl CLI. default: [""]
  • url: The url we want to download file from, required field.
  • curl-image: The curl docker image to be used. Defaults to curlimages/curl.

Usage

Running the Task

Viewing request headers and connection details

You can invoke curl -i url to get request header from specified url:

Create a file, curl-header-run.yaml:

apiVersion: tekton.dev/v1beta1
kind: TaskRun
metadata:
  name: curl-header-run
spec:
  params:
    - name: url
      value: "www.google.com"
    - name: options
      value:
       - "-i"
  taskRef:
    name: curl

Run it with kubectl apply -f curl-header-run.yaml

When this runs, it will print logs containing only headers of the response

View full response from request to specified url

You can invoke curl url to get a full response from specified url:

Create a file, curl-reponse-run.yaml:

apiVersion: tekton.dev/v1beta1
kind: TaskRun
metadata:
  name: curl-response-run
spec:
  params:
    - name: url
      value: "www.google.com"
  taskRef:
    name: curl

Run it with kubectl apply -f curl-response-run.yaml

When this runs, it will print logs containing full response fields of the request

Use a different version of curl image

You can invoke curl url to get a full response from specified url while specifying a different image in taskrun:

Create a file, curl-diffimage-run.yaml:

apiVersion: tekton.dev/v1beta1
kind: TaskRun
metadata:
  name: curl-diffimage-run
spec:
  params:
    - name: url
      value: "www.google.com"
    - name: curl-image
      value: "appropriate/curl"
  taskRef:
    name: curl

Run it with kubectl apply -f curl-diffimage-run.yaml

When this runs, it will print logs containing full response fields of the request as in the last example, but now uses a different version of image