{"action":"closed","number":323,"pull_request":{"url":"https://api.github.com/repos/theforeman/puppet-puppet/pulls/323","id":49066856,"html_url":"https://github.com/theforeman/puppet-puppet/pull/323","diff_url":"https://github.com/theforeman/puppet-puppet/pull/323.diff","patch_url":"https://github.com/theforeman/puppet-puppet/pull/323.patch","issue_url":"https://api.github.com/repos/theforeman/puppet-puppet/issues/323","number":323,"state":"closed","locked":false,"title":"Start working on systemd timer support","user":{"login":"GregSutcliffe","id":827786,"avatar_url":"https://avatars.githubusercontent.com/u/827786?v=3","gravatar_id":"","url":"https://api.github.com/users/GregSutcliffe","html_url":"https://github.com/GregSutcliffe","followers_url":"https://api.github.com/users/GregSutcliffe/followers","following_url":"https://api.github.com/users/GregSutcliffe/following{/other_user}","gists_url":"https://api.github.com/users/GregSutcliffe/gists{/gist_id}","starred_url":"https://api.github.com/users/GregSutcliffe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GregSutcliffe/subscriptions","organizations_url":"https://api.github.com/users/GregSutcliffe/orgs","repos_url":"https://api.github.com/users/GregSutcliffe/repos","events_url":"https://api.github.com/users/GregSutcliffe/events{/privacy}","received_events_url":"https://api.github.com/users/GregSutcliffe/received_events","type":"User","site_admin":false},"body":"This is a start, just to see if upstream want such a patch - I'm using it to good effect on my local systems.\r\n\r\nFor background, systemd can replicate the functionality of cron, which has some pros and some cons. Further, Archlinux is no longer shipping a cron daemon by default, and moving over to systemd timers. This patch adds support for a scheduled run of the agent via systemd timers.\r\n\r\nThis is a PoC. If there's upstream interest, then I still need to:\r\n\r\n* correctly use `$puppet@::cron_cmd\r\n* correctly clean up files/services depending on which option is used\r\n* Add tests\r\n* [optional] Split each of the three options to it's own subclass\r\n\r\nHappy to do so if this is the right direction. Thoughts?","created_at":"2015-10-28T21:05:24Z","updated_at":"2015-11-24T10:22:44Z","closed_at":"2015-11-24T10:22:44Z","merged_at":null,"merge_commit_sha":"f404dd9c21ffb798d3ca893d87fdcff16122385c","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/theforeman/puppet-puppet/pulls/323/commits","review_comments_url":"https://api.github.com/repos/theforeman/puppet-puppet/pulls/323/comments","review_comment_url":"https://api.github.com/repos/theforeman/puppet-puppet/pulls/comments{/number}","comments_url":"https://api.github.com/repos/theforeman/puppet-puppet/issues/323/comments","statuses_url":"https://api.github.com/repos/theforeman/puppet-puppet/statuses/21ff4e191c2e5835216d2d62a89bfd8faf5fad26","head":{"label":"GregSutcliffe:timers","ref":"timers","sha":"21ff4e191c2e5835216d2d62a89bfd8faf5fad26","user":{"login":"GregSutcliffe","id":827786,"avatar_url":"https://avatars.githubusercontent.com/u/827786?v=3","gravatar_id":"","url":"https://api.github.com/users/GregSutcliffe","html_url":"https://github.com/GregSutcliffe","followers_url":"https://api.github.com/users/GregSutcliffe/followers","following_url":"https://api.github.com/users/GregSutcliffe/following{/other_user}","gists_url":"https://api.github.com/users/GregSutcliffe/gists{/gist_id}","starred_url":"https://api.github.com/users/GregSutcliffe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GregSutcliffe/subscriptions","organizations_url":"https://api.github.com/users/GregSutcliffe/orgs","repos_url":"https://api.github.com/users/GregSutcliffe/repos","events_url":"https://api.github.com/users/GregSutcliffe/events{/privacy}","received_events_url":"https://api.github.com/users/GregSutcliffe/received_events","type":"User","site_admin":false},"repo":{"id":3885276,"name":"puppet-puppet","full_name":"GregSutcliffe/puppet-puppet","owner":{"login":"GregSutcliffe","id":827786,"avatar_url":"https://avatars.githubusercontent.com/u/827786?v=3","gravatar_id":"","url":"https://api.github.com/users/GregSutcliffe","html_url":"https://github.com/GregSutcliffe","followers_url":"https://api.github.com/users/GregSutcliffe/followers","following_url":"https://api.github.com/users/GregSutcliffe/following{/other_user}","gists_url":"https://api.github.com/users/GregSutcliffe/gists{/gist_id}","starred_url":"https://api.github.com/users/GregSutcliffe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GregSutcliffe/subscriptions","organizations_url":"https://api.github.com/users/GregSutcliffe/orgs","repos_url":"https://api.github.com/users/GregSutcliffe/repos","events_url":"https://api.github.com/users/GregSutcliffe/events{/privacy}","received_events_url":"https://api.github.com/users/GregSutcliffe/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/GregSutcliffe/puppet-puppet","description":"","fork":true,"url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet","forks_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/forks","keys_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/keys{/key_id}","collaborators_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/teams","hooks_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/hooks","issue_events_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/issues/events{/number}","events_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/events","assignees_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/assignees{/user}","branches_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/branches{/branch}","tags_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/tags","blobs_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/git/refs{/sha}","trees_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/git/trees{/sha}","statuses_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/statuses/{sha}","languages_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/languages","stargazers_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/stargazers","contributors_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/contributors","subscribers_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/subscribers","subscription_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/subscription","commits_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/commits{/sha}","git_commits_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/git/commits{/sha}","comments_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/comments{/number}","issue_comment_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/issues/comments{/number}","contents_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/contents/{+path}","compare_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/compare/{base}...{head}","merges_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/merges","archive_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/downloads","issues_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/issues{/number}","pulls_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/pulls{/number}","milestones_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/milestones{/number}","notifications_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/labels{/name}","releases_url":"https://api.github.com/repos/GregSutcliffe/puppet-puppet/releases{/id}","created_at":"2012-03-31T12:17:25Z","updated_at":"2014-05-07T13:22:50Z","pushed_at":"2015-11-21T21:11:13Z","git_url":"git://github.com/GregSutcliffe/puppet-puppet.git","ssh_url":"git@github.com:GregSutcliffe/puppet-puppet.git","clone_url":"https://github.com/GregSutcliffe/puppet-puppet.git","svn_url":"https://github.com/GregSutcliffe/puppet-puppet","homepage":"","size":534,"stargazers_count":2,"watchers_count":2,"language":"Puppet","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":1,"forks":1,"open_issues":1,"watchers":2,"default_branch":"master"}},"base":{"label":"theforeman:master","ref":"master","sha":"00f68dc4bd0a13c700782562f438dafff2c02e7a","user":{"login":"theforeman","id":1439844,"avatar_url":"https://avatars.githubusercontent.com/u/1439844?v=3","gravatar_id":"","url":"https://api.github.com/users/theforeman","html_url":"https://github.com/theforeman","followers_url":"https://api.github.com/users/theforeman/followers","following_url":"https://api.github.com/users/theforeman/following{/other_user}","gists_url":"https://api.github.com/users/theforeman/gists{/gist_id}","starred_url":"https://api.github.com/users/theforeman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/theforeman/subscriptions","organizations_url":"https://api.github.com/users/theforeman/orgs","repos_url":"https://api.github.com/users/theforeman/repos","events_url":"https://api.github.com/users/theforeman/events{/privacy}","received_events_url":"https://api.github.com/users/theforeman/received_events","type":"Organization","site_admin":false},"repo":{"id":3449635,"name":"puppet-puppet","full_name":"theforeman/puppet-puppet","owner":{"login":"theforeman","id":1439844,"avatar_url":"https://avatars.githubusercontent.com/u/1439844?v=3","gravatar_id":"","url":"https://api.github.com/users/theforeman","html_url":"https://github.com/theforeman","followers_url":"https://api.github.com/users/theforeman/followers","following_url":"https://api.github.com/users/theforeman/following{/other_user}","gists_url":"https://api.github.com/users/theforeman/gists{/gist_id}","starred_url":"https://api.github.com/users/theforeman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/theforeman/subscriptions","organizations_url":"https://api.github.com/users/theforeman/orgs","repos_url":"https://api.github.com/users/theforeman/repos","events_url":"https://api.github.com/users/theforeman/events{/privacy}","received_events_url":"https://api.github.com/users/theforeman/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/theforeman/puppet-puppet","description":"Puppet module for Puppet client and server","fork":false,"url":"https://api.github.com/repos/theforeman/puppet-puppet","forks_url":"https://api.github.com/repos/theforeman/puppet-puppet/forks","keys_url":"https://api.github.com/repos/theforeman/puppet-puppet/keys{/key_id}","collaborators_url":"https://api.github.com/repos/theforeman/puppet-puppet/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/theforeman/puppet-puppet/teams","hooks_url":"https://api.github.com/repos/theforeman/puppet-puppet/hooks","issue_events_url":"https://api.github.com/repos/theforeman/puppet-puppet/issues/events{/number}","events_url":"https://api.github.com/repos/theforeman/puppet-puppet/events","assignees_url":"https://api.github.com/repos/theforeman/puppet-puppet/assignees{/user}","branches_url":"https://api.github.com/repos/theforeman/puppet-puppet/branches{/branch}","tags_url":"https://api.github.com/repos/theforeman/puppet-puppet/tags","blobs_url":"https://api.github.com/repos/theforeman/puppet-puppet/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/theforeman/puppet-puppet/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/theforeman/puppet-puppet/git/refs{/sha}","trees_url":"https://api.github.com/repos/theforeman/puppet-puppet/git/trees{/sha}","statuses_url":"https://api.github.com/repos/theforeman/puppet-puppet/statuses/{sha}","languages_url":"https://api.github.com/repos/theforeman/puppet-puppet/languages","stargazers_url":"https://api.github.com/repos/theforeman/puppet-puppet/stargazers","contributors_url":"https://api.github.com/repos/theforeman/puppet-puppet/contributors","subscribers_url":"https://api.github.com/repos/theforeman/puppet-puppet/subscribers","subscription_url":"https://api.github.com/repos/theforeman/puppet-puppet/subscription","commits_url":"https://api.github.com/repos/theforeman/puppet-puppet/commits{/sha}","git_commits_url":"https://api.github.com/repos/theforeman/puppet-puppet/git/commits{/sha}","comments_url":"https://api.github.com/repos/theforeman/puppet-puppet/comments{/number}","issue_comment_url":"https://api.github.com/repos/theforeman/puppet-puppet/issues/comments{/number}","contents_url":"https://api.github.com/repos/theforeman/puppet-puppet/contents/{+path}","compare_url":"https://api.github.com/repos/theforeman/puppet-puppet/compare/{base}...{head}","merges_url":"https://api.github.com/repos/theforeman/puppet-puppet/merges","archive_url":"https://api.github.com/repos/theforeman/puppet-puppet/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/theforeman/puppet-puppet/downloads","issues_url":"https://api.github.com/repos/theforeman/puppet-puppet/issues{/number}","pulls_url":"https://api.github.com/repos/theforeman/puppet-puppet/pulls{/number}","milestones_url":"https://api.github.com/repos/theforeman/puppet-puppet/milestones{/number}","notifications_url":"https://api.github.com/repos/theforeman/puppet-puppet/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/theforeman/puppet-puppet/labels{/name}","releases_url":"https://api.github.com/repos/theforeman/puppet-puppet/releases{/id}","created_at":"2012-02-15T13:23:34Z","updated_at":"2015-11-12T09:47:01Z","pushed_at":"2015-11-24T10:22:43Z","git_url":"git://github.com/theforeman/puppet-puppet.git","ssh_url":"git@github.com:theforeman/puppet-puppet.git","clone_url":"https://github.com/theforeman/puppet-puppet.git","svn_url":"https://github.com/theforeman/puppet-puppet","homepage":"","size":828,"stargazers_count":49,"watchers_count":49,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":119,"mirror_url":null,"open_issues_count":26,"forks":119,"open_issues":26,"watchers":49,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/theforeman/puppet-puppet/pulls/323"},"html":{"href":"https://github.com/theforeman/puppet-puppet/pull/323"},"issue":{"href":"https://api.github.com/repos/theforeman/puppet-puppet/issues/323"},"comments":{"href":"https://api.github.com/repos/theforeman/puppet-puppet/issues/323/comments"},"review_comments":{"href":"https://api.github.com/repos/theforeman/puppet-puppet/pulls/323/comments"},"review_comment":{"href":"https://api.github.com/repos/theforeman/puppet-puppet/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/theforeman/puppet-puppet/pulls/323/commits"},"statuses":{"href":"https://api.github.com/repos/theforeman/puppet-puppet/statuses/21ff4e191c2e5835216d2d62a89bfd8faf5fad26"}},"merged":false,"mergeable":false,"mergeable_state":"dirty","merged_by":null,"comments":5,"review_comments":1,"commits":1,"additions":268,"deletions":55,"changed_files":7}}