1. 24 Nov, 2022 1 commit
  2. 17 Nov, 2022 1 commit
  3. 10 Nov, 2022 5 commits
  4. 09 Nov, 2022 3 commits
  5. 08 Nov, 2022 3 commits
  6. 04 Nov, 2022 2 commits
  7. 03 Nov, 2022 1 commit
  8. 02 Nov, 2022 2 commits
  9. 28 Oct, 2022 1 commit
  10. 27 Oct, 2022 2 commits
  11. 26 Oct, 2022 3 commits
  12. 25 Oct, 2022 3 commits
    • Jakob Meng's avatar
      Refactored baremetal_port and baremetal_port_info modules · 99074ccd
      Jakob Meng authored
      Sorted argument specs and documentation of both modules.
      
      Refactored both modules to be subclasses of OpenStackModule class.
      
      Renamed baremetal_port's module attributes 'uuid' to 'id' and
      'portgroup' to 'port_group' to match openstacksdk. Added the previous
      attribute names as aliases to keep backward compatibility. Added
      alias 'pxe_enabled' for 'is_pxe_enabled' which was previously set
      programmatically.
      
      Changed baremetal_port module to return attribute 'port' only when
      state is present. It will return no values (except Ansible's default
      values) when state is absent. Previous return value 'id' can be
      retrieved from port's dictionary entry 'id'.
      The non-standard return value 'result' has been dropped because its
      content can easily be reconstructed with Ansible's is changed check.
      
      The non-standard return value 'changes' has been dropped because its
      content was only returned on updates, has no known uses and can
      easily be reconstructed in Ansible by comparing the updated port
      dictionary with a copy of the pre-updated port dictionary.
      
      Module baremetal_port_info will no longer fail when no port with a
      matching id or name or address could be found. Instead it will return
      an empty list like other *_info modules.
      
      baremetal_port_info's return attribute 'baremetal_ports' has been
      renamed to 'ports' to be consistent with other modules. The former
      name will keep to be available for now to keep backward compatibility.
      
      Both modules convert their return values into dictionaries without
      computed (redundant) values. They do not drop values such as links
      anymore though, because we do not withhold information from users.
      
      Updated DOCUMENTATION, EXAMPLES and RETURN docstrings in both modules.
      
      Added integration tests for both modules. They will not run in CI atm,
      because we do not have Ironic enabled in our DevStack environment.
      
      Change-Id: I54b3ea9917fbbbdf381ef934a0d92e2857f6d51b
      99074ccd
    • Jakob Meng's avatar
      Refactored baremetal_node_action module · 65a7e74b
      Jakob Meng authored
      Sorted argument specs and documentation of the module.
      
      Refactored baremetal_node_action module to be a subclass of the
      OpenStackModule class.
      
      Redefined baremetal_node_info's module attributes 'id' and 'uuid'
      as aliases of the 'name' attribute because modules in this collection
      do not differentiate between ids and names. The previous revision of
      baremetal_node_info module had the same behaviour implemented but did
      not make the relationship between 'id'/'uuid' and 'name' explicit.
      
      Changed types and/or choices of module attributes 'deploy',
      'maintenance', 'power' and 'state' to match what has been described
      in DOCUMENTATION string and to get rid of the non-Ansible'ish and
      inconsistent parsing of input values in _is_true() and _is_false()
      functions. Ansible can handle argument types for us, no need to
      implement it ourselfs.
      
      Dropped deprecated ironic_url attribute from DOCUMENTATION docstring.
      Dropped wait and timeout attributes from DOCUMENTATION because their
      docstrings will be added via documentation fragment.
      
      Dropped attribute 'result' from module results because in our modules
      we consistently do not explain what we do in modules.
      
      Updated DOCUMENTATION, EXAMPLES and added RETURN docstrings.
      
      Refactored the change logic for maintenance, power state and state,
      eliminating unreachable or broken code.
      
      Dropped wait attribute from DOCUMENTATION because its docstring will
      be added via documentation fragment.
      
      Kept timeout attribute in DOCUMENTATION and argument_spec because
      it has a high(er) default value, to account for long node
      (de)activiation times, than what e.g. the generic doc fragment
      specifies.
      
      Change-Id: I991f23c16583da106105677d75b3651959280d98
      65a7e74b
    • Jakob Meng's avatar
      Refactored baremetal_node and baremetal_node_info modules · 902b2f81
      Jakob Meng authored
      Added integration tests for both modules. They will not run in CI atm,
      because we do not have Ironic enabled in our DevStack environment.
      
      Sorted argument specs and documentation of both modules.
      
      Refactored both modules to be subclasses of OpenStackModule class.
      
      Renamed baremetal_node_info's module attribute 'node' to 'name' and
      added the former as an alias to be consistent with other *_info
      modules.
      
      baremetal_node_info will no longer fetch port and portgroup details
      because this requires extra api calls for each node. Users can use
      the baremetal_port module to retrieve ports for each node on demand.
      
      Refactored code for constructing node updates in baremetal_node module
      which allowed us to drop the dependency on Python module jsonpatch.
      
      Deprecated baremetal_node's skip_update_of_masked_password attribute.
      Updating or even specificing passwords for nodes has not been
      supported for a while now, rendering the attribute useless.
      
      Renamed baremetal_node's module attributes 'chassis_uuid' to
      'chassis_id', 'uuid' to 'id' as well as suboptions of
      'properties' to match openstacksdk. Added the previous attribute
      names as aliases to keep backward compatibility.
      Marked nics attribute in baremetal_node as not updatable.
      
      Changed baremetal_node module to return attribute 'node' only when
      state is present. It will return no values (except Ansible's default
      values) when state is absent. Previous return value 'uuid' can be
      retrieved from node's dictionary entry 'id'.
      The non-standard return value 'result' has been dropped because its
      content can easily be reconstructed with Ansible's is changed check.
      The non-standard return value 'changes' has been dropped because it
      was only returned on updates, has no known uses and can easily be
      reconstructed in Ansible by comparing the returned node dictionary
      with a copy of a previous node dictionary.
      
      Module baremetal_node_info will no longer fail when no node with a
      matching id or name or mac could be found. Instead it will return
      an empty list like other *_info modules.
      
      baremetal_node_info's return attribute 'baremetal_nodes' has been
      renamed to 'nodes' to be consistent with other modules. The former
      name will keep to be available for now to keep backward
      compatibility.
      
      Both modules convert their return values into dictionaries without
      computed (redundant) values. They do not drop values such as links
      anymore though, because we do not withhold information from users.
      
      Updated DOCUMENTATION, EXAMPLES and RETURN docstrings in both
      modules.
      
      Dropped deprecated ironic_url attribute from DOCUMENTATION docstring
      in baremetal_info. Dropped wait attribute from DOCUMENTATION because
      its docstring will be added via documentation fragment.
      
      Kept timeout attribute in DOCUMENTATION and argument_spec because
      it has a high(er) default value, to account for long provisioning
      times, than what e.g. the generic doc fragment specifies.
      
      Change-Id: If3044acf672295e9b61fa60d0969f47cd06dfdeb
      902b2f81
  13. 18 Oct, 2022 1 commit
    • Artem Goncharov's avatar
      Do not enforce optional params in network module · f51898bd
      Artem Goncharov authored
      It is wrong to enforce values of optional networking parameters. In the
      clouds where those optional extensions are not installed this leads to
      failures. Instead only pass params down to SDK if user explicitly set
      them.
      
      Change-Id: I5660eb8a4a65dd365ae7ce8c09825bbed8d2fdde
      f51898bd
  14. 14 Oct, 2022 3 commits
  15. 10 Oct, 2022 1 commit
  16. 07 Oct, 2022 1 commit
  17. 06 Oct, 2022 2 commits
  18. 30 Sep, 2022 2 commits
  19. 27 Sep, 2022 1 commit
  20. 23 Sep, 2022 1 commit
  21. 22 Sep, 2022 1 commit
    • Rafael Castillo's avatar
      Specifically build master in tripleo periodic job · ebaa1ac3
      Rafael Castillo authored
      Currently, our tripleo periodic jobs are failing, while our check jobs
      are passing. This is because build-test-packages is not building the
      tip of master version of the collections, instead using the version
      built in rdo. This patch explicitly adds ansible-collection-openstack to
      the change list so it always gets picked up by build-test-packages.
      
      Change-Id: I6938c8373872daed8632429df42d20396980bc76
      ebaa1ac3