{"action":"created","issue":{"url":"https://api.github.com/repos/rdo-puppet-modules/puppet-firewalld/issues/28","labels_url":"https://api.github.com/repos/rdo-puppet-modules/puppet-firewalld/issues/28/labels{/name}","comments_url":"https://api.github.com/repos/rdo-puppet-modules/puppet-firewalld/issues/28/comments","events_url":"https://api.github.com/repos/rdo-puppet-modules/puppet-firewalld/issues/28/events","html_url":"https://github.com/rdo-puppet-modules/puppet-firewalld/pull/28","id":93879862,"number":28,"title":"Major update on module","user":{"login":"asasfu","id":11634602,"avatar_url":"https://avatars.githubusercontent.com/u/11634602?v=3","gravatar_id":"","url":"https://api.github.com/users/asasfu","html_url":"https://github.com/asasfu","followers_url":"https://api.github.com/users/asasfu/followers","following_url":"https://api.github.com/users/asasfu/following{/other_user}","gists_url":"https://api.github.com/users/asasfu/gists{/gist_id}","starred_url":"https://api.github.com/users/asasfu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asasfu/subscriptions","organizations_url":"https://api.github.com/users/asasfu/orgs","repos_url":"https://api.github.com/users/asasfu/repos","events_url":"https://api.github.com/users/asasfu/events{/privacy}","received_events_url":"https://api.github.com/users/asasfu/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2015-07-08T20:14:31Z","updated_at":"2015-08-31T22:39:37Z","closed_at":"2015-08-31T22:39:37Z","pull_request":{"url":"https://api.github.com/repos/rdo-puppet-modules/puppet-firewalld/pulls/28","html_url":"https://github.com/rdo-puppet-modules/puppet-firewalld/pull/28","diff_url":"https://github.com/rdo-puppet-modules/puppet-firewalld/pull/28.diff","patch_url":"https://github.com/rdo-puppet-modules/puppet-firewalld/pull/28.patch"},"body":"I would definitely bump the version and maybe consider putting this to 1.0 \r\nThe rich rules manifest/method, if applying to a zone that you are trying to manage at the same time with the zone manifest/method, seems to cause it to submit a reload everytime as it notices a change due to 2 places making changes to the same item.  I have not fixed this, I do not currently use the functionality of adding rich_rules aside from zone.  Rather I do everything in one zone submission.\r\nI have patched tonnes of issues and updated some functionality to make it very smooth, utilized --reload instead of --complete-reload as well to supposedly avoid any chance of dropped connections.  Also put in a lot of insync checks to make sure that if someone removes a line of code from their node manifest for the zone, it will actually notice it for array values, it didn't before.\r\nI would recommend you look over all the changes for yourself but it should be satisfactory.  \r\n\r\nAs you will possibly also notice.  I updated the output of XML format for the zone file.  Comments are included in the code.  Fixes firewall-cmd issues and also may resolve one of the issues comments on this module in relation to to hiera with zone.xml and forward-port.  But I have not tested if it fixes that.\r\n\r\nI also made it so that if you put an interface in or take it out of the puppet manifest for a zone then it will manage that AND run a change zone of interface permanent and immediate for that interface.  While still only running a reload on firewalld rather than needing to restart the whole service to support this.\r\n\r\nFYI, this code also contains the code from koweblomke's #24  pull request as it seemed good to me, though I don't use it at this time.\r\n\r\nI would also recommend you take a look at my additional addon module for firewalld: https://github.com/sfu-rcg/sfu_fwd - where I built a parser to allow people to submit rich_rules using arrays for their: source address, destination address, and services.  This allows for much less input by the user while it creates the rules for them using all possible combinations based off their specification ie. src add: ['1.1.1.1','2.2.2.2'], dst add: ['5.5.5.5','6.6.6.6'], svc: ['ssh','vnc-server']  would result in a few rules that look like: {src add: '1.1.1.1', dst add: '5.5.5.5', svc: 'ssh'} {src add: '1.1.1.1', dst add: '5.5.5.5', svc: 'vnc-server'} {src add: '1.1.1.1', dst add: '6.6.6.6', svc: 'ssh'} etc. etc.\r\nMakes things much easier for an admin in my opinion if they have things like trusted networks that have multiple subnets.  Also built for supporting foreman via create_resources.\r\n\r\nFeel free to ask me questions or comment on it."},"comment":{"url":"https://api.github.com/repos/rdo-puppet-modules/puppet-firewalld/issues/comments/136519561","html_url":"https://github.com/rdo-puppet-modules/puppet-firewalld/pull/28#issuecomment-136519561","issue_url":"https://api.github.com/repos/rdo-puppet-modules/puppet-firewalld/issues/28","id":136519561,"user":{"login":"asasfu","id":11634602,"avatar_url":"https://avatars.githubusercontent.com/u/11634602?v=3","gravatar_id":"","url":"https://api.github.com/users/asasfu","html_url":"https://github.com/asasfu","followers_url":"https://api.github.com/users/asasfu/followers","following_url":"https://api.github.com/users/asasfu/following{/other_user}","gists_url":"https://api.github.com/users/asasfu/gists{/gist_id}","starred_url":"https://api.github.com/users/asasfu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asasfu/subscriptions","organizations_url":"https://api.github.com/users/asasfu/orgs","repos_url":"https://api.github.com/users/asasfu/repos","events_url":"https://api.github.com/users/asasfu/events{/privacy}","received_events_url":"https://api.github.com/users/asasfu/received_events","type":"User","site_admin":false},"created_at":"2015-08-31T22:39:37Z","updated_at":"2015-08-31T22:39:37Z","body":"@xbezdick , I'm going to close this pull request and submit another one soon with it rebased and cleaned up as you mentioned.  I'm bumping another fix for reloads happening when log is used into my current version.  I'll push the PR when I have this ready."}}