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

rds_param_group doesn't check DBParameterGroupFamily #1074

Closed
1 task done
Tyler-2 opened this issue Sep 14, 2022 · 2 comments · Fixed by #1169
Closed
1 task done

rds_param_group doesn't check DBParameterGroupFamily #1074

Tyler-2 opened this issue Sep 14, 2022 · 2 comments · Fixed by #1169
Assignees
Labels
bug This issue/PR relates to a bug jira module module plugins plugin (any type) python3

Comments

@Tyler-2
Copy link
Contributor

Tyler-2 commented Sep 14, 2022

Summary

When managing an RDS DB Parameter Group with the rds_param_group module, the module will happily create a parameter group with the specified engine, but it will not fail / error when you pass it an engine that would require modification.

For instance... This will create a parameter group:

      rds_param_group:
        name: "test_parameter_group"
        state: present
        engine: "aurora-postgresql13"
        params: "{{ db_instance_parameters }}"

But running this afterwards and changing the engine to aurora-postgresql14 will pass "ok", leading you to believe that the engine type is already aurora-postgresql14. In reality though, this should probably fail, because I don't think you can modify the db parameter group family after creating a parameter group.

Issue Type

Bug Report

Component Name

rds_param_group

Ansible Version

$ ansible --version
ansible [core 2.13.4]
  config file = None
  configured module search path = ['/var/lib/buildkite-agent/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /var/lib/buildkite-agent/.local/lib/python3.10/site-packages/ansible
  ansible collection location = /var/lib/buildkite-agent/.ansible/collections:/usr/share/ansible/collections
  executable location = /var/lib/buildkite-agent/.local/bin/ansible
  python version = 3.10.4 (main, Jun 29 2022, 12:14:53) [GCC 11.2.0]
  jinja version = 3.0.3
  libyaml = True

Collection Versions

$ ansible-galaxy collection list

# /var/lib/buildkite-agent/.local/lib/python3.10/site-packages/ansible_collections
Collection                    Version
----------------------------- -------
amazon.aws                    3.4.0  
ansible.netcommon             3.1.0  
ansible.posix                 1.4.0  
ansible.utils                 2.6.1  
ansible.windows               1.11.0 
arista.eos                    5.0.1  
awx.awx                       21.4.0 
azure.azcollection            1.13.0 
check_point.mgmt              2.3.0  
chocolatey.chocolatey         1.3.0  
cisco.aci                     2.2.0  
cisco.asa                     3.1.0  
cisco.dnac                    6.5.3  
cisco.intersight              1.0.19 
cisco.ios                     3.3.0  
cisco.iosxr                   3.3.0  
cisco.ise                     2.5.0  
cisco.meraki                  2.10.1 
cisco.mso                     2.0.0  
cisco.nso                     1.0.3  
cisco.nxos                    3.1.0  
cisco.ucs                     1.8.0  
cloud.common                  2.1.2  
cloudscale_ch.cloud           2.2.2  
community.aws                 3.5.0  
community.azure               1.1.0  
community.ciscosmb            1.0.5  
community.crypto              2.5.0  
community.digitalocean        1.21.0 
community.dns                 2.3.1  
community.docker              2.7.1  
community.fortios             1.0.0  
community.general             5.5.0  
community.google              1.0.0  
community.grafana             1.5.2  
community.hashi_vault         3.2.0  
community.hrobot              1.5.2  
community.libvirt             1.2.0  
community.mongodb             1.4.2  
community.mysql               3.4.0  
community.network             4.0.1  
community.okd                 2.2.0  
community.postgresql          2.2.0  
community.proxysql            1.4.0  
community.rabbitmq            1.2.2  
community.routeros            2.2.1  
community.sap                 1.0.0  
community.sap_libs            1.2.0  
community.skydive             1.0.0  
community.sops                1.3.0  
community.vmware              2.8.0  
community.windows             1.11.0 
community.zabbix              1.8.0  
containers.podman             1.9.4  
cyberark.conjur               1.1.0  
cyberark.pas                  1.0.14 
dellemc.enterprise_sonic      1.1.1  
dellemc.openmanage            5.5.0  
dellemc.os10                  1.1.1  
dellemc.os6                   1.0.7  
dellemc.os9                   1.0.4  
f5networks.f5_modules         1.19.0 
fortinet.fortimanager         2.1.5  
fortinet.fortios              2.1.7  
frr.frr                       2.0.0  
gluster.gluster               1.0.2  
google.cloud                  1.0.2  
hetzner.hcloud                1.8.1  
hpe.nimble                    1.1.4  
ibm.qradar                    2.0.0  
ibm.spectrum_virtualize       1.9.0  
infinidat.infinibox           1.3.3  
infoblox.nios_modules         1.3.0  
inspur.sm                     2.0.0  
junipernetworks.junos         3.1.0  
kubernetes.core               2.3.2  
mellanox.onyx                 1.0.0  
netapp.aws                    21.7.0 
netapp.azure                  21.10.0
netapp.cloudmanager           21.19.0
netapp.elementsw              21.7.0 
netapp.ontap                  21.22.0
netapp.storagegrid            21.10.0
netapp.um_info                21.8.0 
netapp_eseries.santricity     1.3.1  
netbox.netbox                 3.7.1  
ngine_io.cloudstack           2.2.4  
ngine_io.exoscale             1.0.0  
ngine_io.vultr                1.1.2  
openstack.cloud               1.8.0  
openvswitch.openvswitch       2.1.0  
ovirt.ovirt                   2.2.3  
purestorage.flasharray        1.13.0 
purestorage.flashblade        1.9.0  
purestorage.fusion            1.0.2  
sensu.sensu_go                1.13.1 
servicenow.servicenow         1.0.6  
splunk.es                     2.0.0  
t_systems_mms.icinga_director 1.31.0 
theforeman.foreman            3.4.0  
vmware.vmware_rest            2.2.0  
vyos.vyos                     3.0.1  
wti.remote                    1.0.4  

AWS SDK versions

$ pip show boto boto3 botocore
Name: boto
Version: 2.49.0
Summary: Amazon Web Services Library
Home-page: https://github.com/boto/boto/
Author: Mitch Garnaat
Author-email: [email protected]
License: MIT
Location: /var/lib/buildkite-agent/.local/lib/python3.10/site-packages
Requires: 
Required-by: 
---
Name: boto3
Version: 1.20.51
Summary: The AWS SDK for Python
Home-page: https://github.com/boto/boto3
Author: Amazon Web Services
Author-email: 
License: Apache License 2.0
Location: /var/lib/buildkite-agent/.local/lib/python3.10/site-packages
Requires: botocore, jmespath, s3transfer
Required-by: 
---
Name: botocore
Version: 1.23.54
Summary: Low-level, data-driven core of boto 3.
Home-page: https://github.com/boto/botocore
Author: Amazon Web Services
Author-email: 
License: Apache License 2.0
Location: /var/lib/buildkite-agent/.local/lib/python3.10/site-packages
Requires: jmespath, python-dateutil, urllib3
Required-by: boto3, s3transfer

Configuration

$ ansible-config dump --only-changed

OS / Environment

5.15.0-1004-aws

Steps to Reproduce

Expected Results

I expected the step to fail.

Actual Results

"Seems good!"

Code of Conduct

  • I agree to follow the Ansible Code of Conduct
@alinabuzachis alinabuzachis transferred this issue from ansible-collections/community.aws Sep 28, 2022
@ansibullbot
Copy link

Files identified in the description:

If these files are inaccurate, please update the component name section of the description or use the !component bot command.

click here for bot help

@ansibullbot
Copy link

@ansibullbot ansibullbot added bug This issue/PR relates to a bug module module needs_triage plugins plugin (any type) python3 labels Sep 28, 2022
@mandar242 mandar242 added the jira label Oct 13, 2022
@mandar242 mandar242 self-assigned this Oct 13, 2022
softwarefactory-project-zuul bot pushed a commit that referenced this issue Oct 20, 2022
)

