Commit graph

188 commits

Author SHA1 Message Date
Jefferson Raylan
7395011b0c
fix: Fix pattern to handle long system identity (#386)
Some checks failed
nox / Run extra sanity tests (push) Has been cancelled
nox / ansible-test (push) Has been cancelled
Collection Docs / Build Ansible Docs (push) Has been cancelled
Collection Docs / Publish Ansible Docs (push) Has been cancelled
* fix: Fix pattern to handle long system identity names

When the system identity string is too long, the terminal output may be
truncated. The truncated output is marked by multiple carriage returns
(`\r`) and a `<` symbol.

This is a example of a truncated output:
`\r\n\r\r\r\r<MY_VERYVERY-LONG-SYSTEM-IDENTIY-NAME] > `

The existing regex failed to match these truncated prompts.
This update introduces a more flexible regex that matches both, the truncated and the preserved output.

* add change-log fragment for pr 386

* refactoring change-log fragment for pr 386

* Update changelogs/fragments/386-fix-pattern-to-handle-long-identity.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2025-07-31 22:02:47 +02:00
Michael Jenny
c9d15bc43a
OVPN server accepts now multiple items (RouterOS >= 7.17) (#383)
* Since RouterOS 7.17 VRF is supported for OVPN server. It now supports
multiple entries and single-value is now obsolete. This demands for a
versioned API.

* Add change fragment

* Add change fragment

* add license field

* Update changelogs/fragments/385-vrf-support-for-ovpn-server

Co-authored-by: Felix Fontein <felix@fontein.de>

* rename

* remove license field

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2025-07-28 22:34:15 +02:00
Tr4sK
008b5f893a
Update logging action fields for ROS 7.18 (#381)
* Update logging action fields for ROS 7.18

* Add changelog fragment

* Update changelogs/fragments/381-logging-cef.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2025-07-28 22:33:40 +02:00
hansmi
b70b4a72b3
Set mangle passthrough default for RouterOS 7.19 (#382)
The behaviour of the `passthrough` property in `ip/firewall/mangle` has
changed in RouterOS 7.19:

```
*) firewall - always show "passthrough" when exporting mangle table;
```

Per the documentation at [1] the default is `true`.

[1] https://help.mikrotik.com/docs/spaces/ROS/pages/48660587/Mangle
2025-07-28 22:33:24 +02:00
hansmi
1f38be9e56
Update IPv6 settings fields for RouterOS 7.17/7.18 (#380)
From the RouterOS 7.17 changelog:

*) ipv6 - added IPv6 settings related to stale IPv6 neighbor cleanup;
*) ipv6 - added support for manual link-local address configuration;

And from the RouterOS 7.18 changelog:

*) ipv6 - added FastTrack support;
*) ipv6 - added support for neighbor removal and static entries;

The change also removes the default value for the `max-neighbor-entries`
field. It's documented to vary depending on the RAM size.
2025-07-28 22:33:11 +02:00
Felix Fontein
1c182725ce
Prevent deprecation warnings when using ansible-core 2.19. (#385)
Some checks are pending
Collection Docs / Build Ansible Docs (push) Waiting to run
Collection Docs / Publish Ansible Docs (push) Blocked by required conditions
nox / Run extra sanity tests (push) Waiting to run
nox / ansible-test (push) Waiting to run
2025-07-25 22:26:39 +02:00
Michael Jenny
c7b2275f2c
Support RouterOS path /interface ethernet switch port-isolation and /routing bfd configuration (#375)
* Update _api_data.py

Add /interface/bridge property "port-cost-mode" which is supported since RouterOS 7.13.

See changelog for details: https://mikrotik.com/download/changelogs

* Create 371-add-bridge-port-cost-mode.yml

* Update changelogs/fragments/371-add-bridge-port-cost-mode.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Support for /interface ethernet switch port-isolation
  RouterOS has supported the /interface ethernet switch port-isolation path since version 6.43.
  This feature enables hardware offloaded Layer‑2 port isolation on supported switch chips

Support for /routing bfd configuration
  Since RouterOS 7.11 it supports stable bfd support.
  See: https://iparchitechs.com/mikrotik-routeros-v7-11-stable-released/

* .

* Add change file

* attr order

* Add name to fields

* PEP8

* Update changelogs/fragments/375-port_isolation-and-routing_bfd_configuration.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update changelogs/fragments/375-port_isolation-and-routing_bfd_configuration.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: Michael Jenny <mjenny@ansible.zvcloud.de>
2025-06-13 08:10:37 +02:00
SdVSysAdmin
49e4b83594
support for 'ip ipsec mode-config' (#376)
* Added support for 'ip ipsec mode-config'

* Create 376-ipsec-mode-config.yml

---------

Co-authored-by: Laurent Papier <papier@sdv.fr>
2025-06-13 08:10:27 +02:00
Felix Fontein
ab1026504c
Allow to ignore dynamic and builtin entries. (#373) 2025-05-31 16:50:52 +02:00
Michael Jenny
f5b952751e
Update _api_data.py (#371)
* Update _api_data.py

Add /interface/bridge property "port-cost-mode" which is supported since RouterOS 7.13.

See changelog for details: https://mikrotik.com/download/changelogs

* Create 371-add-bridge-port-cost-mode.yml

* Update changelogs/fragments/371-add-bridge-port-cost-mode.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2025-05-29 14:58:38 +02:00
Felix Fontein
08152376de Fix linting errors. 2025-04-26 12:18:29 +02:00
hansmi
770e4d2c8d
Rename Wireguard peer "is-responder" to "responder" for RouterOS 7.17 (#364)
RouterOS 7.17 renamed the `is-responder` property in
`/interface/wireguard/peers` to `responder`.
2025-04-20 21:48:26 +02:00
Tim de Boer
9dba8082f9
Field name change in 'routing bgp connection' (from 'address-families' to 'afi') (#360)
* Field name change in 'routing bgp connection' (from 'address-families' to 'afi')

* Field name change in 'routing bgp connection' (from 'address-families' to 'afi')
2025-04-10 13:03:08 +02:00
hansmi
a920caa16a
Add "mdns-repeat-ifaces" field to "ip dns" (#358)
RouterOS 7.16 introduced an mDNS proxy, configurable via
`mdns-repeat-ifaces` under `/ip/dns`.
2025-03-26 06:51:10 +01:00
hansmi
8736996317
Change default for ddns-enabled to "auto" for RouterOS 7.17 and newer (#350)
From the RouterOS 7.17 changelog:

> *) cloud - changed ddns-enabled setting from "no" to "auto" (service
> is enabled when BTH is enabled);

`no` is not supported anymore, only `yes` and `auto` are.
2025-03-13 07:08:14 +01:00
hansmi
ab446b4449
Fix typo in "API" (#351) 2025-03-12 20:06:39 +01:00
Felix Fontein
3ba33ccd99
Remove primary key. (#345) 2025-02-24 06:16:06 +01:00
Tim de Boer
e302fed6cf
Added support for 'ip dns forwarders' (#343) 2025-02-18 21:25:40 +01:00
Peter Petrovich
388366542d
Add 'interface 6to4' path, allows manage 6to4 tunnels like HE (#342) 2025-01-26 12:52:36 +01:00
Peter Petrovich
575af30d88
DHCPv6 client: add new options from 7.15+ (#341)
* script
* custom-duid
* use-interface-duid
* validate-server-duid
2025-01-26 12:34:43 +01:00
Johannes Münch
85d24d180e
Fixes #284: Implement 'interface wireless access-list' and 'interface wireless connect-list' (#340)
Add changelog fragment
2025-01-24 21:40:39 +01:00
Johannes Münch
364ef6c5fe
Fixes #338: Add require-message-auth in radius path (#339)
* Fixes #338: Add require-message-auth in radius path

Add changelog fragment

* Update changelogs/fragments/339-add-require-message-auth-for-radius.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2025-01-21 20:48:38 +01:00
Felix Fontein
44e6bb6f7a
Add 'idempotent' attribute (#337)
* Add 'idempotent' attribute.

* Mention check mode in attribute description.

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

---------

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
2024-12-30 21:11:17 +01:00
Felix Fontein
2a3460827d Fix doc fragments indents. 2024-12-29 15:48:00 +01:00
Felix Fontein
1e0c582b98 Improve formulations. 2024-12-28 16:52:27 +01:00
Felix Fontein
539119c57d
Reformat documentation with 'andebox yaml-doc' (#335)
* Reformat documentation with 'andebox yaml-doc'.

* Revert unwanted changes.
2024-12-28 15:34:20 +01:00
Felix Fontein
77de6d90bf Improve language. 2024-12-28 14:27:15 +01:00
Serhiy
a7340eae1a
community-list for /routing/filter (#331)
* Update _api_data.py

added ('routing', 'filter', 'community-list')

* Update api_info.py

added routing filter community-list

* Update api_modify.py

added routing filter community-list

* Create 331-add-routing-filter-community-list.yml

* Update api_info.py

* Update api_modify.py
2024-12-14 14:20:58 +01:00
liquorice-head
249b1a92e2
Update _api_data.py (#324)
* Update _api_data.py

* Create 324-fix-firewall-log-and-log-prefix.yaml

* Update changelogs/fragments/324-fix-firewall-log-and-log-prefix.yaml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update test_api_info.py

* fix tests

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
Co-authored-by: alsmirnov <alsmirnov@ourgapps.com>
2024-11-23 00:19:05 +01:00
gardar
d44262d820
fix: add missing fields to ip pool path (#327)
* fix: add missing fields to `ip pool` path

Signed-off-by: gardar <gardar@users.noreply.github.com>

* fix: remove unneeded copy-from

Signed-off-by: gardar <gardar@users.noreply.github.com>

---------

Signed-off-by: gardar <gardar@users.noreply.github.com>
2024-11-04 19:05:52 +01:00
Felix Fontein
e18de43407
Prepare 3.0.0 release (#318)
* Prepare 3.0.0 release.

* Install using ansible-galaxy via git instead of cloning directly.
2024-10-18 21:01:46 +02:00
Johannes Münch
b499d9d7d9
Add new parameters from RouterOS 7.16 release (#323)
* Add new parameters from RouterOS 7.16 release

h3. /interface/bridge

- `forward-reserved-addresses` with default value `False`
- `max-learned-entries` with default value `auto`

h3. /ip/neighbor/discovery-settings

- `lldp-mac-phy-config` with default value `False` (from Router OS 7.15
release)
- `discover-interval` with default value `30s`
- `lldp-vlan-info` with default value `False`

h3. /ip/settings

- `ipv4-multipath-hash-policy` with default value `l3`

h3. /ipv6/settings

- `multipath-hash-policy` with default value `l3`

h3. /ip/dhcp-server/option

- `comment`

h3. /ip/dhcp-server/option/sets

- `comment`

h3. /ip/dhcp-server/matcher

- `comment`

h3. /tool/netwatch

- `acccept-icmp-time-exceeded` with default value `False`
- `ttl` with defaut value `255`

h3. /ip/service

- `max-sessions` with default value `20`

Add changelog fragment

* Update changelogs/fragments/323-add-ros-7.16-parameters.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-10-14 20:50:36 +02:00
liquorice-head
945e4d4d45
add l2tp client interface configuration support (#322)
* Update api_modify.py

* Update api_info.py

* Update _api_data.py

* Create 322-add-l2tp-client-interface-configuration.yml

* Update api_info.py

* Update api_modify.py

* Update _api_data.py

* Update changelogs/fragments/322-add-l2tp-client-interface-configuration.yml

Co-authored-by: Felix Fontein <felix@fontein.de>

* Update _api_data.py

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-10-13 21:36:36 +02:00
hansmi
22ff089787
Add cpu-frequency, memory-frequency, preboot-etherboot* properties (#320)
Signed-off-by: Michael Hanselmann <public@hansmi.ch>
2024-10-10 21:43:40 +02:00
hansmi
5adc664b04
Support DHCP matching type added in RouterOS 7.16 (#321) 2024-10-10 21:43:30 +02:00
Tr4sK
136250a802
Add default to snmp community api_data (#311)
* Add default to snmp community api_data

* Add changelog fragment

* fix typo

* suggestion from felixfontein

* suggestion from felixfontein

* Apply suggestions from code review

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2024-09-10 09:08:10 +02:00
hansmi
1942b3ddbb
Support "mld-version" and "multicast-querier" on bridge interfaces (#315)
Signed-off-by: Michael Hanselmann <public@hansmi.ch>
2024-09-09 22:57:41 +02:00
Tim de Boer
89b34bdd79
Added support for 'routing filter num-list' (#313)
* Added support for 'routing filter num-list'

* Added support for 'routing filter num-list', changelog

* Added support for 'routing filter num-list', changelog
2024-09-09 22:57:25 +02:00
hansmi
6c2101d4d8
Add support for the "ip dns adlist" path (#310)
Upstream documentation:
https://help.mikrotik.com/docs/display/ROS/DNS#DNS-Adlist
2024-08-22 08:57:28 +02:00
hansmi
b4ea8b2fe7
Add support for the "routing igmp-proxy" path (#309)
Upstream documentation:
https://help.mikrotik.com/docs/display/ROS/IGMP+Proxy
2024-08-15 12:12:25 +02:00
Felix Fontein
0a9b749508
api_modify/api_info: add restrict option (#305)
* Allow to restrict api_info output.

* Allow to restrict what api_modify modifies.

* Add changelog.

* Fix docs.

* Move shared code/docs to module utils and doc fragments.

* Refactor and allow to match by regex.

* Simplify rules, allow to invert rule matcher.

* Add more tests.
2024-08-12 21:16:59 +02:00
Felix Fontein
877c9fa4fe
Fix default of ingress-filtering for ROS < 7. (#306) 2024-08-11 22:29:36 +02:00
hansmi
6986e2fc25
Support name and is-responder properties on Wireguard peers (#304)
From the RouterOS 7.15 changelog:

```
*) wireguard - added option to mark peer as responder only;
*) wireguard - added peer "name" field and display it in logs;
```
2024-08-05 20:46:28 +02:00
hansmi
64ee613a0d
Add support for the "ipv6 nd prefix" path (#303)
Upstream documentation:
https://help.mikrotik.com/docs/display/ROS/IPv6+Neighbor+Discovery#IPv6NeighborDiscovery-Prefix
2024-08-01 17:06:02 +02:00
hansmi
ba806c0593
Add support for the "routing ospf static-neighbor" path (#302)
Upstream documentation:
https://help.mikrotik.com/docs/display/ROS/OSPF#OSPF-StaticNeighbourconfiguration

Signed-off-by: Michael Hanselmann <public@hansmi.ch>
2024-08-01 16:40:16 +02:00
hansmi
8c62d46198
Add IPv4 DHCP option matcher, minor fixes (#300)
* Fix typos in comment on IPsec policy "template" field

* Move IPv4 DHCP server API data next to other DHCP APIs

* Set default for "force" field on DHCP options

Without the default value removing it from the options after it's been
set once leads to an error:

> Key "force" cannot be removed for name="…"

* Add IPv4 DHCP option matcher

RouterOS 7.4 and newer implement matchers for the Vendor ID provided by
DHCP clients. RouterOS 7.16 will add a new `matching-type` property, but
it's not in a stable release yet.

Upstream documentation:
https://help.mikrotik.com/docs/display/ROS/DHCP#DHCP-Genericmatcher
2024-07-21 23:18:31 +02:00
Johannes Münch
3c717e40f9
Add parameter host-key-type for ip ssh path (#297)
Add changelog fragment
2024-06-29 17:33:08 +02:00
Igor
a6d2580a9e
Add support for '/system resource irq rps' path (#295) 2024-06-27 11:58:54 +02:00
Johannes Münch
91fef4e3a9
Add system health settings path (#294)
Add changelog fragment

Change changelog fragment to lower-case
2024-06-27 11:58:24 +02:00
samburney
331a97b12d
Add support for 'ppp secret' path (#286)
* Add support for 'ppp secret' path

* Add changelog fragment
2024-05-18 15:59:49 +02:00