Payload 참고
[Plack::Sandbox::_2fhome_2fimyaman_2fwebhook_2dgithub_2ddevopskoreaorg_2fapp_2epl:9715] debug @2019-04-10 23:54:51> $VAR1 = {
'pusher' => {
'name' => 'imyaman',
'email' => 'imyaman@netscape.net'
},
'deleted' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
'repository' => {
'updated_at' => '2019-04-10T14:52:41Z',
'issues_url' => 'https://api.github.com/repos/imyaman/sys5-co/issues{/number}',
'created_at' => 1498210322,
'tags_url' => 'https://api.github.com/repos/imyaman/sys5-co/tags',
'issue_comment_url' => 'https://api.github.com/repos/imyaman/sys5-co/issues/comments{/number}',
'contributors_url' => 'https://api.github.com/repos/imyaman/sys5-co/contributors',
'comments_url' => 'https://api.github.com/repos/imyaman/sys5-co/comments{/number}',
'watchers' => 0,
'git_tags_url' => 'https://api.github.com/repos/imyaman/sys5-co/git/tags{/sha}',
'compare_url' => 'https://api.github.com/repos/imyaman/sys5-co/compare/{base}...{head}',
'id' => 95205676,
'assignees_url' => 'https://api.github.com/repos/imyaman/sys5-co/assignees{/user}',
'archived' => $VAR1->{'deleted'},
'url' => 'https://github.com/imyaman/sys5-co',
'collaborators_url' => 'https://api.github.com/repos/imyaman/sys5-co/collaborators{/collaborator}',
'html_url' => 'https://github.com/imyaman/sys5-co',
'commits_url' => 'https://api.github.com/repos/imyaman/sys5-co/commits{/sha}',
'issue_events_url' => 'https://api.github.com/repos/imyaman/sys5-co/issues/events{/number}',
'notifications_url' => 'https://api.github.com/repos/imyaman/sys5-co/notifications{?since,all,participating}',
'svn_url' => 'https://github.com/imyaman/sys5-co',
'fork' => $VAR1->{'deleted'},
'git_refs_url' => 'https://api.github.com/repos/imyaman/sys5-co/git/refs{/sha}',
'forks_url' => 'https://api.github.com/repos/imyaman/sys5-co/forks',
'contents_url' => 'https://api.github.com/repos/imyaman/sys5-co/contents/{+path}',
'size' => 1454,
'has_downloads' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
'node_id' => 'MDEwOlJlcG9zaXRvcnk5NTIwNTY3Ng==',
'labels_url' => 'https://api.github.com/repos/imyaman/sys5-co/labels{/name}',
'milestones_url' => 'https://api.github.com/repos/imyaman/sys5-co/milestones{/number}',
'has_projects' => $VAR1->{'repository'}{'has_downloads'},
'ssh_url' => 'git@github.com:imyaman/sys5-co.git',
'keys_url' => 'https://api.github.com/repos/imyaman/sys5-co/keys{/key_id}',
'merges_url' => 'https://api.github.com/repos/imyaman/sys5-co/merges',
'watchers_count' => 0,
'trees_url' => 'https://api.github.com/repos/imyaman/sys5-co/git/trees{/sha}',
'private' => $VAR1->{'deleted'},
'statuses_url' => 'https://api.github.com/repos/imyaman/sys5-co/statuses/{sha}',
'has_issues' => $VAR1->{'repository'}{'has_downloads'},
'downloads_url' => 'https://api.github.com/repos/imyaman/sys5-co/downloads',
'deployments_url' => 'https://api.github.com/repos/imyaman/sys5-co/deployments',
'full_name' => 'imyaman/sys5-co',
'stargazers_url' => 'https://api.github.com/repos/imyaman/sys5-co/stargazers',
'blobs_url' => 'https://api.github.com/repos/imyaman/sys5-co/git/blobs{/sha}',
'default_branch' => 'master',
'languages_url' => 'https://api.github.com/repos/imyaman/sys5-co/languages',
'stargazers' => 0,
'description' => undef,
'teams_url' => 'https://api.github.com/repos/imyaman/sys5-co/teams',
'stargazers_count' => 0,
'git_commits_url' => 'https://api.github.com/repos/imyaman/sys5-co/git/commits{/sha}',
'owner' => {
'organizations_url' => 'https://api.github.com/users/imyaman/orgs',
'avatar_url' => 'https://avatars0.githubusercontent.com/u/1654540?v=4',
'gravatar_id' => '',
'id' => 1654540,
'received_events_url' => 'https://api.github.com/users/imyaman/received_events',
'node_id' => 'MDQ6VXNlcjE2NTQ1NDA=',
'email' => 'imyaman@netscape.net',
'name' => 'imyaman',
'following_url' => 'https://api.github.com/users/imyaman/following{/other_user}',
'html_url' => 'https://github.com/imyaman',
'login' => 'imyaman',
'url' => 'https://api.github.com/users/imyaman',
'site_admin' => $VAR1->{'deleted'},
'subscriptions_url' => 'https://api.github.com/users/imyaman/subscriptions',
'starred_url' => 'https://api.github.com/users/imyaman/starred{/owner}{/repo}',
'type' => 'User',
'repos_url' => 'https://api.github.com/users/imyaman/repos',
'events_url' => 'https://api.github.com/users/imyaman/events{/privacy}',
'gists_url' => 'https://api.github.com/users/imyaman/gists{/gist_id}',
'followers_url' => 'https://api.github.com/users/imyaman/followers'
},
'hooks_url' => 'https://api.github.com/repos/imyaman/sys5-co/hooks',
'archive_url' => 'https://api.github.com/repos/imyaman/sys5-co/{archive_format}{/ref}',
'name' => 'sys5-co',
'pulls_url' => 'https://api.github.com/repos/imyaman/sys5-co/pulls{/number}',
'subscribers_url' => 'https://api.github.com/repos/imyaman/sys5-co/subscribers',
'license' => {
'url' => undef,
'node_id' => 'MDc6TGljZW5zZTA=',
'name' => 'Other',
'key' => 'other',
'spdx_id' => 'NOASSERTION'
},
'mirror_url' => undef,
'open_issues' => 0,
'forks' => 0,
'language' => 'HTML',
'pushed_at' => 1554908091,
'events_url' => 'https://api.github.com/repos/imyaman/sys5-co/events',
'master_branch' => 'master',
'git_url' => 'git://github.com/imyaman/sys5-co.git',
'subscription_url' => 'https://api.github.com/repos/imyaman/sys5-co/subscription',
'homepage' => undef,
'open_issues_count' => 0,
'clone_url' => 'https://github.com/imyaman/sys5-co.git',
'branches_url' => 'https://api.github.com/repos/imyaman/sys5-co/branches{/branch}',
'releases_url' => 'https://api.github.com/repos/imyaman/sys5-co/releases{/id}',
'has_pages' => $VAR1->{'deleted'},
'has_wiki' => $VAR1->{'repository'}{'has_downloads'},
'forks_count' => 0,
'disabled' => $VAR1->{'deleted'}
},
'forced' => $VAR1->{'deleted'},
'sender' => {
'repos_url' => 'https://api.github.com/users/imyaman/repos',
'type' => 'User',
'followers_url' => 'https://api.github.com/users/imyaman/followers',
'events_url' => 'https://api.github.com/users/imyaman/events{/privacy}',
'gists_url' => 'https://api.github.com/users/imyaman/gists{/gist_id}',
'node_id' => 'MDQ6VXNlcjE2NTQ1NDA=',
'received_events_url' => 'https://api.github.com/users/imyaman/received_events',
'gravatar_id' => '',
'avatar_url' => 'https://avatars0.githubusercontent.com/u/1654540?v=4',
'id' => 1654540,
'organizations_url' => 'https://api.github.com/users/imyaman/orgs',
'starred_url' => 'https://api.github.com/users/imyaman/starred{/owner}{/repo}',
'subscriptions_url' => 'https://api.github.com/users/imyaman/subscriptions',
'url' => 'https://api.github.com/users/imyaman',
'site_admin' => $VAR1->{'deleted'},
'login' => 'imyaman',
'html_url' => 'https://github.com/imyaman',
'following_url' => 'https://api.github.com/users/imyaman/following{/other_user}'
},
'head_commit' => {
'distinct' => $VAR1->{'repository'}{'has_downloads'},
'message' => 'Update+happytalk.html',
'id' => '726ce0521cfc061c0f12d63e5970bee51bdd7d84',
'removed' => [],
'modified' => [
'happytalk.html'
],
'tree_id' => '4bcb4192c801ad493158abc88606106339bac87d',
'author' => {
'name' => 'Sangyong+Gwak',
'email' => 'imyaman@netscape.net',
'username' => 'imyaman'
},
'url' => 'https://github.com/imyaman/sys5-co/commit/726ce0521cfc061c0f12d63e5970bee51bdd7d84',
'timestamp' => '2019-04-10T23:54:50+09:00',
'committer' => {
'email' => 'noreply@github.com',
'name' => 'GitHub',
'username' => 'web-flow'
},
'added' => []
},
'base_ref' => undef,
'compare' => 'https://github.com/imyaman/sys5-co/compare/65342976598d...726ce0521cfc',
'ref' => 'refs/heads/master',
'created' => $VAR1->{'deleted'},
'after' => '726ce0521cfc061c0f12d63e5970bee51bdd7d84',
'before' => '65342976598dd6f5ed0ec43dccdfb2a8b84a680f',
'commits' => [
{
'removed' => [],
'id' => '726ce0521cfc061c0f12d63e5970bee51bdd7d84',
'message' => 'Update+happytalk.html',
'distinct' => $VAR1->{'repository'}{'has_downloads'},
'author' => {
'name' => 'Sangyong+Gwak',
'email' => 'imyaman@netscape.net',
'username' => 'imyaman'
},
'tree_id' => '4bcb4192c801ad493158abc88606106339bac87d',
'modified' => [
'happytalk.html'
],
'url' => 'https://github.com/imyaman/sys5-co/commit/726ce0521cfc061c0f12d63e5970bee51bdd7d84',
'committer' => {
'username' => 'web-flow',
'name' => 'GitHub',
'email' => 'noreply@github.com'
},
'added' => [],
'timestamp' => '2019-04-10T23:54:50+09:00'
}
]
}; in /home/imyaman/webhook-github-devopskoreaorg/app.pl l. 42
[Plack::Sandbox::_2fhome_2fimyaman_2fwebhook_2dgithub_2ddevopskoreaorg_2fapp_2epl:9715] debug @2019-04-10 23:54:51> undef in /home/imyaman/webhook-github-devopskoreaorg/app.pl l. 44
my ($mybody, $mypayload, $mypayloadjson);
$mybody = request -> body;
$mypayload = $mybody;
$mypayload =~ s/payload=//;
$mypayload = uri_decode($mypayload);
$mypayloadjson = from_json($mypayload);
debug Dumper($mypayloadjson);