Skip to content

Commit deeac91

Browse files
fixed fork payload
1 parent baf4371 commit deeac91

File tree

2 files changed

+108
-189
lines changed

2 files changed

+108
-189
lines changed

github/payload.go

Lines changed: 102 additions & 183 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ type Repository struct {
2828
SiteAdmin bool `json:"site_admin"`
2929
} `json:"owner"`
3030
Private bool `json:"private"`
31+
Archived bool `json:"archived"`
32+
Disabled bool `json:"disabled"`
3133
HTMLURL string `json:"html_url"`
3234
Description *string `json:"description"`
3335
Fork bool `json:"fork"`
@@ -75,9 +77,6 @@ type Repository struct {
7577
CloneURL string `json:"clone_url"`
7678
SvnURL string `json:"svn_url"`
7779
DeploymentsURL string `json:"deployments_url"`
78-
Archived bool `json:"archived"`
79-
Disabled bool `json:"disabled"`
80-
HasProjects bool `json:"has_projects"`
8180
License *string `json:"license"`
8281
Homepage *string `json:"homepage"`
8382
Size int64 `json:"size"`
@@ -88,6 +87,7 @@ type Repository struct {
8887
HasDownloads bool `json:"has_downloads"`
8988
HasWiki bool `json:"has_wiki"`
9089
HasPages bool `json:"has_pages"`
90+
HasProjects bool `json:"has_projects"`
9191
ForksCount int64 `json:"forks_count"`
9292
MirrorURL *string `json:"mirror_url"`
9393
OpenIssuesCount int64 `json:"open_issues_count"`
@@ -579,187 +579,105 @@ type DeploymentStatusPayload struct {
579579
}
580580

581581
// ForkPayload contains the information for GitHub's fork hook event
582+
type Forkee struct {
583+
ID int64 `json:"id"`
584+
NodeID string `json:"node_id"`
585+
Name string `json:"name"`
586+
FullName string `json:"full_name"`
587+
Owner struct {
588+
Login string `json:"login"`
589+
ID int64 `json:"id"`
590+
NodeID string `json:"node_id"`
591+
AvatarURL string `json:"avatar_url"`
592+
GravatarID string `json:"gravatar_id"`
593+
URL string `json:"url"`
594+
HTMLURL string `json:"html_url"`
595+
FollowersURL string `json:"followers_url"`
596+
FollowingURL string `json:"following_url"`
597+
GistsURL string `json:"gists_url"`
598+
StarredURL string `json:"starred_url"`
599+
SubscriptionsURL string `json:"subscriptions_url"`
600+
OrganizationsURL string `json:"organizations_url"`
601+
ReposURL string `json:"repos_url"`
602+
EventsURL string `json:"events_url"`
603+
ReceivedEventsURL string `json:"received_events_url"`
604+
Type string `json:"type"`
605+
SiteAdmin bool `json:"site_admin"`
606+
} `json:"owner"`
607+
Private bool `json:"private"`
608+
Public bool `json:"public"`
609+
Archived bool `json:"archived"`
610+
Disabled bool `json:"disabled"`
611+
HTMLURL string `json:"html_url"`
612+
Description *string `json:"description"`
613+
Fork bool `json:"fork"`
614+
URL string `json:"url"`
615+
ForksURL string `json:"forks_url"`
616+
KeysURL string `json:"keys_url"`
617+
CollaboratorsURL string `json:"collaborators_url"`
618+
TeamsURL string `json:"teams_url"`
619+
HooksURL string `json:"hooks_url"`
620+
IssueEventsURL string `json:"issue_events_url"`
621+
EventsURL string `json:"events_url"`
622+
AssigneesURL string `json:"assignees_url"`
623+
BranchesURL string `json:"branches_url"`
624+
TagsURL string `json:"tags_url"`
625+
BlobsURL string `json:"blobs_url"`
626+
GitTagsURL string `json:"git_tags_url"`
627+
GitRefsURL string `json:"git_refs_url"`
628+
TreesURL string `json:"trees_url"`
629+
StatusesURL string `json:"statuses_url"`
630+
LanguagesURL string `json:"languages_url"`
631+
StargazersURL string `json:"stargazers_url"`
632+
ContributorsURL string `json:"contributors_url"`
633+
SubscribersURL string `json:"subscribers_url"`
634+
SubscriptionURL string `json:"subscription_url"`
635+
CommitsURL string `json:"commits_url"`
636+
GitCommitsURL string `json:"git_commits_url"`
637+
CommentsURL string `json:"comments_url"`
638+
IssueCommentURL string `json:"issue_comment_url"`
639+
ContentsURL string `json:"contents_url"`
640+
CompareURL string `json:"compare_url"`
641+
MergesURL string `json:"merges_url"`
642+
ArchiveURL string `json:"archive_url"`
643+
DownloadsURL string `json:"downloads_url"`
644+
IssuesURL string `json:"issues_url"`
645+
PullsURL string `json:"pulls_url"`
646+
MilestonesURL string `json:"milestones_url"`
647+
NotificationsURL string `json:"notifications_url"`
648+
LabelsURL string `json:"labels_url"`
649+
ReleasesURL string `json:"releases_url"`
650+
CreatedAt time.Time `json:"created_at"`
651+
UpdatedAt time.Time `json:"updated_at"`
652+
PushedAt time.Time `json:"pushed_at"`
653+
GitURL string `json:"git_url"`
654+
SSHURL string `json:"ssh_url"`
655+
CloneURL string `json:"clone_url"`
656+
SvnURL string `json:"svn_url"`
657+
DeploymentsURL string `json:"deployments_url"`
658+
License *string `json:"license"`
659+
Homepage *string `json:"homepage"`
660+
Size int64 `json:"size"`
661+
StargazersCount int64 `json:"stargazers_count"`
662+
WatchersCount int64 `json:"watchers_count"`
663+
Language *string `json:"language"`
664+
HasIssues bool `json:"has_issues"`
665+
HasDownloads bool `json:"has_downloads"`
666+
HasWiki bool `json:"has_wiki"`
667+
HasPages bool `json:"has_pages"`
668+
HasProjects bool `json:"has_projects"`
669+
ForksCount int64 `json:"forks_count"`
670+
MirrorURL *string `json:"mirror_url"`
671+
OpenIssuesCount int64 `json:"open_issues_count"`
672+
Forks int64 `json:"forks"`
673+
OpenIssues int64 `json:"open_issues"`
674+
Watchers int64 `json:"watchers"`
675+
DefaultBranch string `json:"default_branch"`
676+
}
582677
type ForkPayload struct {
583-
Forkee struct {
584-
ID int64 `json:"id"`
585-
NodeID string `json:"node_id"`
586-
Name string `json:"name"`
587-
FullName string `json:"full_name"`
588-
Owner struct {
589-
Login string `json:"login"`
590-
ID int64 `json:"id"`
591-
NodeID string `json:"node_id"`
592-
AvatarURL string `json:"avatar_url"`
593-
GravatarID string `json:"gravatar_id"`
594-
URL string `json:"url"`
595-
HTMLURL string `json:"html_url"`
596-
FollowersURL string `json:"followers_url"`
597-
FollowingURL string `json:"following_url"`
598-
GistsURL string `json:"gists_url"`
599-
StarredURL string `json:"starred_url"`
600-
SubscriptionsURL string `json:"subscriptions_url"`
601-
OrganizationsURL string `json:"organizations_url"`
602-
ReposURL string `json:"repos_url"`
603-
EventsURL string `json:"events_url"`
604-
ReceivedEventsURL string `json:"received_events_url"`
605-
Type string `json:"type"`
606-
SiteAdmin bool `json:"site_admin"`
607-
} `json:"owner"`
608-
Private bool `json:"private"`
609-
HTMLURL string `json:"html_url"`
610-
Description string `json:"description"`
611-
Fork bool `json:"fork"`
612-
URL string `json:"url"`
613-
ForksURL string `json:"forks_url"`
614-
KeysURL string `json:"keys_url"`
615-
CollaboratorsURL string `json:"collaborators_url"`
616-
TeamsURL string `json:"teams_url"`
617-
HooksURL string `json:"hooks_url"`
618-
IssueEventsURL string `json:"issue_events_url"`
619-
EventsURL string `json:"events_url"`
620-
AssigneesURL string `json:"assignees_url"`
621-
BranchesURL string `json:"branches_url"`
622-
TagsURL string `json:"tags_url"`
623-
BlobsURL string `json:"blobs_url"`
624-
GitTagsURL string `json:"git_tags_url"`
625-
GitRefsURL string `json:"git_refs_url"`
626-
TreesURL string `json:"trees_url"`
627-
StatusesURL string `json:"statuses_url"`
628-
LanguagesURL string `json:"languages_url"`
629-
StargazersURL string `json:"stargazers_url"`
630-
ContributorsURL string `json:"contributors_url"`
631-
SubscribersURL string `json:"subscribers_url"`
632-
SubscriptionURL string `json:"subscription_url"`
633-
CommitsURL string `json:"commits_url"`
634-
GitCommitsURL string `json:"git_commits_url"`
635-
CommentsURL string `json:"comments_url"`
636-
IssueCommentURL string `json:"issue_comment_url"`
637-
ContentsURL string `json:"contents_url"`
638-
CompareURL string `json:"compare_url"`
639-
MergesURL string `json:"merges_url"`
640-
ArchiveURL string `json:"archive_url"`
641-
DownloadsURL string `json:"downloads_url"`
642-
IssuesURL string `json:"issues_url"`
643-
PullsURL string `json:"pulls_url"`
644-
MilestonesURL string `json:"milestones_url"`
645-
NotificationsURL string `json:"notifications_url"`
646-
LabelsURL string `json:"labels_url"`
647-
ReleasesURL string `json:"releases_url"`
648-
CreatedAt time.Time `json:"created_at"`
649-
UpdatedAt time.Time `json:"updated_at"`
650-
PushedAt time.Time `json:"pushed_at"`
651-
GitURL string `json:"git_url"`
652-
SSHURL string `json:"ssh_url"`
653-
CloneURL string `json:"clone_url"`
654-
SvnURL string `json:"svn_url"`
655-
Homepage *string `json:"homepage"`
656-
Size int64 `json:"size"`
657-
StargazersCount int64 `json:"stargazers_count"`
658-
WatchersCount int64 `json:"watchers_count"`
659-
Language *string `json:"language"`
660-
HasIssues bool `json:"has_issues"`
661-
HasDownloads bool `json:"has_downloads"`
662-
HasWiki bool `json:"has_wiki"`
663-
HasPages bool `json:"has_pages"`
664-
ForksCount int64 `json:"forks_count"`
665-
MirrorURL *string `json:"mirror_url"`
666-
OpenIssuesCount int64 `json:"open_issues_count"`
667-
Forks int64 `json:"forks"`
668-
OpenIssues int64 `json:"open_issues"`
669-
Watchers int64 `json:"watchers"`
670-
DefaultBranch string `json:"default_branch"`
671-
Public bool `json:"public"`
672-
} `json:"forkee"`
673-
Repository struct {
674-
ID int64 `json:"id"`
675-
NodeID string `json:"node_id"`
676-
Name string `json:"name"`
677-
FullName string `json:"full_name"`
678-
Owner struct {
679-
Login string `json:"login"`
680-
ID int64 `json:"id"`
681-
NodeID string `json:"node_id"`
682-
AvatarURL string `json:"avatar_url"`
683-
GravatarID string `json:"gravatar_id"`
684-
URL string `json:"url"`
685-
HTMLURL string `json:"html_url"`
686-
FollowersURL string `json:"followers_url"`
687-
FollowingURL string `json:"following_url"`
688-
GistsURL string `json:"gists_url"`
689-
StarredURL string `json:"starred_url"`
690-
SubscriptionsURL string `json:"subscriptions_url"`
691-
OrganizationsURL string `json:"organizations_url"`
692-
ReposURL string `json:"repos_url"`
693-
EventsURL string `json:"events_url"`
694-
ReceivedEventsURL string `json:"received_events_url"`
695-
Type string `json:"type"`
696-
SiteAdmin bool `json:"site_admin"`
697-
} `json:"owner"`
698-
Private bool `json:"private"`
699-
HTMLURL string `json:"html_url"`
700-
Description string `json:"description"`
701-
Fork bool `json:"fork"`
702-
URL string `json:"url"`
703-
ForksURL string `json:"forks_url"`
704-
KeysURL string `json:"keys_url"`
705-
CollaboratorsURL string `json:"collaborators_url"`
706-
TeamsURL string `json:"teams_url"`
707-
HooksURL string `json:"hooks_url"`
708-
IssueEventsURL string `json:"issue_events_url"`
709-
EventsURL string `json:"events_url"`
710-
AssigneesURL string `json:"assignees_url"`
711-
BranchesURL string `json:"branches_url"`
712-
TagsURL string `json:"tags_url"`
713-
BlobsURL string `json:"blobs_url"`
714-
GitTagsURL string `json:"git_tags_url"`
715-
GitRefsURL string `json:"git_refs_url"`
716-
TreesURL string `json:"trees_url"`
717-
StatusesURL string `json:"statuses_url"`
718-
LanguagesURL string `json:"languages_url"`
719-
StargazersURL string `json:"stargazers_url"`
720-
ContributorsURL string `json:"contributors_url"`
721-
SubscribersURL string `json:"subscribers_url"`
722-
SubscriptionURL string `json:"subscription_url"`
723-
CommitsURL string `json:"commits_url"`
724-
GitCommitsURL string `json:"git_commits_url"`
725-
CommentsURL string `json:"comments_url"`
726-
IssueCommentURL string `json:"issue_comment_url"`
727-
ContentsURL string `json:"contents_url"`
728-
CompareURL string `json:"compare_url"`
729-
MergesURL string `json:"merges_url"`
730-
ArchiveURL string `json:"archive_url"`
731-
DownloadsURL string `json:"downloads_url"`
732-
IssuesURL string `json:"issues_url"`
733-
PullsURL string `json:"pulls_url"`
734-
MilestonesURL string `json:"milestones_url"`
735-
NotificationsURL string `json:"notifications_url"`
736-
LabelsURL string `json:"labels_url"`
737-
ReleasesURL string `json:"releases_url"`
738-
CreatedAt time.Time `json:"created_at"`
739-
UpdatedAt time.Time `json:"updated_at"`
740-
PushedAt time.Time `json:"pushed_at"`
741-
GitURL string `json:"git_url"`
742-
SSHURL string `json:"ssh_url"`
743-
CloneURL string `json:"clone_url"`
744-
SvnURL string `json:"svn_url"`
745-
Homepage *string `json:"homepage"`
746-
Size int64 `json:"size"`
747-
StargazersCount int64 `json:"stargazers_count"`
748-
WatchersCount int64 `json:"watchers_count"`
749-
Language *string `json:"language"`
750-
HasIssues bool `json:"has_issues"`
751-
HasDownloads bool `json:"has_downloads"`
752-
HasWiki bool `json:"has_wiki"`
753-
HasPages bool `json:"has_pages"`
754-
ForksCount int64 `json:"forks_count"`
755-
MirrorURL *string `json:"mirror_url"`
756-
OpenIssuesCount int64 `json:"open_issues_count"`
757-
Forks int64 `json:"forks"`
758-
OpenIssues int64 `json:"open_issues"`
759-
Watchers int64 `json:"watchers"`
760-
DefaultBranch string `json:"default_branch"`
761-
} `json:"repository"`
762-
Sender struct {
678+
Forkee Forkee `json:"forkee"`
679+
Repository Repository `json:"repository"`
680+
Sender struct {
763681
Login string `json:"login"`
764682
ID int64 `json:"id"`
765683
NodeID string `json:"node_id"`
@@ -779,6 +697,7 @@ type ForkPayload struct {
779697
Type string `json:"type"`
780698
SiteAdmin bool `json:"site_admin"`
781699
} `json:"sender"`
700+
Installation Installation `json:"installation"`
782701
}
783702

784703
// GollumPayload contains the information for GitHub's gollum hook event

github/payload_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,11 @@ func TestPayloads(t *testing.T) {
6464
filename: "deployment.json",
6565
typ: &DeploymentPayload{},
6666
},
67-
// {
68-
// name: "ForkPayload",
69-
// filename: "fork.json",
70-
// typ: &ForkPayload{},
71-
// },
67+
{
68+
name: "ForkPayload",
69+
filename: "fork.json",
70+
typ: &ForkPayload{},
71+
},
7272
// {
7373
// name: "GollumPayload",
7474
// filename: "gollum.json",
@@ -245,7 +245,7 @@ func TestSingle(t *testing.T) {
245245
},
246246
}
247247
}
248-
tests := createTest("fork.json", &ForkPayload{}, &ForkPayload{})
248+
tests := createTest("gollum.json", &GollumPayload{}, &GollumPayload{})
249249
for _, tt := range tests {
250250
tc := tt
251251
t.Run(tt.name, func(t *testing.T) {

0 commit comments

Comments
 (0)