Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create Task for Tekton Pipeline unit tests #532

Closed
bobcatfish opened this issue Feb 21, 2019 · 1 comment · Fixed by #949 or tektoncd/catalog#43
Closed

Create Task for Tekton Pipeline unit tests #532

bobcatfish opened this issue Feb 21, 2019 · 1 comment · Fixed by #949 or tektoncd/catalog#43
Assignees
Labels
area/yamls This issue involves writing a lot of yaml

Comments

@bobcatfish
Copy link
Collaborator

bobcatfish commented Feb 21, 2019

Expected Behavior

We should be testing and releasing Pipelines with Pipelines.

We should have a Task (and related Resources) defined that we can use to

The Task

  • PR to update the checks of

(Can decide to make this a generalized "run go tests" task, or can make it Tekton repo specific)

Actual Behavior

We currently use prow and presubmit tests (i think?) to run unit tests.

Additional Info

  • Actually triggering this is not in scope for this issue, it's fine to test manually (we'll be linking these together in a later issue)
@bobcatfish bobcatfish added area/yamls This issue involves writing a lot of yaml okr This is for some internal Google project tracking and removed okr This is for some internal Google project tracking labels Feb 21, 2019
bobcatfish added a commit to bobcatfish/pipeline that referenced this issue Mar 19, 2019
Add a `Task` which invokes `ko` to build and publish all images and yaml
config required for installing Tekton Pipelines.

This Task will:
* Build and publish the "base image" using Kaniko
* Generate a .ko.yaml
* Invoke ko to build/publish images and generate a release.yaml
* Parse the release.yaml for built images; ensuring that the expected
  images were built (and no more)
* Tag the built images with the correct version and also tag in all
  regions (us, asia, eu)

This should be the same functionality that could previously be seen in
https://github.com/tektoncd/pipeline/blob/master/hack/release.sh
(which used
https://github.com/knative/test-infra/blob/master/scripts/release.sh).
We can remove release.sh once we have completed tektoncd#530 as well.

Some functionality has been implemented in a python script, which has
its own tests. Since it is currently difficult to update the pull
request test logic to do additional things (such as run python unit
tests), I'm hoping we are okay with waiting until tektoncd#532 to add
automatic running of these tests).

Fixes tektoncd#528
Fixes tektoncd#529
bobcatfish added a commit to bobcatfish/pipeline that referenced this issue Mar 19, 2019
Add a `Task` which invokes `ko` to build and publish all images and yaml
config required for installing Tekton Pipelines.

This Task will:
* Build and publish the "base image" using Kaniko
* Generate a .ko.yaml
* Invoke ko to build/publish images and generate a release.yaml
* Parse the release.yaml for built images; ensuring that the expected
  images were built (and no more)
* Tag the built images with the correct version and also tag in all
  regions (us, asia, eu)

This should be the same functionality that could previously be seen in
https://github.com/tektoncd/pipeline/blob/master/hack/release.sh
(which used
https://github.com/knative/test-infra/blob/master/scripts/release.sh).
We can remove release.sh once we have completed tektoncd#530 as well.

Some functionality has been implemented in a python script, which has
its own tests. Since it is currently difficult to update the pull
request test logic to do additional things (such as run python unit
tests), I'm hoping we are okay with waiting until tektoncd#532 to add
automatic running of these tests).

Fixes tektoncd#528
Fixes tektoncd#529
bobcatfish added a commit to bobcatfish/pipeline that referenced this issue Mar 19, 2019
Add a `Task` which invokes `ko` to build and publish all images and yaml
config required for installing Tekton Pipelines.

This Task will:
* Build and publish the "base image" using Kaniko
* Generate a .ko.yaml
* Invoke ko to build/publish images and generate a release.yaml
* Parse the release.yaml for built images; ensuring that the expected
  images were built (and no more)
* Tag the built images with the correct version and also tag in all
  regions (us, asia, eu)

This should be the same functionality that could previously be seen in
https://github.com/tektoncd/pipeline/blob/master/hack/release.sh
(which used
https://github.com/knative/test-infra/blob/master/scripts/release.sh).
We can remove release.sh once we have completed tektoncd#530 as well.

Some functionality has been implemented in a python script, which has
its own tests. Since it is currently difficult to update the pull
request test logic to do additional things (such as run python unit
tests), I'm hoping we are okay with waiting until tektoncd#532 to add
automatic running of these tests).

Fixes tektoncd#528
Fixes tektoncd#529
bobcatfish added a commit to bobcatfish/pipeline that referenced this issue Mar 19, 2019
Add a `Task` which invokes `ko` to build and publish all images and yaml
config required for installing Tekton Pipelines.

This Task will:
* Build and publish the "base image" using Kaniko
* Generate a .ko.yaml
* Invoke ko to build/publish images and generate a release.yaml
* Parse the release.yaml for built images; ensuring that the expected
  images were built (and no more)
* Tag the built images with the correct version and also tag in all
  regions (us, asia, eu)

This should be the same functionality that could previously be seen in
https://github.com/tektoncd/pipeline/blob/master/hack/release.sh
(which used
https://github.com/knative/test-infra/blob/master/scripts/release.sh).
We can remove release.sh once we have completed tektoncd#530 as well.

Some functionality has been implemented in a python script, which has
its own tests. Since it is currently difficult to update the pull
request test logic to do additional things (such as run python unit
tests), I'm hoping we are okay with waiting until tektoncd#532 to add
automatic running of these tests).

Fixes tektoncd#528
Fixes tektoncd#529
bobcatfish added a commit to bobcatfish/pipeline that referenced this issue Mar 20, 2019
Add a `Task` which invokes `ko` to build and publish all images and yaml
config required for installing Tekton Pipelines.

