forked from kubernetes/test-infra
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
A new controller that pins together issues and test targets Issue kubernetes#10701
- Loading branch information
Showing
8 changed files
with
613 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library", "go_test") | ||
|
||
go_library( | ||
name = "go_default_library", | ||
srcs = ["main.go"], | ||
importpath = "k8s.io/test-infra/testgrid/cmd/entomologist", | ||
visibility = ["//visibility:private"], | ||
deps = [ | ||
"//pkg/io:go_default_library", | ||
"//prow/config/secret:go_default_library", | ||
"//prow/flagutil:go_default_library", | ||
"//prow/github:go_default_library", | ||
"//testgrid/issue_state:go_default_library", | ||
"//vendor/github.com/golang/protobuf/proto:go_default_library", | ||
"//vendor/github.com/sirupsen/logrus:go_default_library", | ||
"//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library", | ||
], | ||
) | ||
|
||
go_binary( | ||
name = "entomologist", | ||
embed = [":go_default_library"], | ||
visibility = ["//visibility:public"], | ||
) | ||
|
||
go_test( | ||
name = "go_default_test", | ||
srcs = ["main_test.go"], | ||
embed = [":go_default_library"], | ||
deps = [ | ||
"//prow/flagutil:go_default_library", | ||
"//prow/github:go_default_library", | ||
"//prow/github/fakegithub:go_default_library", | ||
"//testgrid/issue_state:go_default_library", | ||
], | ||
) | ||
|
||
filegroup( | ||
name = "package-srcs", | ||
srcs = glob(["**"]), | ||
tags = ["automanaged"], | ||
visibility = ["//visibility:private"], | ||
) | ||
|
||
filegroup( | ||
name = "all-srcs", | ||
srcs = [":package-srcs"], | ||
tags = ["automanaged"], | ||
visibility = ["//visibility:public"], | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
# Entomologist | ||
|
||
Entomologist collects bugs from GitHub and pins them to TestGrid tests. When an issue is "pinned" | ||
to a TestGrid target, a hyperlink to the issue will appear on that row. | ||
|
||
## Pinning Behavior | ||
|
||
Entomologist is expecting targets to be explicitly called out in issues. You can do this by writing | ||
"target:" at the start of a new line, and then the target you want to pin to. | ||
|
||
|
||
>Some update caused these tests to start failing! | ||
> | ||
>target: [sig-storage] ConfigMap binary data should be reflected in volume [NodeConformance] [Conformance] [coreos-beta] | ||
> | ||
>target: [sig-storage] ConfigMap should be consumable from pods in volume as non-root [LinuxOnly] [NodeConformance] [Conformance] [coreos-beta] | ||
> | ||
>/help | ||
|
||
GitHub calls Pull Requests "Issues", but Entomologist doesn't. | ||
Targets in Pull Requests won't be pinned. | ||
|
||
Entomologist can be configured with a caching proxy, such as [ghProxy](https://github.com/kubernetes/test-infra/tree/master/ghproxy), | ||
to minimize API token usage. | ||
Entomologist is writing an [issue_state.proto](https://github.com/kubernetes/test-infra/blob/master/testgrid/issue_state/issue_state.proto) | ||
file to Google Cloud Storage (GCS). TestGrid consumes the information placed there. | ||
|
||
## Required Flags | ||
|
||
- `--github-org/--github-repo`: The organization/repository you're looking through for issues.\ | ||
For example, this org/repo is `--github-org=kubernetes --github-repo=test-infra` | ||
- `--output`: The location of the issue_state.proto file that Entomologist will write to | ||
- `--gcs-credentials-file`: GCS requires credentials to write to a GCS location |
Oops, something went wrong.