Topics
Feature and bugfix release.
- api_info, api_modify - support API paths
interface ethernet poe
,interface gre6
,interface vrrp
and also support all previously missing fields of entries inip dhcp-server
(ansible-collections#137).
- api_modify -
address-pool
field of entries in API pathip dhcp-server
is not required anymore (ansible-collections#137).
Feature release improving the api*
modules.
- api* modules - Add new option
force_no_cert
to connect with ADH ciphers (ansible-collections#124). - api_info - new parameter
include_builtin
which allows to include "builtin" entries that are automatically generated by ROS and cannot be modified by the user (ansible-collections#130). - api_modify, api_info - support API paths -
interface bonding
,interface bridge mlag
,ipv6 firewall mangle
,ipv6 nd
,system scheduler
,system script
,system ups
(ansible-collections#133). - api_modify, api_info - support API paths
caps-man access-list
,caps-man configuration
,caps-man datapath
,caps-man manager
,caps-man provisioning
,caps-man security
(ansible-collections#126). - api_modify, api_info - support API paths
interface list
andinterface list member
(ansible-collections#120). - api_modify, api_info - support API paths
interface pppoe-client
,interface vlan
,interface bridge
,interface bridge vlan
(ansible-collections#125). - api_modify, api_info - support API paths
ip ipsec identity
,ip ipsec peer
,ip ipsec policy
,ip ipsec profile
,ip ipsec proposal
(ansible-collections#129). - api_modify, api_info - support API paths
ip route
andip route vrf
(ansible-collections#123). - api_modify, api_info - support API paths
ipv6 address
,ipv6 dhcp-server
,ipv6 dhcp-server option
,ipv6 route
,queue tree
,routing ospf area
,routing ospf area range
,routing ospf instance
,routing ospf interface-template
,routing pimsm instance
,routing pimsm interface-template
(ansible-collections#131). - api_modify, api_info - support API paths
system logging
,system logging action
(ansible-collections#127). - api_modify, api_info - support field
hw-offload
for pathip firewall filter
(ansible-collections#121). - api_modify, api_info - support fields
address-list
,address-list-timeout
,connection-bytes
,connection-limit
,connection-mark
,connection-rate
,connection-type
,content
,disabled
,dscp
,dst-address-list
,dst-address-type
,dst-limit
,fragment
,hotspot
,icmp-options
,in-bridge-port
,in-bridge-port-list
,ingress-priority
,ipsec-policy
,ipv4-options
,jump-target
,layer7-protocol
,limit
,log
,log-prefix
,nth
,out-bridge-port
,out-bridge-port-list
,packet-mark
,packet-size
,per-connection-classifier
,port
,priority
,psd
,random
,realm
,routing-mark
,same-not-by-dst
,src-address
,src-address-list
,src-address-type
,src-mac-address
,src-port
,tcp-mss
,time
,tls-host
,ttl
inip firewall nat
path (ansible-collections#133). - api_modify, api_info - support fields
combo-mode
,comment
,fec-mode
,mdix-enable
,poe-out
,poe-priority
,poe-voltage
,power-cycle-interval
,power-cycle-ping-address
,power-cycle-ping-enabled
,power-cycle-ping-timeout
for pathinterface ethernet
(ansible-collections#121). - api_modify, api_info - support fields
jump-target
,reject-with
inip firewall filter
API path, fieldcomment
inip firwall address-list
API path, fieldjump-target
inip firewall mangle
API path, fieldcomment
inipv6 firewall address-list
API path, fieldsjump-target
,reject-with
inipv6 firewall filter
API path (ansible-collections#133). - api_modify, api_info - support for API fields that can be disabled and have default value at the same time, support API paths
interface gre
,interface eoip
(ansible-collections#128). - api_modify, api_info - support for fields
blackhole
,pref-src
,routing-table
,suppress-hw-offload
,type
,vrf-interface
inip route
path (ansible-collections#131). - api_modify, api_info - support paths
system ntp client servers
andsystem ntp server
available in ROS7, as well as new fieldsservers
,mode
, andvrf
forsystem ntp client
(ansible-collections#122).
- api_modify -
ip route
entry can be defined without the need ofgateway
field, which is correct for unreachable/blackhole type of routes (ansible-collections#131). - api_modify -
queue interface
path works now (ansible-collections#131). - api_modify, api_info - removed wrong field
dynamic
from API pathipv6 firewall address-list
(ansible-collections#133). - api_modify, api_info - the default of the field
ingress-filtering
ininterface bridge port
is nowtrue
, which is the default in ROS (ansible-collections#125). - command, facts - commands do not timeout in safe mode anymore (ansible-collections#134).
- api_modify - when limits for entries in
queue tree
are defined as human readable - for example25M
-, the configuration will be correctly set in ROS, but the module will indicate the item is changed on every run even when there was no change done. This is caused by the ROS API which returns the number in bytes - for example25000000
(which is inconsistent with the CLI behavior). In order to mitigate that, the limits have to be defined in bytes (those will still appear as human readable in the ROS CLI) (ansible-collections#131). - api_modify, api_info -
routing ospf area
,routing ospf area range
,routing ospf instance
,routing ospf interface-template
paths are not fully implemeted for ROS6 due to the significat changes between ROS6 and ROS7 (ansible-collections#131).
Maintenance release with improved documentation.
- The
community.routeros.command
module claims to support check mode. Since it cannot judge whether the commands executed modify state or not, this behavior is incorrect. Since this potentially breaks existing playbooks, we will not change this behavior until community.routeros 3.0.0.
Feature and bugfix release.
- The collection repository conforms to the REUSE specification except for the changelog fragments (ansible-collections#108).
- api* modules - added
timeout
parameter (ansible-collections#109). - api_modify, api_info - support API path
ip firewall mangle
(ansible-collections#110).
- api_modify, api_info - make API path
ip dhcp-server
supportscript
, andip firewall nat
supportin-interface
andin-interface-list
(ansible-collections#110).
Bugfix release.
- api_modify, api_info - make API path
ip dhcp-server lease
supportserver=all
(ansible-collections#104, ansible-collections#107). - api_modify, api_info - make API path
ip dhcp-server network
support missing optionsboot-file-name
,dhcp-option-set
,dns-none
,domain
, andnext-server
(ansible-collections#104, ansible-collections#106).
New feature release.
- All software licenses are now in the
LICENSES/
directory of the collection root. Moreover,SPDX-License-Identifier:
is used to declare the applicable license for every file that is not automatically generated (ansible-collections#101).
- Include
LICENSES/BSD-2-Clause.txt
file for therouteros
module utils (ansible-collections#101).
- api_info - Retrieve information from API
- api_modify - Modify data at paths with API
Feature and bugfix release with new modules.
- Added a
community.routeros.api
module defaults group. Use withgroup/community.routeros.api
to provide options for all API-based modules (ansible-collections#89). - Prepare collection for inclusion in an Execution Environment by declaring its dependencies (ansible-collections#83).
- api - add new option
extended query
more complex queries against RouterOS API (ansible-collections#63). - api - update
query
to accept symbolic parameters (ansible-collections#63). - api* modules - allow to set an encoding other than the default ASCII for communicating with the API (ansible-collections#95).
- query - fix query function check for
.id
vs.id
arguments to not conflict with routeros arguments likeidentity
(ansible-collections#68, ansible-collections#67). - quoting and unquoting filter plugins, api module - handle the escape sequence
\_
correctly as escaping a space and not an underscore (ansible-collections#89).
- api_facts - Collect facts from remote devices running MikroTik RouterOS using the API
- api_find_and_modify - Find and modify information using the API
A new major release with breaking changes in the behavior of community.routeros.api
and community.routeros.command
.
- api - make validation of
WHERE
forquery
more strict (ansible-collections#53). - command - the
commands
andwait_for
options now convert the list elements to strings (ansible-collections#55). - facts - the
gather_subset
option now converts the list elements to strings (ansible-collections#55).
- api - due to a programming error, the module never failed on errors. This has now been fixed. If you are relying on the module not failing in case of idempotent commands (resulting in errors like
failure: already have such address
), you need to adjust your roles/playbooks. We suggest to usefailed_when
to accept failure in specific circumstances, for examplefailed_when: "'failure: already have ' in result.msg[0]"
(ansible-collections#39). - api - splitting commands no longer uses a naive split by whitespace, but a more RouterOS CLI compatible splitting algorithm (ansible-collections#45).
- command - the module now always indicates that a change happens. If this is not correct, please use
changed_when
to determine the correct changed status for a task (ansible-collections#50).
- api - improve splitting of
WHERE
queries (ansible-collections#47). - api - when converting result lists to dictionaries, no longer removes second
=
and text following that if present (ansible-collections#47). - routeros cliconf plugin - adjust function signature that was modified in Ansible after creation of this plugin (ansible-collections#43).
- join - Join a list of arguments to a command
- list_to_dict - Convert a list of arguments to a list of dictionary
- quote_argument - Quote an argument
- quote_argument_value - Quote an argument value
- split - Split a command into arguments
Bugfix and feature release.
- Avoid internal ansible-core module_utils in favor of equivalent public API available since at least Ansible 2.9 (ansible-collections#38).
- api - add options
validate_certs
(default valuetrue
),validate_cert_hostname
(default valuefalse
), andca_path
to control certificate validation (ansible-collections#37). - api - rename option
ssl
totls
, and keep the old name as an alias (ansible-collections#37). - fact - add fact
ansible_net_config_nonverbose
to get idempotent config (no date, no verbose) (ansible-collections#23).
- api - when using TLS/SSL, remove explicit cipher configuration to insecure values, which also makes it impossible to connect to newer RouterOS versions (ansible-collections#34).
This release allow dashes in usernames for SSH-based modules.
- command - added support for a dash (
-
) in username (ansible-collections#18). - facts - added support for a dash (
-
) in username (ansible-collections#18).
Maintenance release with a bugfix for api
.
- api - remove
id to .id
as default requirement which conflicts with RouterOSid
configuration parameter (ansible-collections#15).
This is the first production (non-prerelease) release of community.routeros
.
- routeros terminal plugin - allow slashes in hostnames for terminal detection. Without this, slashes in hostnames will result in connection timeouts (ansible-collections/community.network#138).
Small improvements and bugfixes over the initial release.
- api - fix crash when the
ssl
parameter is used (ansible-collections#3).
The community.routeros
continues the work on the Ansible RouterOS modules from their state in community.network
1.2.0. The changes listed here are thus relative to the modules community.network.routeros_*
.
- facts - now also collecting data about BGP and OSPF (ansible-collections/community.network#101).
- facts - set configuration export on to verbose, for full configuration export (ansible-collections/community.network#104).