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

Add automation for all tektoncd repos #3

Closed
10 tasks done
bobcatfish opened this issue Apr 23, 2019 · 9 comments
Closed
10 tasks done

Add automation for all tektoncd repos #3

bobcatfish opened this issue Apr 23, 2019 · 9 comments
Assignees

Comments

@bobcatfish
Copy link
Contributor

bobcatfish commented Apr 23, 2019

Expected Behavior

All of the repos in tektoncd should have a minimum of prow automation applied.

We should have tide automation for:

  • plumbing
  • dashboard
  • cli
  • experimental (OWNERS files in each subdir)
  • website
  • catalog

We should add unit test support for:

Unit test support is going to be interesting, the easiest way to add this initially is probably to copy-paste the prow jobs as is and add exactly the script the knative-tests image expects:

plumbing/prow/config.yaml

Lines 107 to 108 in 2ff5265

- "./test/presubmit-tests.sh"
- "--unit-tests"

OR we could be adventurous and try using our own script.

OR be very adventurous and try our own image.

Actual Behavior

Pipelines has all the bells and whistles, the rest of the projects seem to have only a random smattering (e.g. community has tide merging, but this repo doesn't).

Additional Info

  • Each project may decide to add additional automation (e.g. integration tests, coverage) which is totally cool, hopefully setting up a minimum should give them a starting point.
  • The work to do here is basically copy paste in the prow config to copy the unit-test section from pipelines and duplicate it for the other repos.
bobcatfish added a commit to bobcatfish/plumbing that referenced this issue Apr 23, 2019
Before this change only `community` and `pipeline` had automatic tide
merging via Prow. Now all of the existing repos will have it.

Partially addresses tektoncd#3

(Also simplified the config, looking at the knative config as an example
https://github.com/knative/test-infra/blob/691caf51f2bb9ef86888772a8cc5d7952687b7c6/ci/prow/config.yaml#L51-L65
it looks like we can use the same stanza for multiple repos)
@bobcatfish
Copy link
Contributor Author

I also had to add branch protection rules to all the repos to make sure the tide check was required. Will need to back and add a requirement about the tide clause to repos that didn't have any open PRs:

  • experimental
  • website
  • cli

@vdemeester
Copy link
Member

/assign

@vdemeester
Copy link
Member

@bobcatfish updated the requirements for tide (dashboard, cli and experimental) and builds checks for dashboard and cli. (website needs at least a PR before we can see the check 😅 )

For experimental, I was wondering how should be do that 🤔 each time a folder is created, we create a configuration here ? 🤔

@vdemeester
Copy link
Member

Also, the merging options are all the same (as tektoncd/pipeline).

2019-04-24-175300

@bobcatfish
Copy link
Contributor Author

For experimental, I was wondering how should be do that 🤔 each time a folder is created, we create a configuration here ? 🤔

A couple ideas:

  • Have a top level script that looks for scripts in all subdirs
  • Have a different prowjob for each folder (probably a bad idea)

Another issue is that when code in a dir changes, we probably want to only run the tests for that dir - but we can always deal with this iteratively XD

bobcatfish added a commit to bobcatfish/experimental that referenced this issue Apr 29, 2019
Add basic docs as specified at https://github.com/tektoncd/community/blob/master/process.md#project-requirements.

Note that a lot of the specifics about contributing and development
hinge on us fleshing out support for experimental projects, something
partially captured in tektoncd/plumbing#3.
bobcatfish added a commit to bobcatfish/experimental that referenced this issue Apr 29, 2019
Add basic docs as specified at https://github.com/tektoncd/community/blob/master/process.md#project-requirements.

Note that a lot of the specifics about contributing and development
hinge on us fleshing out support for experimental projects, something
partially captured in tektoncd/plumbing#3.
tekton-robot pushed a commit to tektoncd/experimental that referenced this issue Apr 30, 2019
Add basic docs as specified at https://github.com/tektoncd/community/blob/master/process.md#project-requirements.

Note that a lot of the specifics about contributing and development
hinge on us fleshing out support for experimental projects, something
partially captured in tektoncd/plumbing#3.
@bobcatfish bobcatfish added this to the Pipelines 0.5 🐱 milestone May 28, 2019
@vdemeester
Copy link
Member

Once #37 is in, I think we can close this one 👼 🎉
Automation of tektoncd/plumbing itself is tracked by #1

@vdemeester
Copy link
Member

#37 is merged 💃
/close

@tekton-robot
Copy link
Contributor

@vdemeester: Closing this issue.

In response to this:

#37 is merged 💃
/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@bobcatfish
Copy link
Contributor Author

Thanks @vdemeester !!!! ❤️ ❤️ ❤️

QuanZhang-William added a commit to QuanZhang-William/plumbing that referenced this issue Jan 16, 2023
Part of [tektoncd-catalog#3][tektoncd#3]. This commit adds the `tektoncd-catalog` org to the `orgs` parameter of label syncer so that the `tektoncd-catalog` org can automatically maintain the labels as `tektoncd`. There is no change to the `labels.yaml` file itself.

[tektoncd#3]: tektoncd-catalog/.github#3
tekton-robot pushed a commit that referenced this issue Jan 17, 2023
Part of [tektoncd-catalog#3][#3]. This commit adds the `tektoncd-catalog` org to the `orgs` parameter of label syncer so that the `tektoncd-catalog` org can automatically maintain the labels as `tektoncd`. There is no change to the `labels.yaml` file itself.

[#3]: tektoncd-catalog/.github#3
QuanZhang-William added a commit to QuanZhang-William/plumbing that referenced this issue Jan 26, 2023
Part of [Verified Catalog Migration][tektoncd#3]. This commit adds a new script containing the common helper script code for [Verified Catalogs][Verified Catalog].

The content is based on: https://github.com/tektoncd/catalog/blob/main/test/e2e-common.sh, with improvements/refactoring for the new catalog git-based versioning and decentralized-repo model contracts.

The script supports both on PR merge integration test and nightly integration tests, specified by `TEST_RUN_NIGHTLY_TESTS` env variable.

In nightly test, the script runs test cases in all release of the catalog.
In on-PR-merge test, the script runs test cases in the branch head.

An e2e use example can found in: https://github.com/QuanZhang-William/golang/tree/test-pipelines.

[tektoncd#3]: tektoncd-catalog/.github#3
[Verified Catalog]: https://github.com/tektoncd-catalog
QuanZhang-William added a commit to QuanZhang-William/plumbing that referenced this issue Jan 26, 2023
Part of [Verified Catalog Migration][tektoncd#3]. This commit adds a new script containing the common helper script code for [Verified Catalogs][Verified Catalog].

The content is based on: https://github.com/tektoncd/catalog/blob/main/test/e2e-common.sh, with improvements/refactoring for the new catalog git-based versioning and decentralized-repo model contracts.

The script supports both on PR merge integration test and nightly integration tests, specified by `TEST_RUN_NIGHTLY_TESTS` env variable.

In nightly test, the script runs test cases in all release of the catalog.
In on-PR-merge test, the script runs test cases in the branch head.

An e2e use example can found in: https://github.com/QuanZhang-William/golang/tree/test-pipelines.

[tektoncd#3]: tektoncd-catalog/.github#3
[Verified Catalog]: https://github.com/tektoncd-catalog
QuanZhang-William added a commit to QuanZhang-William/plumbing that referenced this issue Jan 26, 2023
Part of [Verified Catalog Migration][tektoncd#3]. This commit adds a new script containing the common helper script code for [Verified Catalogs][Verified Catalog].

The content is based on: https://github.com/tektoncd/catalog/blob/main/test/e2e-common.sh, with improvements/refactoring for the new catalog git-based versioning and decentralized-repo model contracts.

The script supports both on PR merge integration test and nightly integration tests, specified by `TEST_RUN_NIGHTLY_TESTS` env variable.

In nightly test, the script runs test cases in all release of the catalog.
In on-PR-merge test, the script runs test cases in the branch head.

An e2e use example can found in: https://github.com/QuanZhang-William/golang/tree/test-pipelines.

[tektoncd#3]: tektoncd-catalog/.github#3
[Verified Catalog]: https://github.com/tektoncd-catalog
tekton-robot pushed a commit that referenced this issue Jan 31, 2023
Part of [Verified Catalog Migration][#3]. This commit adds a new script containing the common helper script code for [Verified Catalogs][Verified Catalog].

The content is based on: https://github.com/tektoncd/catalog/blob/main/test/e2e-common.sh, with improvements/refactoring for the new catalog git-based versioning and decentralized-repo model contracts.

The script supports both on PR merge integration test and nightly integration tests, specified by `TEST_RUN_NIGHTLY_TESTS` env variable.

In nightly test, the script runs test cases in all release of the catalog.
In on-PR-merge test, the script runs test cases in the branch head.

An e2e use example can found in: https://github.com/QuanZhang-William/golang/tree/test-pipelines.

[#3]: tektoncd-catalog/.github#3
[Verified Catalog]: https://github.com/tektoncd-catalog
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants