Skip to content
  1. Jul 05, 2022
    • Thomas Woerner's avatar
      ipaserver: Use jinja for list concatenation · 0ff119a2
      Thomas Woerner authored
      With ansible-2.13 it is required to use jinja for list concatenation.
      
        list: "[] + ['a'] + ['b']"
      
      needs to become
      
        list: "{{ [] + ['a'] + ['b'] }}"
      
      copy_external_cert.yml needed to be changed.
      0ff119a2
  2. Jan 13, 2022
    • Thomas Woerner's avatar
      ansible-test: Fix new findings · 9499a3ed
      Thomas Woerner authored
      ERROR: Found 6 pylint issue(s) which need to be resolved:
      ERROR: plugins/modules/ipaserver_prepare.py:395:4: invalid-name: Variable name "e" doesn't conform to snake_case naming style
      ERROR: roles/ipaserver/library/ipaserver_prepare.py:395:4: invalid-name: Variable name "e" doesn't conform to snake_case naming style
      ERROR: roles/ipaserver/module_utils/ansible_ipa_server.py:333:12: invalid-name: Variable name "ds" doesn't conform to snake_case naming style
      ERROR: roles/ipaserver/module_utils/ansible_ipa_server.py:348:12: invalid-name: Variable name "ds" doesn't conform to snake_case naming style
      ERROR: roles/ipaserver/module_utils/ansible_ipa_server.py:361:12: invalid-name: Variable name "ip" doesn't conform to snake_case naming style
      ERROR: roles/ipaserver/module_utils/ansible_ipa_server.py:364:12: invalid-name: Variable name "e" doesn't conform to snake_case naming style
      
      e has been replaced with err, ds with _ds, ip with _ip.
      9499a3ed
  3. Jan 12, 2022
  4. Dec 10, 2021
  5. Nov 29, 2021
  6. Nov 24, 2021
  7. Sep 29, 2021
  8. Aug 31, 2021
    • Rafael Guterres Jeffman's avatar
      ipaserver: Modify vars loading in ansible-freeipa roles. · e70763b0
      Rafael Guterres Jeffman authored
      When loading variables in all ansible-freeipa roles, it is expected
      that a file with these variables is present for each supported Linux
      distribution, and then, based on the information about the distribution
      provided by Ansible, the correct file is loaded.
      
      Previously, only the facts `distribution` and dinstribution version
      related facts were used, which required specific files, or links to
      files for distributions in the same "family", which will probably have
      the same variables set.
      
      This change adds searching for files based on the `os_family` fact,
      allowing distributions that follow the same family rules to be
      supported, without any changes to the codebase. It is still possible
      that a specific distribution configuration overrides the default
      behavior, as `os_family` has lower priority than `distribution`.
      
      For example, distributions on the `RedHat` family, like Oracle Linux,
      Alma Linux, and Rocky Linux, work withoutadding new files, or links to
      files, to fill the `vars`.
      
      Fix issue #573. Fix issue #523.
      e70763b0
  9. Jun 04, 2021
  10. May 11, 2021
  11. Mar 19, 2021
    • Grzegorz Grasza's avatar
      Use ansible_facts variable · 7a235310
      Grzegorz Grasza authored
      Without this change the "Import variables specific to distribution"
      tasks fail with "Could not find file on the Ansible Controller..."
      on environments with inject facts disabled.
      
      This changes the tests to run with ansible with
      inject_facts_as_vars = false and fixes other roles and playbooks.
      7a235310
  12. Feb 16, 2021
  13. Nov 25, 2020
    • Thomas Woerner's avatar
      ipa[server,replica]: Support memory check from command line installers · 5acab7b3
      Thomas Woerner authored
      The common_check function in the replica installer code has been changed
      for the new memory checker code. With this the server and replica command
      line installers got the option --skip-mem-check.
      
      The server and replica role now also support the memory cheker and there
      are new variables for server and replica:
      
          ipaserver_mem_check - for ipaserver
          ipareplica_mem_check - for ipaserver
      
      These bool values default to yes and can be turned off in the inventory
      or playbook if needed.
      
      Related to freeipa PR https://pagure.io/freeipa/issue/8404 (Detect and
      fail if not enough memory is available for installation)
      
      Fixes: #450 (IPA Replica Installation Fails)
      5acab7b3
  14. Nov 18, 2020
    • Thomas Woerner's avatar
      ipaserver: copy_external_cert should use basename on server only · 4d950958
      Thomas Woerner authored
      Currently the certifaictes are copied ot the server with the complete
      path that is provided within the playbook. This could result in
      unexpected file placements. Certificates should be placed in the /root
      folder for the deployment.
      
      Fixes #405 (copy_external_cert does not handle pathed items)
      4d950958
  15. Sep 18, 2020
  16. Sep 08, 2020
    • Thomas Woerner's avatar
      ipa[server,replica,client]: Drop deactivated Python2/3 test · cf4c5903
      Thomas Woerner authored
      These tests have been deactivated for some time with b51397eb and are
      removed now.
      cf4c5903
    • Thomas Woerner's avatar
      ipa[server,replica]: New variables to set firewalld zone · a7e532a4
      Thomas Woerner authored
      The new variables ipa[server,replica]_firewalld_zone have been added to
      be able to set the zone in which the needed services for IPA are enabled.
      
      New tasks have been added to check if the zone is available in the runtime
      and also permamanet environment.
      
      The code to enable firewalld has been moved out of thee
      ipa[server,replica]_install_packages blocks to make sure that the firewalld
      service is also enabled if the package is already installed.
      
      Fixes: issue #177 (How to set up firewalld zones?)
      a7e532a4
  17. Sep 03, 2020
  18. Jul 27, 2020
  19. Jul 02, 2020
    • Thomas Woerner's avatar
      ipa[server,replica]: Fix pkcs12 info regressions introduced with CA-less · 8ce5fd14
      Thomas Woerner authored
      With the CA-less patches the types for the pkcs12 infos have been changed
      to lists in the modules. This is resulting in a bad conversion from None
      to [''] for the parameters. Because of this a normal replica deployment is
      failing as [''] is not a valid value.
      
      The install.yml files for ipareplica and also ipaserver have been changed
      in the way that the pkcs12 values are checked if they are None. The
      parameter will simply be omitted in this case and the parameter in the
      module will become None by default.
      8ce5fd14
  20. Jun 15, 2020
  21. Jun 03, 2020
    • Thomas Woerner's avatar
      library/ipaserver_setup_ca: Use x509 IPA upstream code for pkcs12 files · 09fefbb2
      Thomas Woerner authored
      With the encoded _http_ca_cert from ipaserver_test it is possible to revert
      back to the IPA upstream code to write the pkcs12 http certificates.
      
      The passed _http_ca_cert only needs to be decoded with decode_certificate.
      09fefbb2
    • Thomas Woerner's avatar
      ipaserver/tasks/install.yml: Always remove temporary pkcs12 copies · 8e6d433d
      Thomas Woerner authored
      The created temporary pkcs12 copies need to be removed in all cases. A
      new task has been added.
      8e6d433d
    • Thomas Woerner's avatar
      library/ipaserver_test: Revert to IPA upstream code for pkcs12 files · 578d08c7
      Thomas Woerner authored
      The function load_pkcs12 should not be skipped to verify the given
      certificates. After the certificates have been verified and the temporary
      certificate copies have been generated, these files are copied to
      /etc/ipa/.tmp_pkcs12_* as the temporary files will simply be removed as
      soon as the file descriptors have been closed.
      
      Additionally the [http,dirsrv,pkinit]_pkcs12_info is recreated to point to
      the copied temporary files.
      
      With this revertion the need to change other modules has been rediced to
      the minium, the IPA upstream code can simply be used.
      
      The passed back certificates [http,dirsrv,pkinit]_ca_cert are encoded using
      encode_certificate.
      578d08c7
    • Thomas Woerner's avatar
      ansible_ipa_server: New functions encode_certificate and decode_certificate · 2408a9b7
      Thomas Woerner authored
      The encode_certificate and decode_certificate are needed to encode and
      decode a certificate in the way that it can be passed back from a module
      and imported back into a usable certificate in another module.
      
      For newer IPA versions the certificate is normally an IPACertificate for
      older IPA versions it is simply a bytes array. But in both cases it needs
      to be converted not to break Ansible.
      2408a9b7
    • Samuel Veloso's avatar
      Install ipaserver without ca · 4221213f
      Samuel Veloso authored
      4221213f
  22. May 14, 2020
  23. Apr 26, 2020
  24. Mar 30, 2020
    • Thomas Woerner's avatar
      ipaserver docs: Calm down module linter · a972beb4
      Thomas Woerner authored
      The use of "default: idstart+199999" in the description of the idmax
      parameter was resulting in the galaxy import error:
      
        Cannot parse "DOCUMENTATION": mapping values are not allowed here in
        "<unicode string>", line 52, column 58: ... value for the IDs range
        (default: idstart+199999)
      
      The ":" has simply been removed to fix this issue.
      a972beb4
  25. Mar 20, 2020
  26. Feb 13, 2020
  27. Dec 11, 2019
    • Thomas Woerner's avatar
      ipaserver_test: Do not use zone_overlap_check for domain name validation · 9c853894
      Thomas Woerner authored
      The use of zone_overlay_check for the domain name validation is not good
      for a repeated execution of the server deployment where setup_dns is
      enabled. The zone overlay check will fail with "DNS zone X already exists
      in DNS". zone_overlay_check is later on used in dns.install_check so it is
      not needed to do it here also.
      
      Fixes issues #164 (domain option validator should not call zone overlap..)
      9c853894