Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added zabbix_action module #49189

Merged
merged 38 commits into from
Dec 2, 2018
Merged

Added zabbix_action module #49189

merged 38 commits into from
Dec 2, 2018

Conversation

rubentsirunyan
Copy link
Contributor

SUMMARY

Implements zabbix_action module to manipulate Zabbix action objects on Zabbix server via API.

ISSUE TYPE
  • New Module Pull Request
COMPONENT NAME

zabbix_action

ADDITIONAL INFORMATION

@ansibot ansibot added ci_verified Changes made in this PR are causing tests to fail. needs_revision This PR fails CI tests or a maintainer has requested a review/revision of the PR. and removed merge_commit This PR contains at least one merge commit. Please resolve! needs_rebase https://docs.ansible.com/ansible/devel/dev_guide/developing_rebasing.html labels Nov 27, 2018
@ansibot ansibot removed the ci_verified Changes made in this PR are causing tests to fail. label Nov 27, 2018
@ansibot
Copy link
Contributor

ansibot commented Nov 27, 2018

@Akint @D3DeFi @abulimov @akomic @cove @dj-wasabi @eikef @harrisongu @logan2211 @RedWhiteMiko @sookido

As a maintainer of a module in the same namespace this new module has been submitted to, your vote counts for shipits. Please review this module and add shipit if you would like to see it merged.

click here for bot help

@ansibot ansibot added community_review In order to be merged, this PR must follow the community review workflow. and removed needs_revision This PR fails CI tests or a maintainer has requested a review/revision of the PR. labels Nov 27, 2018
@resmo
Copy link
Contributor

resmo commented Nov 29, 2018

does not look too bad, I would label it shippable, @D3DeFi any comments?

(it actually looks very good, good job!)

@ansibot ansibot removed the needs_triage Needs a first human triage before being processed. label Nov 29, 2018
@D3DeFi
Copy link
Contributor

D3DeFi commented Nov 29, 2018

Agree @resmo , very nice and readable addition. I was scrolling through it earlier today and wanted to test it with multiple zabbix-server versions, but haven't had that much time to actually do it. I can test it tomorrow or we can ship it right away if you want.

@rubentsirunyan thank you for your awesome contribution!

@resmo
Copy link
Contributor

resmo commented Nov 30, 2018

waiting for your feedback after testing

@resmo resmo self-assigned this Nov 30, 2018
Copy link
Contributor

@D3DeFi D3DeFi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am usually testing changes against all current Zabbix-server LTS releases 2.2, 3.0, 4.0. There is, however, no rule established, which versions should be supported in ansible zabbix modules.

Note that I've basically just tested cases documented in EXAMPLES.

This module doesn't work with 2.2 release and requires explicitly setting esc_period to 60 instead of default 1h to work on 3.0 release. (See my comments below).

Works as intended for 3.4 and 4.0, except a single idempotency problem I am mentioning later in my comments.

I would say there are these options:

  • code support for older versions of zabbix (2.2 end of limited support - 31 August, 2019; 3.0 end of full support - 28 February, 2019)
  • explicitly specify, that this module requires Zabbix-server 3.4 or higher (should go somewhere to requirements: in DOCUMENTATION variable? @resmo)
  • change default values from string representations (e.g. 1h) to integers (e.g. 60) for options like esc_period and specify that this module requires Zabbix-server 3.0 or higher to run and Zabbix-server 3.4 to use ACK & recovery operations on actions (this should go to documentation under each module argument afaik - see my comments below)

IMO we can go with the 2nd option and lock this module only for 3.4+ releases. Idempotency fix can be delivered later via PR as I don't think that is something groundbreaking for now. What do you think guys?

@rubentsirunyan with merging of this PR you're becoming module maintainer so I am interested in your opinion in this as well :)

@D3DeFi
Copy link
Contributor

D3DeFi commented Nov 30, 2018

Sorry for verbosity, I got carried away a bit

@rubentsirunyan
Copy link
Contributor Author

@D3DeFi Thanks for the detailed review. I would go with the third option (+ delivering idempotency fix later via PR). I'll do the necessary changes and update the PR today.

@rubentsirunyan
Copy link
Contributor Author

@D3DeFi resolved all the issues including the idempotency issue.

@D3DeFi
Copy link
Contributor

D3DeFi commented Dec 1, 2018

Thank you for fixing it on such a short notice :)

@D3DeFi
Copy link
Contributor

D3DeFi commented Dec 1, 2018

shipit

@resmo
Copy link
Contributor

resmo commented Dec 2, 2018

Merging... Thanks @rubentsirunyan, good job! And thanks @D3DeFi for the review.

@resmo resmo merged commit d62492e into ansible:devel Dec 2, 2018
kbreit pushed a commit to kbreit/ansible that referenced this pull request Jan 11, 2019
@dagwieers dagwieers added the zabbix Zabbix community label Jan 28, 2019
@ansible ansible locked and limited conversation to collaborators Jul 22, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
affects_2.8 This issue/PR affects Ansible v2.8 community_review In order to be merged, this PR must follow the community review workflow. module This issue/PR relates to a module. new_contributor This PR is the first contribution by a new community member. new_module This PR includes a new module. new_plugin This PR includes a new plugin. support:community This issue/PR relates to code supported by the Ansible community. zabbix Zabbix community
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants