{"action":"created","comment":{"url":"https://api.github.com/repos/knative/eventing-sources/pulls/comments/236349853","pull_request_review_id":178404631,"id":236349853,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIzNjM0OTg1Mw==","diff_hunk":"@@ -0,0 +1,234 @@\n+package e2e\n+\n+import (\n+\t\"fmt\"\n+\t\"strings\"\n+\t\"testing\"\n+\t\"time\"\n+\n+\tsourcesv1alpha1 \"github.com/knative/eventing-sources/pkg/apis/sources/v1alpha1\"\n+\t\"github.com/knative/eventing/pkg/apis/eventing/v1alpha1\"\n+\t\"github.com/knative/eventing/test\"\n+\tpkgTest \"github.com/knative/pkg/test\"\n+\t\"github.com/knative/pkg/test/logging\"\n+\tservingV1alpha1 \"github.com/knative/serving/pkg/apis/serving/v1alpha1\"\n+\tcorev1 \"k8s.io/api/core/v1\"\n+\trbacV1beta1 \"k8s.io/api/rbac/v1beta1\"\n+\tmetav1 \"k8s.io/apimachinery/pkg/apis/meta/v1\"\n+\t\"k8s.io/apimachinery/pkg/util/wait\"\n+\n+\t// Mysteriously required to support GCP auth (required by k8s libs).\n+\t// Apparently just importing it is enough. @_@ side effects @_@.\n+\t// https://github.com/kubernetes/client-go/issues/242\n+\t_ \"k8s.io/client-go/plugin/pkg/client/auth/gcp\"\n+)\n+\n+const (\n+\tdefaultNamespaceName = \"e2etestfn3\"\n+\ttestNamespace        = \"e2etest\"\n+\tinterval             = 1 * time.Second\n+\ttimeout              = 1 * time.Minute\n+)\n+\n+// Setup creates the client objects needed in the e2e tests.\n+func Setup(t *testing.T, logger *logging.BaseLogger) (*test.Clients, *test.Cleaner) {\n+\tif pkgTest.Flags.Namespace == \"\" {\n+\t\tpkgTest.Flags.Namespace = defaultNamespaceName\n+\t}\n+\n+\tclients, err := test.NewClients(\n+\t\tpkgTest.Flags.Kubeconfig,\n+\t\tpkgTest.Flags.Cluster,\n+\t\tpkgTest.Flags.Namespace)\n+\tif err != nil {\n+\t\tt.Fatalf(\"Couldn't initialize clients: %v\", err)\n+\t}\n+\tcleaner := test.NewCleaner(logger, clients.Dynamic)\n+\n+\treturn clients, cleaner\n+}\n+\n+// TearDown will delete created names using clients.\n+func TearDown(clients *test.Clients, cleaner *test.Cleaner, logger *logging.BaseLogger) {\n+\tcleaner.Clean(true)\n+}\n+\n+// CreateRouteAndConfig will create Route and Config objects using clients.\n+// The Config object will serve requests to a container started from the image at imagePath.\n+func CreateRouteAndConfig(clients *test.Clients, logger *logging.BaseLogger, cleaner *test.Cleaner, name string, imagePath string) error {\n+\tconfigurations := clients.Serving.ServingV1alpha1().Configurations(pkgTest.Flags.Namespace)\n+\tconfig, err := configurations.Create(\n+\t\ttest.Configuration(name, pkgTest.Flags.Namespace, imagePath))\n+\tif err != nil {\n+\t\treturn err\n+\t}\n+\tcleaner.Add(servingV1alpha1.SchemeGroupVersion.Group, servingV1alpha1.SchemeGroupVersion.Version, \"configurations\", pkgTest.Flags.Namespace, config.ObjectMeta.Name)\n+\n+\troutes := clients.Serving.ServingV1alpha1().Routes(pkgTest.Flags.Namespace)\n+\troute, err := routes.Create(\n+\t\ttest.Route(name, pkgTest.Flags.Namespace, name))\n+\tif err != nil {\n+\t\treturn err\n+\t}\n+\tcleaner.Add(servingV1alpha1.SchemeGroupVersion.Group, servingV1alpha1.SchemeGroupVersion.Version, \"routes\", pkgTest.Flags.Namespace, route.ObjectMeta.Name)\n+\treturn nil\n+}\n+\n+// WithRouteReady will create Route and Config objects and wait until they're ready.\n+func WithRouteReady(clients *test.Clients, logger *logging.BaseLogger, cleaner *test.Cleaner, name string, imagePath string) error {\n+\terr := CreateRouteAndConfig(clients, logger, cleaner, name, imagePath)\n+\tif err != nil {\n+\t\treturn err\n+\t}\n+\troutes := clients.Serving.ServingV1alpha1().Routes(pkgTest.Flags.Namespace)\n+\tif err := test.WaitForRouteState(routes, name, test.IsRouteReady, \"RouteIsReady\"); err != nil {\n+\t\treturn err\n+\t}\n+\treturn nil\n+}\n+\n+// CreateKubernetesEventSource creates a KubernetesEventSource\n+func CreateKubernetesEventSource(clients *test.Clients, source *sourcesv1alpha1.KubernetesEventSource, logger *logging.BaseLogger, cleaner *test.Cleaner) error {\n+\tk8sSources := clients.Sources.SourcesV1alpha1().KubernetesEventSources(pkgTest.Flags.Namespace)\n+\tres, err := k8sSources.Create(source)\n+\tif err != nil {\n+\t\treturn err\n+\t}\n+\tcleaner.Add(sourcesv1alpha1.SchemeGroupVersion.Group, sourcesv1alpha1.SchemeGroupVersion.Version, \"kuberneteseventsources\", pkgTest.Flags.Namespace, res.ObjectMeta.Name)\n+\treturn nil\n+}\n+\n+// CreateChannel will create a Channel\n+func CreateChannel(clients *test.Clients, channel *v1alpha1.Channel, logger *logging.BaseLogger, cleaner *test.Cleaner) error {\n+\tchannels := clients.Eventing.EventingV1alpha1().Channels(pkgTest.Flags.Namespace)\n+\tres, err := channels.Create(channel)\n+\tif err != nil {\n+\t\treturn err\n+\t}\n+\tcleaner.Add(v1alpha1.SchemeGroupVersion.Group, v1alpha1.SchemeGroupVersion.Version, \"channels\", pkgTest.Flags.Namespace, res.ObjectMeta.Name)\n+\treturn nil\n+}\n+\n+// CreateSubscription will create a Subscription\n+func CreateSubscription(clients *test.Clients, subs *v1alpha1.Subscription, logger *logging.BaseLogger, cleaner *test.Cleaner) error {\n+\tsubscriptions := clients.Eventing.EventingV1alpha1().Subscriptions(pkgTest.Flags.Namespace)\n+\tres, err := subscriptions.Create(subs)\n+\tif err != nil {\n+\t\treturn err\n+\t}\n+\tcleaner.Add(v1alpha1.SchemeGroupVersion.Group, v1alpha1.SchemeGroupVersion.Version, \"subscriptions\", pkgTest.Flags.Namespace, res.ObjectMeta.Name)\n+\treturn nil\n+}\n+\n+// CreateServiceAccount will create a service account\n+func CreateServiceAccount(clients *test.Clients, sa *corev1.ServiceAccount, logger *logging.BaseLogger, cleaner *test.Cleaner) error {\n+\tsas := clients.Kube.Kube.CoreV1().ServiceAccounts(pkgTest.Flags.Namespace)\n+\tres, err := sas.Create(sa)\n+\tif err != nil {\n+\t\treturn err\n+\t}\n+\tcleaner.Add(corev1.SchemeGroupVersion.Group, corev1.SchemeGroupVersion.Version, \"serviceaccounts\", pkgTest.Flags.Namespace, res.ObjectMeta.Name)\n+\treturn nil\n+}\n+\n+// CreateClusterRoleBinding will create a service account binding\n+func CreateClusterRoleBinding(clients *test.Clients, crb *rbacV1beta1.ClusterRoleBinding, logger *logging.BaseLogger, cleaner *test.Cleaner) error {\n+\tclusterRoleBindings := clients.Kube.Kube.RbacV1beta1().ClusterRoleBindings()\n+\tres, err := clusterRoleBindings.Create(crb)\n+\tif err != nil {\n+\t\treturn err\n+\t}\n+\tcleaner.Add(rbacV1beta1.SchemeGroupVersion.Group, rbacV1beta1.SchemeGroupVersion.Version, \"clusterrolebindings\", \"\", res.ObjectMeta.Name)\n+\treturn nil\n+}\n+\n+// CreateServiceAccountAndBinding creates both ServiceAccount and ClusterRoleBinding with default\n+// cluster-admin role\n+func CreateServiceAccountAndBinding(clients *test.Clients, name string, logger *logging.BaseLogger, cleaner *test.Cleaner) error {\n+\tsa := &corev1.ServiceAccount{\n+\t\tObjectMeta: metav1.ObjectMeta{\n+\t\t\tName:      name,\n+\t\t\tNamespace: defaultNamespaceName,\n+\t\t},\n+\t}\n+\terr := CreateServiceAccount(clients, sa, logger, cleaner)\n+\tif err != nil {\n+\t\treturn err\n+\t}\n+\tcrb := &rbacV1beta1.ClusterRoleBinding{\n+\t\tObjectMeta: metav1.ObjectMeta{\n+\t\t\tName: \"e2e-tests-admin\",\n+\t\t},\n+\t\tSubjects: []rbacV1beta1.Subject{\n+\t\t\t{\n+\t\t\t\tKind:      \"ServiceAccount\",\n+\t\t\t\tName:      name,\n+\t\t\t\tNamespace: defaultNamespaceName,","path":"test/e2e/e2e.go","position":166,"original_position":166,"commit_id":"ac1f537990db7ca34670c8da2c57e025c50a41c6","original_commit_id":"ac1f537990db7ca34670c8da2c57e025c50a41c6","user":{"login":"Harwayne","id":227171,"node_id":"MDQ6VXNlcjIyNzE3MQ==","avatar_url":"https://avatars1.githubusercontent.com/u/227171?v=4","gravatar_id":"","url":"https://api.github.com/users/Harwayne","html_url":"https://github.com/Harwayne","followers_url":"https://api.github.com/users/Harwayne/followers","following_url":"https://api.github.com/users/Harwayne/following{/other_user}","gists_url":"https://api.github.com/users/Harwayne/gists{/gist_id}","starred_url":"https://api.github.com/users/Harwayne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Harwayne/subscriptions","organizations_url":"https://api.github.com/users/Harwayne/orgs","repos_url":"https://api.github.com/users/Harwayne/repos","events_url":"https://api.github.com/users/Harwayne/events{/privacy}","received_events_url":"https://api.github.com/users/Harwayne/received_events","type":"User","site_admin":false},"body":"`pkgTest.Flags.Namespace`","created_at":"2018-11-26T17:23:14Z","updated_at":"2018-11-26T17:36:16Z","html_url":"https://github.com/knative/eventing-sources/pull/121#discussion_r236349853","pull_request_url":"https://api.github.com/repos/knative/eventing-sources/pulls/121","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/knative/eventing-sources/pulls/comments/236349853"},"html":{"href":"https://github.com/knative/eventing-sources/pull/121#discussion_r236349853"},"pull_request":{"href":"https://api.github.com/repos/knative/eventing-sources/pulls/121"}}},"pull_request":{"url":"https://api.github.com/repos/knative/eventing-sources/pulls/121","id":232130369,"node_id":"MDExOlB1bGxSZXF1ZXN0MjMyMTMwMzY5","html_url":"https://github.com/knative/eventing-sources/pull/121","diff_url":"https://github.com/knative/eventing-sources/pull/121.diff","patch_url":"https://github.com/knative/eventing-sources/pull/121.patch","issue_url":"https://api.github.com/repos/knative/eventing-sources/issues/121","number":121,"state":"open","locked":false,"title":"Add E2E test","user":{"login":"grantr","id":680,"node_id":"MDQ6VXNlcjY4MA==","avatar_url":"https://avatars3.githubusercontent.com/u/680?v=4","gravatar_id":"","url":"https://api.github.com/users/grantr","html_url":"https://github.com/grantr","followers_url":"https://api.github.com/users/grantr/followers","following_url":"https://api.github.com/users/grantr/following{/other_user}","gists_url":"https://api.github.com/users/grantr/gists{/gist_id}","starred_url":"https://api.github.com/users/grantr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grantr/subscriptions","organizations_url":"https://api.github.com/users/grantr/orgs","repos_url":"https://api.github.com/users/grantr/repos","events_url":"https://api.github.com/users/grantr/events{/privacy}","received_events_url":"https://api.github.com/users/grantr/received_events","type":"User","site_admin":false},"body":"This is a copy of the eventing E2E test which checks if KubernetesEventSource can deliver an event to a sink.\r\n\r\nThis isn't the final form for E2E tests of sources, but a stopgap solution to prevent the eventing-sources nightly release silently breaking eventing E2E tests.","created_at":"2018-11-19T22:19:24Z","updated_at":"2018-11-26T17:36:16Z","closed_at":null,"merged_at":null,"merge_commit_sha":"60063e1323ba74ed829435f69e9c6c55dd71345a","assignee":{"login":"adrcunha","id":35786489,"node_id":"MDQ6VXNlcjM1Nzg2NDg5","avatar_url":"https://avatars3.githubusercontent.com/u/35786489?v=4","gravatar_id":"","url":"https://api.github.com/users/adrcunha","html_url":"https://github.com/adrcunha","followers_url":"https://api.github.com/users/adrcunha/followers","following_url":"https://api.github.com/users/adrcunha/following{/other_user}","gists_url":"https://api.github.com/users/adrcunha/gists{/gist_id}","starred_url":"https://api.github.com/users/adrcunha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adrcunha/subscriptions","organizations_url":"https://api.github.com/users/adrcunha/orgs","repos_url":"https://api.github.com/users/adrcunha/repos","events_url":"https://api.github.com/users/adrcunha/events{/privacy}","received_events_url":"https://api.github.com/users/adrcunha/received_events","type":"User","site_admin":false},"assignees":[{"login":"adrcunha","id":35786489,"node_id":"MDQ6VXNlcjM1Nzg2NDg5","avatar_url":"https://avatars3.githubusercontent.com/u/35786489?v=4","gravatar_id":"","url":"https://api.github.com/users/adrcunha","html_url":"https://github.com/adrcunha","followers_url":"https://api.github.com/users/adrcunha/followers","following_url":"https://api.github.com/users/adrcunha/following{/other_user}","gists_url":"https://api.github.com/users/adrcunha/gists{/gist_id}","starred_url":"https://api.github.com/users/adrcunha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adrcunha/subscriptions","organizations_url":"https://api.github.com/users/adrcunha/orgs","repos_url":"https://api.github.com/users/adrcunha/repos","events_url":"https://api.github.com/users/adrcunha/events{/privacy}","received_events_url":"https://api.github.com/users/adrcunha/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"jessiezcc","id":37942702,"node_id":"MDQ6VXNlcjM3OTQyNzAy","avatar_url":"https://avatars2.githubusercontent.com/u/37942702?v=4","gravatar_id":"","url":"https://api.github.com/users/jessiezcc","html_url":"https://github.com/jessiezcc","followers_url":"https://api.github.com/users/jessiezcc/followers","following_url":"https://api.github.com/users/jessiezcc/following{/other_user}","gists_url":"https://api.github.com/users/jessiezcc/gists{/gist_id}","starred_url":"https://api.github.com/users/jessiezcc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jessiezcc/subscriptions","organizations_url":"https://api.github.com/users/jessiezcc/orgs","repos_url":"https://api.github.com/users/jessiezcc/repos","events_url":"https://api.github.com/users/jessiezcc/events{/privacy}","received_events_url":"https://api.github.com/users/jessiezcc/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[{"id":1100626958,"node_id":"MDU6TGFiZWwxMTAwNjI2OTU4","url":"https://api.github.com/repos/knative/eventing-sources/labels/approved","name":"approved","color":"ededed","default":false},{"id":1097427454,"node_id":"MDU6TGFiZWwxMDk3NDI3NDU0","url":"https://api.github.com/repos/knative/eventing-sources/labels/lgtm","name":"lgtm","color":"ededed","default":false},{"id":1097195145,"node_id":"MDU6TGFiZWwxMDk3MTk1MTQ1","url":"https://api.github.com/repos/knative/eventing-sources/labels/size/XXL","name":"size/XXL","color":"ededed","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/knative/eventing-sources/pulls/121/commits","review_comments_url":"https://api.github.com/repos/knative/eventing-sources/pulls/121/comments","review_comment_url":"https://api.github.com/repos/knative/eventing-sources/pulls/comments{/number}","comments_url":"https://api.github.com/repos/knative/eventing-sources/issues/121/comments","statuses_url":"https://api.github.com/repos/knative/eventing-sources/statuses/ac1f537990db7ca34670c8da2c57e025c50a41c6","head":{"label":"grantr:e2e-test","ref":"e2e-test","sha":"ac1f537990db7ca34670c8da2c57e025c50a41c6","user":{"login":"grantr","id":680,"node_id":"MDQ6VXNlcjY4MA==","avatar_url":"https://avatars3.githubusercontent.com/u/680?v=4","gravatar_id":"","url":"https://api.github.com/users/grantr","html_url":"https://github.com/grantr","followers_url":"https://api.github.com/users/grantr/followers","following_url":"https://api.github.com/users/grantr/following{/other_user}","gists_url":"https://api.github.com/users/grantr/gists{/gist_id}","starred_url":"https://api.github.com/users/grantr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grantr/subscriptions","organizations_url":"https://api.github.com/users/grantr/orgs","repos_url":"https://api.github.com/users/grantr/repos","events_url":"https://api.github.com/users/grantr/events{/privacy}","received_events_url":"https://api.github.com/users/grantr/received_events","type":"User","site_admin":false},"repo":{"id":154410098,"node_id":"MDEwOlJlcG9zaXRvcnkxNTQ0MTAwOTg=","name":"eventing-sources","full_name":"grantr/eventing-sources","private":false,"owner":{"login":"grantr","id":680,"node_id":"MDQ6VXNlcjY4MA==","avatar_url":"https://avatars3.githubusercontent.com/u/680?v=4","gravatar_id":"","url":"https://api.github.com/users/grantr","html_url":"https://github.com/grantr","followers_url":"https://api.github.com/users/grantr/followers","following_url":"https://api.github.com/users/grantr/following{/other_user}","gists_url":"https://api.github.com/users/grantr/gists{/gist_id}","starred_url":"https://api.github.com/users/grantr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grantr/subscriptions","organizations_url":"https://api.github.com/users/grantr/orgs","repos_url":"https://api.github.com/users/grantr/repos","events_url":"https://api.github.com/users/grantr/events{/privacy}","received_events_url":"https://api.github.com/users/grantr/received_events","type":"User","site_admin":false},"html_url":"https://github.com/grantr/eventing-sources","description":"Event Sources","fork":true,"url":"https://api.github.com/repos/grantr/eventing-sources","forks_url":"https://api.github.com/repos/grantr/eventing-sources/forks","keys_url":"https://api.github.com/repos/grantr/eventing-sources/keys{/key_id}","collaborators_url":"https://api.github.com/repos/grantr/eventing-sources/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/grantr/eventing-sources/teams","hooks_url":"https://api.github.com/repos/grantr/eventing-sources/hooks","issue_events_url":"https://api.github.com/repos/grantr/eventing-sources/issues/events{/number}","events_url":"https://api.github.com/repos/grantr/eventing-sources/events","assignees_url":"https://api.github.com/repos/grantr/eventing-sources/assignees{/user}","branches_url":"https://api.github.com/repos/grantr/eventing-sources/branches{/branch}","tags_url":"https://api.github.com/repos/grantr/eventing-sources/tags","blobs_url":"https://api.github.com/repos/grantr/eventing-sources/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/grantr/eventing-sources/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/grantr/eventing-sources/git/refs{/sha}","trees_url":"https://api.github.com/repos/grantr/eventing-sources/git/trees{/sha}","statuses_url":"https://api.github.com/repos/grantr/eventing-sources/statuses/{sha}","languages_url":"https://api.github.com/repos/grantr/eventing-sources/languages","stargazers_url":"https://api.github.com/repos/grantr/eventing-sources/stargazers","contributors_url":"https://api.github.com/repos/grantr/eventing-sources/contributors","subscribers_url":"https://api.github.com/repos/grantr/eventing-sources/subscribers","subscription_url":"https://api.github.com/repos/grantr/eventing-sources/subscription","commits_url":"https://api.github.com/repos/grantr/eventing-sources/commits{/sha}","git_commits_url":"https://api.github.com/repos/grantr/eventing-sources/git/commits{/sha}","comments_url":"https://api.github.com/repos/grantr/eventing-sources/comments{/number}","issue_comment_url":"https://api.github.com/repos/grantr/eventing-sources/issues/comments{/number}","contents_url":"https://api.github.com/repos/grantr/eventing-sources/contents/{+path}","compare_url":"https://api.github.com/repos/grantr/eventing-sources/compare/{base}...{head}","merges_url":"https://api.github.com/repos/grantr/eventing-sources/merges","archive_url":"https://api.github.com/repos/grantr/eventing-sources/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/grantr/eventing-sources/downloads","issues_url":"https://api.github.com/repos/grantr/eventing-sources/issues{/number}","pulls_url":"https://api.github.com/repos/grantr/eventing-sources/pulls{/number}","milestones_url":"https://api.github.com/repos/grantr/eventing-sources/milestones{/number}","notifications_url":"https://api.github.com/repos/grantr/eventing-sources/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/grantr/eventing-sources/labels{/name}","releases_url":"https://api.github.com/repos/grantr/eventing-sources/releases{/id}","deployments_url":"https://api.github.com/repos/grantr/eventing-sources/deployments","created_at":"2018-10-23T23:33:05Z","updated_at":"2018-10-23T23:33:08Z","pushed_at":"2018-11-20T20:08:21Z","git_url":"git://github.com/grantr/eventing-sources.git","ssh_url":"git@github.com:grantr/eventing-sources.git","clone_url":"https://github.com/grantr/eventing-sources.git","svn_url":"https://github.com/grantr/eventing-sources","homepage":"","size":43833,"stargazers_count":0,"watchers_count":0,"language":"Go","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"knative:master","ref":"master","sha":"40ecde09cbd812a2cb68acc342b4b17035f56ff1","user":{"login":"knative","id":35583233,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM1NTgzMjMz","avatar_url":"https://avatars2.githubusercontent.com/u/35583233?v=4","gravatar_id":"","url":"https://api.github.com/users/knative","html_url":"https://github.com/knative","followers_url":"https://api.github.com/users/knative/followers","following_url":"https://api.github.com/users/knative/following{/other_user}","gists_url":"https://api.github.com/users/knative/gists{/gist_id}","starred_url":"https://api.github.com/users/knative/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/knative/subscriptions","organizations_url":"https://api.github.com/users/knative/orgs","repos_url":"https://api.github.com/users/knative/repos","events_url":"https://api.github.com/users/knative/events{/privacy}","received_events_url":"https://api.github.com/users/knative/received_events","type":"Organization","site_admin":false},"repo":{"id":153685000,"node_id":"MDEwOlJlcG9zaXRvcnkxNTM2ODUwMDA=","name":"eventing-sources","full_name":"knative/eventing-sources","private":false,"owner":{"login":"knative","id":35583233,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM1NTgzMjMz","avatar_url":"https://avatars2.githubusercontent.com/u/35583233?v=4","gravatar_id":"","url":"https://api.github.com/users/knative","html_url":"https://github.com/knative","followers_url":"https://api.github.com/users/knative/followers","following_url":"https://api.github.com/users/knative/following{/other_user}","gists_url":"https://api.github.com/users/knative/gists{/gist_id}","starred_url":"https://api.github.com/users/knative/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/knative/subscriptions","organizations_url":"https://api.github.com/users/knative/orgs","repos_url":"https://api.github.com/users/knative/repos","events_url":"https://api.github.com/users/knative/events{/privacy}","received_events_url":"https://api.github.com/users/knative/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/knative/eventing-sources","description":"Event Sources","fork":false,"url":"https://api.github.com/repos/knative/eventing-sources","forks_url":"https://api.github.com/repos/knative/eventing-sources/forks","keys_url":"https://api.github.com/repos/knative/eventing-sources/keys{/key_id}","collaborators_url":"https://api.github.com/repos/knative/eventing-sources/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/knative/eventing-sources/teams","hooks_url":"https://api.github.com/repos/knative/eventing-sources/hooks","issue_events_url":"https://api.github.com/repos/knative/eventing-sources/issues/events{/number}","events_url":"https://api.github.com/repos/knative/eventing-sources/events","assignees_url":"https://api.github.com/repos/knative/eventing-sources/assignees{/user}","branches_url":"https://api.github.com/repos/knative/eventing-sources/branches{/branch}","tags_url":"https://api.github.com/repos/knative/eventing-sources/tags","blobs_url":"https://api.github.com/repos/knative/eventing-sources/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/knative/eventing-sources/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/knative/eventing-sources/git/refs{/sha}","trees_url":"https://api.github.com/repos/knative/eventing-sources/git/trees{/sha}","statuses_url":"https://api.github.com/repos/knative/eventing-sources/statuses/{sha}","languages_url":"https://api.github.com/repos/knative/eventing-sources/languages","stargazers_url":"https://api.github.com/repos/knative/eventing-sources/stargazers","contributors_url":"https://api.github.com/repos/knative/eventing-sources/contributors","subscribers_url":"https://api.github.com/repos/knative/eventing-sources/subscribers","subscription_url":"https://api.github.com/repos/knative/eventing-sources/subscription","commits_url":"https://api.github.com/repos/knative/eventing-sources/commits{/sha}","git_commits_url":"https://api.github.com/repos/knative/eventing-sources/git/commits{/sha}","comments_url":"https://api.github.com/repos/knative/eventing-sources/comments{/number}","issue_comment_url":"https://api.github.com/repos/knative/eventing-sources/issues/comments{/number}","contents_url":"https://api.github.com/repos/knative/eventing-sources/contents/{+path}","compare_url":"https://api.github.com/repos/knative/eventing-sources/compare/{base}...{head}","merges_url":"https://api.github.com/repos/knative/eventing-sources/merges","archive_url":"https://api.github.com/repos/knative/eventing-sources/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/knative/eventing-sources/downloads","issues_url":"https://api.github.com/repos/knative/eventing-sources/issues{/number}","pulls_url":"https://api.github.com/repos/knative/eventing-sources/pulls{/number}","milestones_url":"https://api.github.com/repos/knative/eventing-sources/milestones{/number}","notifications_url":"https://api.github.com/repos/knative/eventing-sources/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/knative/eventing-sources/labels{/name}","releases_url":"https://api.github.com/repos/knative/eventing-sources/releases{/id}","deployments_url":"https://api.github.com/repos/knative/eventing-sources/deployments","created_at":"2018-10-18T20:42:19Z","updated_at":"2018-11-23T20:10:42Z","pushed_at":"2018-11-26T13:05:02Z","git_url":"git://github.com/knative/eventing-sources.git","ssh_url":"git@github.com:knative/eventing-sources.git","clone_url":"https://github.com/knative/eventing-sources.git","svn_url":"https://github.com/knative/eventing-sources","homepage":"","size":43714,"stargazers_count":10,"watchers_count":10,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":26,"mirror_url":null,"archived":false,"open_issues_count":37,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":26,"open_issues":37,"watchers":10,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/knative/eventing-sources/pulls/121"},"html":{"href":"https://github.com/knative/eventing-sources/pull/121"},"issue":{"href":"https://api.github.com/repos/knative/eventing-sources/issues/121"},"comments":{"href":"https://api.github.com/repos/knative/eventing-sources/issues/121/comments"},"review_comments":{"href":"https://api.github.com/repos/knative/eventing-sources/pulls/121/comments"},"review_comment":{"href":"https://api.github.com/repos/knative/eventing-sources/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/knative/eventing-sources/pulls/121/commits"},"statuses":{"href":"https://api.github.com/repos/knative/eventing-sources/statuses/ac1f537990db7ca34670c8da2c57e025c50a41c6"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"Harwayne"}}