diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f1e14f1..62bd9c83 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ +## [1.11.0](https://github.com/terraform-routeros/terraform-provider-routeros/compare/v1.10.4...v1.11.0) (2023-06-19) + + +### Features + +* New OSPF resource ([4d473ea](https://github.com/terraform-routeros/terraform-provider-routeros/commit/4d473ea2e958a52f6544742cf47f0a1190e36508)) + + +### Bug Fixes + +* Add a helper for the attribute 'inactive' ([adca988](https://github.com/terraform-routeros/terraform-provider-routeros/commit/adca988ca08d36d6cab9a839fbad891827e72a81)) +* Fix for error "no-summaries only valid for stubby areas" ([f222f71](https://github.com/terraform-routeros/terraform-provider-routeros/commit/f222f71691fd6e67b9967d66ef541e9d88376cea)) + ## [1.10.4](https://github.com/terraform-routeros/terraform-provider-routeros/compare/v1.10.3...v1.10.4) (2023-05-30) diff --git a/docs/resources/routing_ospf_area.md b/docs/resources/routing_ospf_area.md new file mode 100644 index 00000000..38f7aca3 --- /dev/null +++ b/docs/resources/routing_ospf_area.md @@ -0,0 +1,47 @@ +# routeros_routing_ospf_area (Resource) + + +## Example Usage +```terraform +resource "routeros_routing_ospf_instance" "test_routing_ospf_instance" { + name = "test_routing_ospf_instance" +} + +resource "routeros_routing_ospf_area" "test_routing_ospf_area" { + name = "test_routing_ospf_area" + instance = routeros_routing_ospf_instance.test_routing_ospf_instance.name +} +``` + + +## Schema + +### Required + +- `instance` (String) Name of the OSPF instance this area belongs to. +- `name` (String) Changing the name of this resource will force it to be recreated. + > The links of other configuration properties to this resource may be lost! + > Changing the name of the resource outside of a Terraform will result in a loss of control integrity for that resource! + +### Optional + +- `area_id` (String) OSPF area identifier. +- `comment` (String) +- `default_cost` (Number) Default cost of injected LSAs into the area. +- `disabled` (Boolean) +- `no_summaries` (Boolean) If set then the area will not flood summary LSAs in the stub area. +- `nssa_translate` (String) The parameter indicates which ABR will be used as a translator from type7 to type5 LSA. +- `type` (String) The area type. + +### Read-Only + +- `id` (String) The ID of this resource. +- `inactive` (Boolean) + +## Import +Import is supported using the following syntax: +```shell +#The ID can be found via API or the terminal +#The command for the terminal is -> /routing/ospf/area/print show-ids +terraform import routeros_routing_ospf_area.test_routing_ospf_area "*0" +``` diff --git a/docs/resources/routing_ospf_instance.md b/docs/resources/routing_ospf_instance.md new file mode 100644 index 00000000..d6992449 --- /dev/null +++ b/docs/resources/routing_ospf_instance.md @@ -0,0 +1,49 @@ +# routeros_routing_ospf_instance (Resource) + + +## Example Usage +```terraform +resource "routeros_routing_ospf_instance" "test_routing_ospf_instance" { + name = "test_routing_ospf_instance" +} +``` + + +## Schema + +### Required + +- `name` (String) Changing the name of this resource will force it to be recreated. + > The links of other configuration properties to this resource may be lost! + > Changing the name of the resource outside of a Terraform will result in a loss of control integrity for that resource! + +### Optional + +- `comment` (String) +- `disabled` (Boolean) +- `domain_id` (String) MPLS-related parameter. +- `domain_tag` (Number) if set, then used in route redistribution (as route-tag in all external LSAs generated by this router), and in route calculation (all external LSAs having this route tag are ignored). Needed for interoperability with older Cisco systems. By default not set. +- `in_filter_chain` (String) name of the routing filter chain used for incoming prefixes +- `mpls_te_address` (String) the area used for MPLS traffic engineering. +- `mpls_te_area` (String) the area used for MPLS traffic engineering. +- `originate_default` (String) Specifies default route (0.0.0.0/0) distribution method. +- `out_filter_chain` (String) name of the routing filter chain used for outgoing prefixes filtering. +- `out_filter_select` (String) name of the routing filter select chain, used for output selection. +- `redistribute` (Set of String) Enable redistribution of specific route types. +- `router_id` (String) OSPF Router ID. Can be set explicitly as an IP address, or as the name of the router-id instance. +- `routing_table` (String) Name of the routing table in use. +- `version` (Number) OSPF version this instance will be running (v2 for IPv4, v3 for IPv6). +- `vrf` (String) The VRF table this OSPF instance operates on + +### Read-Only + +- `id` (String) The ID of this resource. +- `inactive` (Boolean) + +## Import +Import is supported using the following syntax: +```shell +#The ID can be found via API or the terminal +#The command for the terminal is -> /routing/ospf/instance/print show-ids +terraform import routeros_routing_ospf_instance.test_routing_ospf_instance "*0" +``` diff --git a/docs/resources/routing_ospf_interface_template.md b/docs/resources/routing_ospf_interface_template.md new file mode 100644 index 00000000..0c4caf8d --- /dev/null +++ b/docs/resources/routing_ospf_interface_template.md @@ -0,0 +1,60 @@ +# routeros_routing_ospf_interface_template (Resource) + + +## Example Usage +```terraform +resource "routeros_routing_ospf_instance" "test_routing_ospf_instance" { + name = "test_routing_ospf_instance" +} + +resource "routeros_routing_ospf_area" "test_routing_ospf_area" { + name = "test_routing_ospf_area" + instance = routeros_routing_ospf_instance.test_routing_ospf_instance.name +} + +resource "routeros_routing_ospf_interface_template" "test_routing_ospf_interface_template" { + area = routeros_routing_ospf_area.test_routing_ospf_area.name +} +``` + + +## Schema + +### Required + +- `area` (String) The OSPF area to which the matching interface will be associated. + +### Optional + +- `auth` (String) Specifies authentication method for OSPF protocol messages. +- `auth_id` (Number) The key id is used to calculate message digest (used when MD5 or SHA authentication is enabled). +- `authentication_key` (String, Sensitive) The authentication key to be used, should match on all the neighbors of the network segment. +- `comment` (String) +- `cost` (Number) Interface cost expressed as link state metric. +- `dead_interval` (String) Specifies the interval after which a neighbor is declared dead. +- `disabled` (Boolean) +- `hello_interval` (String) The interval between HELLO packets that the router sends out this interface. +- `instance_id` (Number) Interface cost expressed as link state metric. +- `interfaces` (Set of String) Interfaces to match. +- `network` (String) The network prefix associated with the area. +- `passive` (Boolean) If enabled, then do not send or receive OSPF traffic on the matching interfaces +- `prefix_list` (String) Name of the address list containing networks that should be advertised to the v3 interface. +- `priority` (Number) Router's priority. Used to determine the designated router in a broadcast network. +- `retransmit_interval` (String) Time interval the lost link state advertisement will be resent. +- `transmit_delay` (String) Link-state transmit delay is the estimated time it takes to transmit a link-state update packet on the interface. +- `type` (String) The OSPF network type on this interface. +- `vlink_neighbor_id` (String) Specifies the router-id of the neighbor which should be connected over the virtual link. +- `vlink_transit_area` (String) A non-backbone area the two routers have in common over which the virtual link will be established. + +### Read-Only + +- `id` (String) The ID of this resource. +- `inactive` (Boolean) + +## Import +Import is supported using the following syntax: +```shell +#The ID can be found via API or the terminal +#The command for the terminal is -> /routing/ospf/interface-template/print show-ids +terraform import routeros_routing_ospf_interface_template.test_routing_ospf_interface_template "*0" +``` diff --git a/package.json b/package.json index b8bcc5fc..01227960 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "terraform-provider-routeros", - "version": "1.10.4", + "version": "1.11.0", "repository": { "type": "git", "url": "https://github.com/terraform-routeros/terraform-provider-routeros"