{"action":"created","issue":{"url":"https://api.github.com/repos/containerd/cri/issues/1248","repository_url":"https://api.github.com/repos/containerd/cri","labels_url":"https://api.github.com/repos/containerd/cri/issues/1248/labels{/name}","comments_url":"https://api.github.com/repos/containerd/cri/issues/1248/comments","events_url":"https://api.github.com/repos/containerd/cri/issues/1248/events","html_url":"https://github.com/containerd/cri/pull/1248","id":485998050,"node_id":"MDExOlB1bGxSZXF1ZXN0MzExNTM4MDAw","number":1248,"title":"[WIP] adds option for setting default oci hooks","user":{"login":"mikebrow","id":12767641,"node_id":"MDQ6VXNlcjEyNzY3NjQx","avatar_url":"https://avatars0.githubusercontent.com/u/12767641?v=4","gravatar_id":"","url":"https://api.github.com/users/mikebrow","html_url":"https://github.com/mikebrow","followers_url":"https://api.github.com/users/mikebrow/followers","following_url":"https://api.github.com/users/mikebrow/following{/other_user}","gists_url":"https://api.github.com/users/mikebrow/gists{/gist_id}","starred_url":"https://api.github.com/users/mikebrow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mikebrow/subscriptions","organizations_url":"https://api.github.com/users/mikebrow/orgs","repos_url":"https://api.github.com/users/mikebrow/repos","events_url":"https://api.github.com/users/mikebrow/events{/privacy}","received_events_url":"https://api.github.com/users/mikebrow/received_events","type":"User","site_admin":false},"labels":[{"id":677857936,"node_id":"MDU6TGFiZWw2Nzc4NTc5MzY=","url":"https://api.github.com/repos/containerd/cri/labels/size/M","name":"size/M","color":"ededed","default":false}],"state":"open","locked":false,"assignee":{"login":"Random-Liu","id":5821883,"node_id":"MDQ6VXNlcjU4MjE4ODM=","avatar_url":"https://avatars3.githubusercontent.com/u/5821883?v=4","gravatar_id":"","url":"https://api.github.com/users/Random-Liu","html_url":"https://github.com/Random-Liu","followers_url":"https://api.github.com/users/Random-Liu/followers","following_url":"https://api.github.com/users/Random-Liu/following{/other_user}","gists_url":"https://api.github.com/users/Random-Liu/gists{/gist_id}","starred_url":"https://api.github.com/users/Random-Liu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Random-Liu/subscriptions","organizations_url":"https://api.github.com/users/Random-Liu/orgs","repos_url":"https://api.github.com/users/Random-Liu/repos","events_url":"https://api.github.com/users/Random-Liu/events{/privacy}","received_events_url":"https://api.github.com/users/Random-Liu/received_events","type":"User","site_admin":false},"assignees":[{"login":"Random-Liu","id":5821883,"node_id":"MDQ6VXNlcjU4MjE4ODM=","avatar_url":"https://avatars3.githubusercontent.com/u/5821883?v=4","gravatar_id":"","url":"https://api.github.com/users/Random-Liu","html_url":"https://github.com/Random-Liu","followers_url":"https://api.github.com/users/Random-Liu/followers","following_url":"https://api.github.com/users/Random-Liu/following{/other_user}","gists_url":"https://api.github.com/users/Random-Liu/gists{/gist_id}","starred_url":"https://api.github.com/users/Random-Liu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Random-Liu/subscriptions","organizations_url":"https://api.github.com/users/Random-Liu/orgs","repos_url":"https://api.github.com/users/Random-Liu/repos","events_url":"https://api.github.com/users/Random-Liu/events{/privacy}","received_events_url":"https://api.github.com/users/Random-Liu/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/containerd/cri/milestones/22","html_url":"https://github.com/containerd/cri/milestone/22","labels_url":"https://api.github.com/repos/containerd/cri/milestones/22/labels","id":4592847,"node_id":"MDk6TWlsZXN0b25lNDU5Mjg0Nw==","number":22,"title":"v1.4","description":"","creator":{"login":"Random-Liu","id":5821883,"node_id":"MDQ6VXNlcjU4MjE4ODM=","avatar_url":"https://avatars3.githubusercontent.com/u/5821883?v=4","gravatar_id":"","url":"https://api.github.com/users/Random-Liu","html_url":"https://github.com/Random-Liu","followers_url":"https://api.github.com/users/Random-Liu/followers","following_url":"https://api.github.com/users/Random-Liu/following{/other_user}","gists_url":"https://api.github.com/users/Random-Liu/gists{/gist_id}","starred_url":"https://api.github.com/users/Random-Liu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Random-Liu/subscriptions","organizations_url":"https://api.github.com/users/Random-Liu/orgs","repos_url":"https://api.github.com/users/Random-Liu/repos","events_url":"https://api.github.com/users/Random-Liu/events{/privacy}","received_events_url":"https://api.github.com/users/Random-Liu/received_events","type":"User","site_admin":false},"open_issues":6,"closed_issues":3,"state":"open","created_at":"2019-08-21T18:12:57Z","updated_at":"2019-09-05T06:35:12Z","due_on":null,"closed_at":null},"comments":13,"created_at":"2019-08-27T19:42:57Z","updated_at":"2019-09-06T16:44:20Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/containerd/cri/pulls/1248","html_url":"https://github.com/containerd/cri/pull/1248","diff_url":"https://github.com/containerd/cri/pull/1248.diff","patch_url":"https://github.com/containerd/cri/pull/1248.patch"},"body":"To address issue #405 I've started a prototype. Actually this is a refactor'd prototype from #496 taking into account comments and updating to work with the current codebase. I closed the prior prototype PR because I had deleted that branch.\r\n\r\nUser must generate a json file for the hooks struct: https://github.com/opencontainers/runtime-spec/blob/master/specs-go/config.go#L114-L130\r\n\r\nHooks explained here: https://github.com/opencontainers/runtime-spec/blob/master/config.md#prestart\r\n\r\nSigned-off-by: Mike Brown <brownwm@us.ibm.com>"},"comment":{"url":"https://api.github.com/repos/containerd/cri/issues/comments/528927849","html_url":"https://github.com/containerd/cri/pull/1248#issuecomment-528927849","issue_url":"https://api.github.com/repos/containerd/cri/issues/1248","id":528927849,"node_id":"MDEyOklzc3VlQ29tbWVudDUyODkyNzg0OQ==","user":{"login":"Random-Liu","id":5821883,"node_id":"MDQ6VXNlcjU4MjE4ODM=","avatar_url":"https://avatars3.githubusercontent.com/u/5821883?v=4","gravatar_id":"","url":"https://api.github.com/users/Random-Liu","html_url":"https://github.com/Random-Liu","followers_url":"https://api.github.com/users/Random-Liu/followers","following_url":"https://api.github.com/users/Random-Liu/following{/other_user}","gists_url":"https://api.github.com/users/Random-Liu/gists{/gist_id}","starred_url":"https://api.github.com/users/Random-Liu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Random-Liu/subscriptions","organizations_url":"https://api.github.com/users/Random-Liu/orgs","repos_url":"https://api.github.com/users/Random-Liu/repos","events_url":"https://api.github.com/users/Random-Liu/events{/privacy}","received_events_url":"https://api.github.com/users/Random-Liu/received_events","type":"User","site_admin":false},"created_at":"2019-09-06T16:44:20Z","updated_at":"2019-09-06T16:44:20Z","author_association":"MEMBER","body":"> Hooks are in some sense similar to the idea of runtimeClass: upper layers might want to add \"for this pod/container run hooks $id\", and on lower layers (containerd, cri-o, ...) it might be mapping that \"$id\" actually means \"running xyz.sh with arguments as prestart\", and \"abc.sh as poststop\".\r\n\r\nAgree. And that is just what I proposed in option 1 in https://github.com/containerd/cri/pull/1248#issuecomment-528675517. The \"$id\" is the well formatted hook (file) name, similar to today's apparmor profile and seccomp profile. https://github.com/njnikoo/Kubernetes/blob/master/docs/design/seccomp.md\r\n\r\nAs for whether we should support absolute path. I'm fine with either. We'll disrecommend it if we support it anyway."}}
{"actor":{"display_login":"Random-Liu"}}