Centralize all the the git-clone apply commands we had around the
pre-apply-task-hook to a central common function.
This will make easier to have the same git-clone task version used everywhere.
Add some documentation about the helper functions along the way.
Signed-off-by: Chmouel Boudjnah <chmouel@redhat.com>
This will the fix the pytest and pylint task
which fails if run as non root user
in case of non-root user, it install at
location which is not in PATH of image
so adding the required PATH fix the issue
Boskos is a tool that allows one to create a pool of cloud projects
(definitely GCP, I think it supports other providers as well), and
manages acquiring, releasing, and cleaning them between leases.
We use it for Tekton test infrastructure for our end to end tests and
we'd like to use it for our catalog Tasks as well.
This commit adds boskos acquire and release Tasks.
The acquire Task also creates a pod in the running cluster to perform
heartbeating so that boskos knows that the resource is still in use.
The intention of the release Task is that it would be run in a
Pipeline's `finally` clause, however today that would be difficult
because finally Tasks can't yet use the results of other Tasks, but this
functionality is on the way: https://github.com/tektoncd/pipeline/issues/2557
This is part of the work in #373 to create a Pipeline for the catalog.
The following task can be used to run the shell command (single/multiple) on remote Host by SSHing into the remote machine by providing the required credentials required to
login into that Host and get back the result as output.
Signed-off-by: vinamra28 <vinjain@redhat.com>
As a user there are some instances where I need to use docker because there is a makefile/script that uses docker in a very niche way. A Tekton Task was added with a docker sidecar.
As part of #373 I'm continuing to create Tasks that we can use to run
tests for items in the catalog. This Task creates a cluster within a GKE
project and is based on the way we create clusters for the existing end
to end tests we have in Tekton, which are themselves based on Knative,
when are THEMselves based on k8s. These tests all use a tool called
kubetest, which is responsible for invoking boskos (see #408) and
creating a GKE cluster
(https://github.com/kubernetes/test-infra/tree/master/kubetest).
This Task attempts to create a cluster in the same way, which based on the
output in the end to end logs seems to consist of creating the cluster
and setting up a firewall for it.
I'm not sure if this belongs in the catalog itself since it is specific
to our own end to end tests and isn't as generic as other catalog tests,
so if we want to move this into the test directory that seems fine, but
I also think it could be an okay addition to the catalog on its own (esp
if other k8s based projects that test against GKE want to use it.)
- Override /tekton/home for the detect and build phases of the lifecycle to hide registry credentials from buildpack code.
- Run analyze, restore, and export in the lifecycle image published by buildpacksio to hide registry credentials from untrusted builders.
Signed-off-by: Natalie Arellano <narellano@vmware.com>
- Set HOME env to /workspace
- Use $HOME for "home" wherever possible
- Gradle: mount empty dir at ~/.gradle to make it globally writable
- Maven: script to `script:` to use "$HOME" variable
Additionally, remove commented out references to ADDITIONAL_TAGS; that will be added as a separate issue.
Signed-off-by: David Freilich <dfreilich@vmware.com>
With the release of Platform API 0.3 (implemented in github.com/buildpacks/lifecycle v0.7.0), there is a creator binary that simplifies the CNB experience; calling it runs all of the individual lifecycle phases, and minimizes the number of separate containers needed for the process. As such, we moved the buildpacks task to use it.
At the same time, it is also helpful, in some scenarios, to run the individual phases; it allows for greater control of secrets, amongst other things. As such, we moved the original task to buildpacks-separate-phases to allow users the choice.
This commit also updates the READMEs, making them a bit clearer about what CNBs are and what the tasks do, as well as adding in the Paketo builders to the example builders.
Signed-off-by: David Freilich <dfreilich@vmware.com>
The suffix v3 was a piece of buildpacks history, stemming from the initial start of the buildpacks concept, but isn't relevant to current consumers of the buildpacks task. To simplify it, and to fit with other task styles, we are removing v3
Additionally, we are updating the list of suggested builders, to reflect the current status of pack builders. NOTE: Paketo builders currently have a bug and don't work in Tekton, and until that issue is resolved, we aren't adding them in the list.
Signed-off-by: David Freilich <dfreilich@vmware.com>
The task `kubectl-actions` is a generic task which can be used to perform k8s-actions. We take the whole script as a `params` whereas the existing task `kubectl-deploy` only works for deploying the pod and fulfills the specific criteria.
Signed-off-by: vinamra28 <vinjain@redhat.com>
- Update the pipeline to install for e2e tests
- Update images to refer to 0.14.0 version of pipeline
Signed-off-by: Vincent Demeester <vdemeest@redhat.com>
Since skopeo has started providing their official image and the image would be updated regularly so changing the skopeo-copy task image so that it can use the official one from now on.
Signed-off-by: vinamra28 <vinjain@redhat.com>
We don't really have a concept in Tekton of something called a "Workspace volume",
but multiple READMEs now refer to it.
This commit removes the term "Workspace volume" in favor of simply "Workspace".