This Task will:
* Build and publish the "base image" using Kaniko
* Generate a .ko.yaml
* Invoke ko to build/publish images and generate a release.yaml
* Parse the release.yaml for built images; ensuring that the expected
  images were built (and no more)
* Tag the built images with the correct version and also tag in all
  regions (us, asia, eu)

This should be the same functionality that could previously be seen in
https://github.com/tektoncd/pipeline/blob/master/hack/release.sh
(which used
https://github.com/knative/test-infra/blob/master/scripts/release.sh).
We can remove release.sh once we have completed tektoncd#530 as well.

Some functionality has been implemented in a python script, which has
its own tests. Since it is currently difficult to update the pull
request test logic to do additional things (such as run python unit
tests), I'm hoping we are okay with waiting until tektoncd#532 to add
automatic running of these tests).

Fixes tektoncd#528
Fixes tektoncd#529
bobcatfish added a commit to bobcatfish/pipeline that referenced this issue Mar 20, 2019
Add a `Task` which invokes `ko` to build and publish all images and yaml
config required for installing Tekton Pipelines.

This Task will:
* Build and publish the "base image" using Kaniko
* Generate a .ko.yaml
* Invoke ko to build/publish images and generate a release.yaml
* Parse the release.yaml for built images; ensuring that the expected
  images were built (and no more)
* Tag the built images with the correct version and also tag in all
  regions (us, asia, eu)

This should be the same functionality that could previously be seen in
https://github.com/tektoncd/pipeline/blob/master/hack/release.sh
(which used
https://github.com/knative/test-infra/blob/master/scripts/release.sh).
We can remove release.sh once we have completed tektoncd#530 as well.

Some functionality has been implemented in a python script, which has
its own tests. Since it is currently difficult to update the pull
request test logic to do additional things (such as run python unit
tests), I'm hoping we are okay with waiting until tektoncd#532 to add
automatic running of these tests).

Use actual production bucket and registry by default (tektoncd#527)

Fixes tektoncd#528
Fixes tektoncd#529
bobcatfish added a commit to bobcatfish/pipeline that referenced this issue Mar 20, 2019
Add a `Task` which invokes `ko` to build and publish all images and yaml
config required for installing Tekton Pipelines.

This Task will:
* Build and publish the "base image" using Kaniko
* Generate a .ko.yaml
* Invoke ko to build/publish images and generate a release.yaml
* Parse the release.yaml for built images; ensuring that the expected
  images were built (and no more)
* Tag the built images with the correct version and also tag in all
  regions (us, asia, eu)

This should be the same functionality that could previously be seen in
https://github.com/tektoncd/pipeline/blob/master/hack/release.sh
(which used
https://github.com/knative/test-infra/blob/master/scripts/release.sh).
We can remove release.sh once we have completed tektoncd#530 as well.

Some functionality has been implemented in a python script, which has
its own tests. Since it is currently difficult to update the pull
request test logic to do additional things (such as run python unit
tests), I'm hoping we are okay with waiting until tektoncd#532 to add
automatic running of these tests).

Use actual production bucket and registry by default (tektoncd#527)

Fixes tektoncd#528
Fixes tektoncd#529
tekton-robot pushed a commit that referenced this issue Mar 22, 2019
Add a `Task` which invokes `ko` to build and publish all images and yaml
config required for installing Tekton Pipelines.

This Task will:
* Build and publish the "base image" using Kaniko
* Generate a .ko.yaml
* Invoke ko to build/publish images and generate a release.yaml
* Parse the release.yaml for built images; ensuring that the expected
  images were built (and no more)
* Tag the built images with the correct version and also tag in all
  regions (us, asia, eu)

This should be the same functionality that could previously be seen in
https://github.com/tektoncd/pipeline/blob/master/hack/release.sh
(which used
https://github.com/knative/test-infra/blob/master/scripts/release.sh).
We can remove release.sh once we have completed #530 as well.

Some functionality has been implemented in a python script, which has
its own tests. Since it is currently difficult to update the pull
request test logic to do additional things (such as run python unit
tests), I'm hoping we are okay with waiting until #532 to add
automatic running of these tests).

Use actual production bucket and registry by default (#527)

Fixes #528
Fixes #529
bobcatfish added a commit to bobcatfish/pipeline that referenced this issue May 6, 2019
The token is currently hardcoded which is probably terrible but
only viable alternatives I can think of are
to hardcode it in tektoncd/plumbing, which doesn't seem much better, or to put it into
a secret in the Prow cluster, which we could do later if this becomes a problem

I am not 100% sure if this will work with the existing knative bash
scripts, really looking forward to tektoncd#532

These commands worked when run locally, except the generated deepcopy
file was included in the coverage reporting. No matter what I did to try
to exclude it (https://docs.codecov.io/docs/ignoring-paths) I couldn't
make it work, so putting that aside for now (and continuing to try to
chip away at it in tektoncd#834)
bobcatfish added a commit to bobcatfish/pipeline that referenced this issue May 6, 2019
The token is currently hardcoded which is probably terrible but
only viable alternatives I can think of are
to hardcode it in tektoncd/plumbing, which doesn't seem much better, or to put it into
a secret in the Prow cluster, which we could do later if this becomes a problem

I am not 100% sure if this will work with the existing knative bash
scripts, really looking forward to tektoncd#532

These commands worked when run locally, except the generated deepcopy
file was included in the coverage reporting. No matter what I did to try
to exclude it (https://docs.codecov.io/docs/ignoring-paths) I couldn't
make it work, so putting that aside for now (and continuing to try to
chip away at it in tektoncd#834)
@vdemeester vdemeester added this to the Pipelines 0.5 🐱 milestone May 29, 2019
@vdemeester
Copy link
Member

/assign

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/yamls This issue involves writing a lot of yaml
Projects
None yet
2 participants