Skip to content
  1. Sep 01, 2021
    • Thomas Woerner's avatar
      automember: Use IPAAnsibleModule class · 7ff49265
      Thomas Woerner authored
      ipaadmin_variables are handled by IPAAnsibleModule,
      ansible_module.params_get is used to get the parameters and
      ansible_module.ipa_connect is used to simplify the module.
      7ff49265
    • Thomas Woerner's avatar
      location: Use IPAAnsibleModule class · 5636742b
      Thomas Woerner authored
      ipaadmin_variables are handled by IPAAnsibleModule,
      ansible_module.params_get is used to get the parameters and
      ansible_module.ipa_connect is used to simplify the module.
      5636742b
    • Thomas Woerner's avatar
      ansible_freeipa_module: New IPAAnsibleModule class · d01c42d7
      Thomas Woerner authored
      This class is an extended version of the Ansible Module that provides
      IPA specific methods to simplify module generation.
      
      Simple example:
      
          from ansible.module_utils.ansible_freeipa_module import \
              IPAAnsibleModule
      
          def main():
              ansible_module = IPAAnsibleModule(
                  argument_spec=dict(
                        name=dict(type="str", aliases=["cn"], default=None),
                        state=dict(type="str", default="present",
                                   choices=["present", "absent"]),
                  ),
              )
      
              # Get parameters
              name = ansible_module.params_get("name")
              state = ansible_module.params_get("state")
      
              # Connect to IPA API
              with ansible_module.ipa_connect():
      
                  # Execute command
                  if state == "present":
                      ansible_module.ipa_command(["command_add", name, {}])
                  else:
                      ansible_module.ipa_command(["command_del", name, {}])
      
              # Done
      
              ansible_module.exit_json(changed=True)
      
          if __name__ == "__main__":
              main()
      d01c42d7
    • Rafael Guterres Jeffman's avatar
      pylint: Upgrade to version 2.10.2. · 928540fa
      Rafael Guterres Jeffman authored
      This PR sets pylint to version 2.10.2 in all linter actions, and
      fixes code in plugins so that this version new checks are either
      satisfied or ignored if needed.
      928540fa
  2. Aug 24, 2021
    • Thomas Woerner's avatar
      New ipamodule_base_vars · 7a665bdb
      Thomas Woerner authored
      There are common parameters in all modules like ipaadmin_principal and
      ipaadmin_password. As this list of common parameters will be extended
      soon, there is a need to reduce the code and documentation duplicates.
      
      A ModuleDocFragment is added to provide the module documentation for the
      common parameters. This is used in the modules with
      extends_documentation_fragment.
      
      ansible_freeipa_module has additional ipamodule_base_spec and
      get_ipamodule_base_vars. ipamodule_base_spec extends argument_spec in
      the module and get_ipamodule_base_vars is used to return a dict
      containing the common parameters.
      7a665bdb
  3. Aug 23, 2021
    • Thomas Woerner's avatar
      sudorule: Reduce addition and deletion of members to changed only · 8561e0bb
      Thomas Woerner authored
      Use gen_add_list and gen_intersection_list for host, hostgroup, user,
      group, allow_sudocmd, allow_sudocmdgroup, deny_sudocmd, deny_sudocmdgroup,
      sudooption, runasuser, runasgroup and res_find member handling.
      
      The functions are used to reduce the add lists to the new entries
      only and the delete lists to the entries that are in the user and
      the show list result.
      
      This enables to remove the ignores for "already a member" and
      "not a member" errors..
      8561e0bb
  4. Aug 20, 2021
    • Thomas Woerner's avatar
      hbacrule: Create FQDN from single hostnames · b8488cb9
      Thomas Woerner authored
      Single hostnames can be used for hbacrule_add_host and will match fqdn
      in IPA internally. Simple host names have to be extended to be FQDN to
      be able to compare them for _host_add and _host_remove.
      
      Two new functions have been added to ansible_freeipa_module:
      
      - api_get_domain - Get the domain from the api
      - ensure_fqdn - Extend a single name with the domain
      
      This fixes #617 - hbacrule_add_host: already a member
      b8488cb9
  5. Jul 16, 2021
  6. Jul 14, 2021
    • chrisp's avatar
      New automountlocation module · 6a87db06
      chrisp authored
      There is a new automount location management module placed in the plugins folder:
      
      plugins/modules/ipaautomountlocation.py
      
      This module allows to ensure presence and absence of automount locations
      that act as containers for automount onjects in ipa.
      
      Here is the documentation for the module:
      
      README-automountlocation.md
      
      New example playbooks have been added:
      
      playbooks/automount/automount-location-absent.yml
      playbooks/automount/automount-location-present.yml
      
      New tests for the module:
      
      tests/automount/test_automountlocation.yml
      6a87db06
  7. Jul 13, 2021
    • Thomas Woerner's avatar
      automember: Verify condition keys · 382ee6ff
      Thomas Woerner authored
      The automember_add_condition and automember_remove_condition commands
      are not verifying condition keys in all cases. This is for example not
      done in the removal case if a condition is not part of the automember
      rule.
      
      For consistent behaviour this needs to be done in the automember module
      now. The condition keys are verified with the user and group aciattrs
      returned by the API command json_metadata now.
      
      Related: RHBZ#1976926
      382ee6ff
  8. Jul 08, 2021
  9. Jul 06, 2021
  10. May 27, 2021
  11. May 26, 2021
    • Mark Hahl's avatar
      New automember management module · 0e0bdf1f
      Mark Hahl authored
          There is a new automember management module placed in the plugins folder:
      
              plugins/modules/ipaautomember.py
      
          The automember module allows to ensure presence or absence of automember rules
          and manage automember rule conditions.
      
          Here is the documentation for the module:
      
              README-automember.md
      
          New example playbooks have been added:
      
              playbooks/automember/automember-group-absent.yml
              playbooks/automember/automember-group-present.yml
              playbooks/automember/automember-hostgroup-absent.yml
              playbooks/automember/automember-hostgroup-present.yml
              playbooks/automember/automember-hostgroup-rule-absent.yml
              playbooks/automember/automember-hostgroup-rule-present.yml
      
          New tests for the module:
      
              tests/automember/test_automember.yml
      0e0bdf1f
    • chrisp's avatar
      fix minor documentation typos in sudo modules · f51107e8
      chrisp authored
      f51107e8
    • Thomas Woerner's avatar
      hostgroup: Reduce addition and deletion of members to changed only · 6e9f5250
      Thomas Woerner authored
      Use gen_add_list and gen_intersection_list for host, hostgroup,
      membermanager_user and membermanager_group member handling.
      
      The functions are used to reduce the add lists to the new entries
      only and the delete lists to the entries that are in the user and
      the show list result.
      
      This enables to remove the ignores for "already a member" and
      "not a member" errors..
      6e9f5250
    • Thomas Woerner's avatar
      group: Reduce addition and deletion of members to changed only · 0a604fca
      Thomas Woerner authored
      Use gen_add_list and gen_intersection_list for user, group, service,
      externalmember, membermanager_user and membermanager_group member
      handling.
      The functions are used to reduce the add lists to the new entries
      only and the delete lists to the entries that are in the user and
      the show list result.
      
      This enables to remove the ignores for "already a member" and
      "not a member" errors..
      0a604fca
  12. May 25, 2021
  13. May 24, 2021
Loading