Skip to content

Latest commit

 

History

History
481 lines (354 loc) · 24.3 KB

CHANGELOG.rst

File metadata and controls

481 lines (354 loc) · 24.3 KB

Netbox.Netbox Release Notes

  • Remove ansible.netcommon and community.general dependencies from collection
  • Inventory - Added ansible_host_dns_name to set ansible_host to dns_name
  • netbox_device_role - Added description option
  • netbox_platform - Added description option
  • netbox_ip_address - Added assigned_object to ALLOWED_QUERY_PARAMS
  • Added import_targets and export_targets options to netbox_vrf
  • netbox_site - Changed latitude/longitude type from float to str [#418](netbox-community#418)
  • netbox_utils - If query_dict is None, fail and provide meaningful error [#419](netbox-community#419)
  • netbox_utils - Remove manual manipulation for building query params for netbox_ip_address and assigned object [#421](netbox-community#421)
  • netbox.netbox.netbox_route_target - Creates or removes route targets from Netbox
  • nb_inventory - Add dns_name option that adds dns_name to the host when True and device has a primary IP address. (#394)
  • nb_inventory - Add status as a group_by option. (398)
  • nb_inventory - Move around extracted_primary_ip to allow for config_context or custom_field to overwite. (#377)
  • nb_inventory - Services are now a list of integers due to NetBox 2.10 changes. (#396)
  • nb_lookup - Allow ID to be passed in and use .get instead of .filter. (#376)
  • nb_lookup - Allow api_endpoint and token to be found via env. (#391)
  • nb_inventory - Added status as host_var. (359)
  • nb_inventory - Added documentation for using keyed_groups. (#361)
  • nb_inventory - Allow to use virtual chassis name instead of device name. (#383)
  • nb_lookup - Allow lookup of plugin endpoints. (#360)
  • nb_lookup - Documentation update to show Fully Qualified Collection Name (FQCN). (#355)
  • netbox_service - Add ports option for NetBox 2.10+ and convert port to ports if NetBox 2.9 or lower. (#396)
  • netbox_virtual_machine - Added comments option. (#380)
  • netbox_virtual_machine - Added local_context_data option. (#357)
  • Version checks were failing due to converting "2.10" to a float made it an integer of 2.1 which broke version related logic. (#396)
  • netbox_device_interface - Fixed copy pasta in documentation. (#371)
  • netbox_ip_address - Updated documentation to show that family option has been deprecated. (#388)
  • netbox_utils - Fixed typo for circuits.circuittermination searches. (#367)
  • netbox_utils - Skip all modifications to query_params when user_query_params is defined. (#389)
  • netbox_vlan - Fixed uniqueness for vlan searches to add group. (#386)
  • netbox.netbox.netbox_tag - Creates or removes tags from Netbox
  • Add virtual_machine_role=slug to QUERY_TYPES to properly search for Virtual Machine roles and not use the default q search (netbox-community#327)
  • Remove device being required and implemented required_one_of to allow either device or virtual_machine to be specified for netbox_service (netbox-community#326)
  • When tags specified, it prevents other data from being updated on the object. (netbox-community#325)
  • Inventory - Add group_by option rack_role and rack_group
  • Inventory - Add group_by option services (netbox-community#286)
  • Fix query_dict for device_bay/interface_template to use devicetype_id (netbox-community#282)
  • This expands the fix to all _template modules to use devicetype_id for the query_dict when attempting to resolve the search (netbox-community#300)
  • To pass in integers via Ansible Jinja filters for a key in data that requires querying an endpoint is now done by making it a dictionary with an id key. The previous behavior was to just pass in an integer and it was converted when normalizing the data, but some people may have names that are all integers and those were being converted erroneously so we made the decision to change the method to convert to an integer for the NetBox API.

    tasks:
      - name: Create device within NetBox with only required information
        netbox_device:
          netbox_url: http://netbox-demo.org:32768
          netbox_token: 0123456789abcdef0123456789abcdef01234567
          data:
            name: Test66
            device_type:
              id: "{{ some_jinja_variable }}"
            device_role: Core Switch
            site: Test Site
            status: Staged
          state: present
    
  • pynetbox changed to using requests.Session() to manage the HTTP session which broke passing in ssl_verify when building the NetBox API client. This PR makes pynetbox 5.0.4+ the new required version of pynetbox for the Ansible modules and lookup plugin. (netbox-community#269)

  • netbox.netbox.netbox_cable - Create, update or delete cables within Netbox
  • netbox.netbox.netbox_device_bay_template - Create, update or delete device bay templates within Netbox
  • netbox.netbox.netbox_device_interface_template - Creates or removes interfaces on devices from Netbox
  • netbox.netbox.netbox_virtual_chassis - Create, update or delete virtual chassis within Netbox
  • Fixes bug in netbox_prefix failing when using check_mode (netbox-community#228)
  • Fixes bug in inventory plugin that fails if there are either no virtual machines, but devices defined in NetBox or vice versa from failing when fetch_all is set to False (netbox-community#214)
  • Normalize any string values that are passed in via Jinja into an integer within the _normalize_data method (netbox-community#231)
  • netbox.netbox.netbox_console_port - Create, update or delete console ports within Netbox
  • netbox.netbox.netbox_console_port_template - Create, update or delete console port templates within Netbox
  • netbox.netbox.netbox_console_server_port - Create, update or delete console server ports within Netbox
  • netbox.netbox.netbox_console_server_port_template - Create, update or delete console server port templates within Netbox
  • netbox.netbox.netbox_front_port - Create, update or delete front ports within Netbox
  • netbox.netbox.netbox_front_port_template - Create, update or delete front port templates within Netbox
  • netbox.netbox.netbox_power_feed - Create, update or delete power feeds within Netbox
  • netbox.netbox.netbox_power_outlet - Create, update or delete power outlets within Netbox
  • netbox.netbox.netbox_power_outlet_template - Create, update or delete power outlet templates within Netbox
  • netbox.netbox.netbox_power_panel - Create, update or delete power panels within Netbox
  • netbox.netbox.netbox_power_port - Create, update or delete power ports within Netbox
  • netbox.netbox.netbox_power_port_template - Create, update or delete power port templates within Netbox
  • netbox.netbox.netbox_rear_port - Create, update or delete rear ports within Netbox
  • netbox.netbox.netbox_rear_port_template - Create, update or delete rear port templates within Netbox
  • Added type to netbox_device_interface and deprecation notice for form_factor (netbox-community#193)
  • Fixes inventory performance issues, properly shows virtual chassis masters. (netbox-community#202)
  • Add custom_fields to netbox_virtual_machine (netbox-community#170)
  • Add device_query_filters and vm_query_filters to allow users to specify query filters for the specific type (netbox-community#140)
  • Added group_names_raw option to the netbox inventory to allow users have the group names be the slug rather than prepending the group name with the type (netbox-community#138)
  • Added raw_output option to netbox lookup plugin to return the exact output from the API with no doctoring (netbox-community#136)
  • Added services option to the netbox inventory to allow users to toggle whether services are included or not (netbox-community#143)
  • Added update_vc_child option to netbox_device_interface to allow child interfaces to be updated if device specified is the master device within the virtual chassis (netbox-community#105)
  • Remove token from being required for nb_inventory as some NetBox setups don't require authorization for GET functions (netbox-community#177)
  • Remove token from being required for nb_lookup as some NetBox setups don't require authorization for GET functions (netbox-community#183)
  • Allow integers to be passed in via Jinja string to properly convert back to integer (netbox-community#45)
  • Allow services to be created with a different protocol (netbox-community#174)
  • Properly find LAG if defined just as a string rather than dictionary with the relevant data (netbox-community#166)
  • Removed choices within argument_spec for mode in netbox_device_interface and netbox_vm_interface. This allows the API to return any error if an invalid choice is selected for mode (netbox-community#151)
  • Updated rack width choices for latest NetBox version (netbox-community#167)
  • Updated inventory plugin name from netbox.netbox.netbox to netbox.netbox.nb_inventory (netbox-community#129)
  • This version has a few breaking changes due to new namespace and collection name. I felt it necessary to change the name of the lookup plugin and inventory plugin just not to have a non descriptive namespace call to use them. Below is an example: netbox.netbox.netbox would be used for both inventory plugin and lookup plugin, but in different contexts so no collision will arise, but confusion will. I renamed the lookup plugin to nb_lookup so it will be used with the FQCN netbox.netbox.nb_lookup. The inventory plugin will now be called within an inventory file by netbox.netbox.nb_inventory
  • Update netbox_tenant and netbox_tenant_group to use slugs for searching (available since NetBox 2.6). Added slug options to netbox_site, netbox_tenant, netbox_tenant_group (netbox-community#120)
  • Added fetching services for devices in Netbox Inventory Plugin (netbox-community#58)
  • Added option for interfaces and IP addresses of interfaces to be fetched via inventory plugin (netbox-community#60)
  • Change lookups to property for subclassing of inventory plugin (netbox-community#62)
  • Assigning to parent log now finds LAG interface type dynamically rather than set statically in code (netbox-community#106)
  • Create device with empty string to assign the device a UUID (netbox-community#107)
  • If query_filters supplied are not allowed for either device or VM lookups, or no valid query filters, it will not attempt to fetch from devices or VMs. This should prevent devices or VMs from being fetched that do not meet the query_filters specified. (netbox-community#63)
  • Properly create interface on correct device when in a VC (netbox-community#105)
  • Updated _to_slug to follow same constructs NetBox uses (netbox-community#95)
  • Fixed vlan searching with vlan_group for netbox_prefix (netbox-community#85)
  • Removed static choices from netbox_utils and now pulls the choices for each endpoint from the Netbox API at call time (netbox-community#67)
  • Add argument specs for every module to validate data passed in. Fixes some idempotency issues. POSSIBLE BREAKING CHANGE (netbox-community#68)
  • Allow name updates to manufacturers (netbox-community#76)
  • Builds slug for netbox_device_type from model which is now required and slug is optional. Model will be slugified if slug is not provided BREAKING CHANGE (netbox-community#77)
  • Fail module with proper exception when connection to Netbox API cannot be established (netbox-community#80)
  • netbox_device_interface Lag no longer has to be a dictionary and the value of the key can be the name of the LAG (netbox-community#81)
  • netbox_ip_address If no address has no CIDR notation, it will convert it into a /32 and pass to Netbox. Fixes idempotency cidr notation is not provided (netbox-community#78)
  • netbox.netbox.netbox_service - Creates or removes service from Netbox
  • Allow endpoint choices to be an integer of the choice rather than attempting to dynamically determine the choice ID (netbox-community#47)
  • Fixed issue with netbox_vm_interface where it would fail if different virtual machine had the same interface name (netbox-community#40)
  • Updated netbox_ip_address to find interfaces on virtual machines correctly (netbox-community#40)
  • netbox.netbox.netbox_aggregate - Creates or removes aggregates from Netbox
  • netbox.netbox.netbox_circuit - Create, update or delete circuits within Netbox
  • netbox.netbox.netbox_circuit_termination - Create, update or delete circuit terminations within Netbox
  • netbox.netbox.netbox_circuit_type - Create, update or delete circuit types within Netbox
  • netbox.netbox.netbox_cluster - Create, update or delete clusters within Netbox
  • netbox.netbox.netbox_cluster_group - Create, update or delete cluster groups within Netbox
  • netbox.netbox.netbox_cluster_type - Create, update or delete cluster types within Netbox
  • netbox.netbox.netbox_device_bay - Create, update or delete device bays within Netbox
  • netbox.netbox.netbox_device_role - Create, update or delete devices roles within Netbox
  • netbox.netbox.netbox_device_type - Create, update or delete device types within Netbox
  • netbox.netbox.netbox_inventory_item - Creates or removes inventory items from Netbox
  • netbox.netbox.netbox_ipam_role - Creates or removes ipam roles from Netbox
  • netbox.netbox.netbox_manufacturer - Create or delete manufacturers within Netbox
  • netbox.netbox.netbox_platform - Create or delete platforms within Netbox
  • netbox.netbox.netbox_provider - Create, update or delete providers within Netbox
  • netbox.netbox.netbox_rack - Create, update or delete racks within Netbox
  • netbox.netbox.netbox_rack_group - Create, update or delete racks groups within Netbox
  • netbox.netbox.netbox_rack_role - Create, update or delete racks roles within Netbox
  • netbox.netbox.netbox_region - Creates or removes regions from Netbox
  • netbox.netbox.netbox_rir - Create, update or delete RIRs within Netbox
  • netbox.netbox.netbox_tenant - Creates or removes tenants from Netbox
  • netbox.netbox.netbox_tenant_group - Creates or removes tenant groups from Netbox
  • netbox.netbox.netbox_virtual_machine - Create, update or delete virtual_machines within Netbox
  • netbox.netbox.netbox_vlan - Create, update or delete vlans within Netbox
  • netbox.netbox.netbox_vlan_group - Create, update or delete vlans groups within Netbox
  • netbox.netbox.netbox_vm_interface - Creates or removes interfaces from virtual machines in Netbox
  • netbox.netbox.netbox_vrf - Create, update or delete vrfs within Netbox