rds_param_group: WARN on updating DBParameterGroupFamily (engine)

SUMMARY

Fixes #1074
Added a check to WARN the task while modifying/updating rds_param_group if task tries to change DB parameter group family.
As AWS Documentation specifies that,
The DB parameter group family can't be changed when updating a DB parameter group.


ISSUE TYPE


Bugfix Pull Request

COMPONENT NAME

rds_param_group
ADDITIONAL INFORMATION



Steps to reproduce

Create rds Param group

- name: Create a param group
  hosts: localhost
  gather_facts: false
  tasks:
    - name: create test rds db parameter group
      amazon.aws.rds_param_group:
        name: "test-parameter-group"
        description: test rpg
        state: present
        engine: "aurora-postgresql13"


Try to change engine (family), with the fix in PR task should throw warning.

- name: Create a param group
  hosts: localhost
  gather_facts: false
  tasks:
    - name: create test rds db parameter group
      amazon.aws.rds_param_group:
        name: "test-parameter-group"
        description: test rpg
        state: present
        engine: "aurora-postgresql14"

Reviewed-by: Jill R <None>
Reviewed-by: Alina Buzachis <None>
Reviewed-by: Mandar Kulkarni <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug This issue/PR relates to a bug jira module module plugins plugin (any type) python3
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants