diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 8c9d24aa..d8269b79 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -197,9 +197,9 @@ jobs: - ansible_version: "stable-2.20" python_version: "3.12" - ansible_version: "milestone" - python_version: "3.12" + python_version: "3.13" - ansible_version: "devel" - python_version: "3.12" + python_version: "3.13" steps: - uses: actions/checkout@v4 - name: Set up Python diff --git a/ansible_collections/juniper/device/changelogs/fragments/fix_action_plugin_sanity.yml b/ansible_collections/juniper/device/changelogs/fragments/fix_action_plugin_sanity.yml new file mode 100644 index 00000000..d6f9debb --- /dev/null +++ b/ansible_collections/juniper/device/changelogs/fragments/fix_action_plugin_sanity.yml @@ -0,0 +1,11 @@ +--- +bugfixes: + - Renamed ``juniper.device`` action plugins to carry the ``junos_`` prefix matching + their corresponding module names, fixing the ``action-plugin-docs`` sanity test + failures. Added ``plugin_routing.action`` and ``plugin_routing.modules`` redirects + in ``juniper.device`` and ``junipernetworks.junos`` ``meta/runtime.yml`` so + playbooks using short aliases or deprecated ``junipernetworks.junos.*`` FQCNs + continue to resolve correctly, including ``l2_interfaces`` and ``lag_interfaces``. + - Fixed ``RETURN`` documentation in ``junos_banner``, ``junos_system``, ``junos_user``, + and ``junos_vrf`` to use nested ``diff`` keys instead of invalid dotted + ``diff.prepared`` keys. diff --git a/ansible_collections/juniper/device/meta/runtime.yml b/ansible_collections/juniper/device/meta/runtime.yml index 061222cf..29ff432c 100644 --- a/ansible_collections/juniper/device/meta/runtime.yml +++ b/ansible_collections/juniper/device/meta/runtime.yml @@ -1,6 +1,71 @@ --- requires_ansible: ">=2.16.0" plugin_routing: + action: + hostname: + redirect: juniper.device.junos_hostname + interfaces: + redirect: juniper.device.junos_interfaces + acls: + redirect: juniper.device.junos_acls + acl_interfaces: + redirect: juniper.device.junos_acl_interfaces + banner: + redirect: juniper.device.junos_banner + bgp_address_family: + redirect: juniper.device.junos_bgp_address_family + bgp_global: + redirect: juniper.device.junos_bgp_global + lacp: + redirect: juniper.device.junos_lacp + lacp_interfaces: + redirect: juniper.device.junos_lacp_interfaces + l2_interfaces: + redirect: juniper.device.junos_l2_interfaces + lag_interfaces: + redirect: juniper.device.junos_lag_interfaces + l3_intefaces: + redirect: juniper.device.junos_l3_interfaces + lacp_intefaces: + redirect: juniper.device.junos_lacp_interfaces + lldp_global: + redirect: juniper.device.junos_lldp_global + lldp_interfaces: + redirect: juniper.device.junos_lldp_interfaces + logging_global: + redirect: juniper.device.junos_logging_global + netconf: + redirect: juniper.device.junos_netconf + ntp_global: + redirect: juniper.device.junos_ntp_global + ospf_interfaces: + redirect: juniper.device.junos_ospf_interfaces + ospfv2: + redirect: juniper.device.junos_ospfv2 + ospfv3: + redirect: juniper.device.junos_ospfv3 + package: + redirect: juniper.device.junos_package + prefix_lists: + redirect: juniper.device.junos_prefix_lists + routing_instances: + redirect: juniper.device.junos_routing_instances + routing_options: + redirect: juniper.device.junos_routing_options + security_policies: + redirect: juniper.device.junos_security_policies + security_policies_global: + redirect: juniper.device.junos_security_policies_global + security_zones: + redirect: juniper.device.junos_security_zones + snmp_server: + redirect: juniper.device.junos_snmp_server + static_routes: + redirect: juniper.device.junos_static_routes + user: + redirect: juniper.device.junos_user + vlans: + redirect: juniper.device.junos_vlans modules: hostname: redirect: juniper.device.junos_hostname @@ -20,6 +85,10 @@ plugin_routing: redirect: juniper.device.junos_lacp lacp_interfaces: redirect: juniper.device.junos_lacp_interfaces + l2_interfaces: + redirect: juniper.device.junos_l2_interfaces + lag_interfaces: + redirect: juniper.device.junos_lag_interfaces lldp_global: redirect: juniper.device.junos_lldp_global lldp_interfaces: diff --git a/ansible_collections/juniper/device/plugins/action/acl_interfaces.py b/ansible_collections/juniper/device/plugins/action/junos_acl_interfaces.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/acl_interfaces.py rename to ansible_collections/juniper/device/plugins/action/junos_acl_interfaces.py diff --git a/ansible_collections/juniper/device/plugins/action/acls.py b/ansible_collections/juniper/device/plugins/action/junos_acls.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/acls.py rename to ansible_collections/juniper/device/plugins/action/junos_acls.py diff --git a/ansible_collections/juniper/device/plugins/action/bgp_address_family.py b/ansible_collections/juniper/device/plugins/action/junos_bgp_address_family.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/bgp_address_family.py rename to ansible_collections/juniper/device/plugins/action/junos_bgp_address_family.py diff --git a/ansible_collections/juniper/device/plugins/action/bgp_global.py b/ansible_collections/juniper/device/plugins/action/junos_bgp_global.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/bgp_global.py rename to ansible_collections/juniper/device/plugins/action/junos_bgp_global.py diff --git a/ansible_collections/juniper/device/plugins/action/hostname.py b/ansible_collections/juniper/device/plugins/action/junos_hostname.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/hostname.py rename to ansible_collections/juniper/device/plugins/action/junos_hostname.py diff --git a/ansible_collections/juniper/device/plugins/action/interfaces.py b/ansible_collections/juniper/device/plugins/action/junos_interfaces.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/interfaces.py rename to ansible_collections/juniper/device/plugins/action/junos_interfaces.py diff --git a/ansible_collections/juniper/device/plugins/action/l2_interfaces.py b/ansible_collections/juniper/device/plugins/action/junos_l2_interfaces.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/l2_interfaces.py rename to ansible_collections/juniper/device/plugins/action/junos_l2_interfaces.py diff --git a/ansible_collections/juniper/device/plugins/action/l3_intefaces.py b/ansible_collections/juniper/device/plugins/action/junos_l3_interfaces.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/l3_intefaces.py rename to ansible_collections/juniper/device/plugins/action/junos_l3_interfaces.py diff --git a/ansible_collections/juniper/device/plugins/action/lacp.py b/ansible_collections/juniper/device/plugins/action/junos_lacp.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/lacp.py rename to ansible_collections/juniper/device/plugins/action/junos_lacp.py diff --git a/ansible_collections/juniper/device/plugins/action/lacp_intefaces.py b/ansible_collections/juniper/device/plugins/action/junos_lacp_interfaces.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/lacp_intefaces.py rename to ansible_collections/juniper/device/plugins/action/junos_lacp_interfaces.py diff --git a/ansible_collections/juniper/device/plugins/action/lag_interfaces.py b/ansible_collections/juniper/device/plugins/action/junos_lag_interfaces.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/lag_interfaces.py rename to ansible_collections/juniper/device/plugins/action/junos_lag_interfaces.py diff --git a/ansible_collections/juniper/device/plugins/action/lldp_global.py b/ansible_collections/juniper/device/plugins/action/junos_lldp_global.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/lldp_global.py rename to ansible_collections/juniper/device/plugins/action/junos_lldp_global.py diff --git a/ansible_collections/juniper/device/plugins/action/lldp_interfaces.py b/ansible_collections/juniper/device/plugins/action/junos_lldp_interfaces.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/lldp_interfaces.py rename to ansible_collections/juniper/device/plugins/action/junos_lldp_interfaces.py diff --git a/ansible_collections/juniper/device/plugins/action/logging_global.py b/ansible_collections/juniper/device/plugins/action/junos_logging_global.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/logging_global.py rename to ansible_collections/juniper/device/plugins/action/junos_logging_global.py diff --git a/ansible_collections/juniper/device/plugins/action/netconf.py b/ansible_collections/juniper/device/plugins/action/junos_netconf.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/netconf.py rename to ansible_collections/juniper/device/plugins/action/junos_netconf.py diff --git a/ansible_collections/juniper/device/plugins/action/ntp_global.py b/ansible_collections/juniper/device/plugins/action/junos_ntp_global.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/ntp_global.py rename to ansible_collections/juniper/device/plugins/action/junos_ntp_global.py diff --git a/ansible_collections/juniper/device/plugins/action/ospf_interfaces.py b/ansible_collections/juniper/device/plugins/action/junos_ospf_interfaces.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/ospf_interfaces.py rename to ansible_collections/juniper/device/plugins/action/junos_ospf_interfaces.py diff --git a/ansible_collections/juniper/device/plugins/action/ospfv2.py b/ansible_collections/juniper/device/plugins/action/junos_ospfv2.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/ospfv2.py rename to ansible_collections/juniper/device/plugins/action/junos_ospfv2.py diff --git a/ansible_collections/juniper/device/plugins/action/ospfv3.py b/ansible_collections/juniper/device/plugins/action/junos_ospfv3.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/ospfv3.py rename to ansible_collections/juniper/device/plugins/action/junos_ospfv3.py diff --git a/ansible_collections/juniper/device/plugins/action/prefix_lists.py b/ansible_collections/juniper/device/plugins/action/junos_prefix_lists.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/prefix_lists.py rename to ansible_collections/juniper/device/plugins/action/junos_prefix_lists.py diff --git a/ansible_collections/juniper/device/plugins/action/routing_instances.py b/ansible_collections/juniper/device/plugins/action/junos_routing_instances.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/routing_instances.py rename to ansible_collections/juniper/device/plugins/action/junos_routing_instances.py diff --git a/ansible_collections/juniper/device/plugins/action/routing_options.py b/ansible_collections/juniper/device/plugins/action/junos_routing_options.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/routing_options.py rename to ansible_collections/juniper/device/plugins/action/junos_routing_options.py diff --git a/ansible_collections/juniper/device/plugins/action/security_policies.py b/ansible_collections/juniper/device/plugins/action/junos_security_policies.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/security_policies.py rename to ansible_collections/juniper/device/plugins/action/junos_security_policies.py diff --git a/ansible_collections/juniper/device/plugins/action/security_policies_global.py b/ansible_collections/juniper/device/plugins/action/junos_security_policies_global.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/security_policies_global.py rename to ansible_collections/juniper/device/plugins/action/junos_security_policies_global.py diff --git a/ansible_collections/juniper/device/plugins/action/security_zones.py b/ansible_collections/juniper/device/plugins/action/junos_security_zones.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/security_zones.py rename to ansible_collections/juniper/device/plugins/action/junos_security_zones.py diff --git a/ansible_collections/juniper/device/plugins/action/snmp_server.py b/ansible_collections/juniper/device/plugins/action/junos_snmp_server.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/snmp_server.py rename to ansible_collections/juniper/device/plugins/action/junos_snmp_server.py diff --git a/ansible_collections/juniper/device/plugins/action/static_routes.py b/ansible_collections/juniper/device/plugins/action/junos_static_routes.py similarity index 100% rename from ansible_collections/juniper/device/plugins/action/static_routes.py rename to ansible_collections/juniper/device/plugins/action/junos_static_routes.py diff --git a/ansible_collections/juniper/device/plugins/modules/junos_banner.py b/ansible_collections/juniper/device/plugins/modules/junos_banner.py index e0c885a4..6bca2135 100644 --- a/ansible_collections/juniper/device/plugins/modules/junos_banner.py +++ b/ansible_collections/juniper/device/plugins/modules/junos_banner.py @@ -95,13 +95,17 @@ """ RETURN = """ -diff.prepared: +diff: description: Configuration difference before and after applying change. returned: when configuration is changed and diff option is enabled. - type: str - sample: > - [edit system login] - + message \"this is my login banner\"; + type: dict + contains: + prepared: + description: Prepared configuration diff. + type: str + sample: > + [edit system login] + + message \"this is my login banner\"; """ import collections diff --git a/ansible_collections/juniper/device/plugins/modules/junos_system.py b/ansible_collections/juniper/device/plugins/modules/junos_system.py index b3167898..caa1ea18 100644 --- a/ansible_collections/juniper/device/plugins/modules/junos_system.py +++ b/ansible_collections/juniper/device/plugins/modules/junos_system.py @@ -92,18 +92,22 @@ """ RETURN = """ -diff.prepared: +diff: description: Configuration difference before and after applying change. returned: when configuration is changed and diff option is enabled. - type: str - sample: > - [edit system] - + host-name test; - + domain-name ansible.com; - + domain-search redhat.com; - [edit system name-server] - 172.26.1.1 { ... } - + 8.8.8.8; + type: dict + contains: + prepared: + description: Prepared configuration diff. + type: str + sample: > + [edit system] + + host-name test; + + domain-name ansible.com; + + domain-search redhat.com; + [edit system name-server] + 172.26.1.1 { ... } + + 8.8.8.8; """ import collections diff --git a/ansible_collections/juniper/device/plugins/modules/junos_user.py b/ansible_collections/juniper/device/plugins/modules/junos_user.py index a81a5a61..ba60aed8 100644 --- a/ansible_collections/juniper/device/plugins/modules/junos_user.py +++ b/ansible_collections/juniper/device/plugins/modules/junos_user.py @@ -190,16 +190,20 @@ - {name: test_user2, full_name: test_user2, role: read-only, state: absent} """ RETURN = """ -diff.prepared: +diff: description: Configuration difference before and after applying change. returned: when configuration is changed and diff option is enabled. - type: str - sample: > - [edit system login] - + user test-user { - + uid 2005; - + class read-only; - + } + type: dict + contains: + prepared: + description: Prepared configuration diff. + type: str + sample: > + [edit system login] + + user test-user { + + uid 2005; + + class read-only; + + } """ from copy import deepcopy from functools import partial diff --git a/ansible_collections/juniper/device/plugins/modules/junos_vrf.py b/ansible_collections/juniper/device/plugins/modules/junos_vrf.py index cbc9383b..83354ad4 100644 --- a/ansible_collections/juniper/device/plugins/modules/junos_vrf.py +++ b/ansible_collections/juniper/device/plugins/modules/junos_vrf.py @@ -210,20 +210,24 @@ """ RETURN = """ -diff.prepared: +diff: description: Configuration difference before and after applying change. returned: when configuration is changed and diff option is enabled. - type: str - sample: > - [edit routing-instances] - + test-1 { - + description test-vrf-1; - + instance-type vrf; - + interface ge-0/0/2.0; - + interface ge-0/0/3.0; - + route-distinguisher 192.0.2.1:10; - + vrf-target target:65514:113; - + } + type: dict + contains: + prepared: + description: Prepared configuration diff. + type: str + sample: > + [edit routing-instances] + + test-1 { + + description test-vrf-1; + + instance-type vrf; + + interface ge-0/0/2.0; + + interface ge-0/0/3.0; + + route-distinguisher 192.0.2.1:10; + + vrf-target target:65514:113; + + } """ import collections diff --git a/ansible_collections/juniper/device/tests/sanity/ignore-2.21.txt b/ansible_collections/juniper/device/tests/sanity/ignore-2.21.txt new file mode 100644 index 00000000..670bc512 --- /dev/null +++ b/ansible_collections/juniper/device/tests/sanity/ignore-2.21.txt @@ -0,0 +1,17 @@ +plugins/callback/jsnapy.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/command.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/config.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/facts.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/file_copy.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/jsnapy.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/ping.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/table.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/system.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/srx_cluster.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/software.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/rpc.py validate-modules!skip # waiting for issue 729 fix +plugins/modules/pmtud.py validate-modules!skip # waiting for issue 729 fix +plugins/connection/pyez.py validate-modules!skip # waiting for issue 729 fix +plugins/action/extract_data.py action-plugin-docs +plugins/action/juniper_junos_common_action.py action-plugin-docs +plugins/callback/jsnapy.py ansible-doc!skip diff --git a/ansible_collections/junipernetworks/junos/meta/runtime.yml b/ansible_collections/junipernetworks/junos/meta/runtime.yml index 455cc4f7..93621c03 100644 --- a/ansible_collections/junipernetworks/junos/meta/runtime.yml +++ b/ansible_collections/junipernetworks/junos/meta/runtime.yml @@ -6,6 +6,279 @@ plugin_routing: action: junos: redirect: juniper.device.junos + junos_acl_interfaces: + redirect: juniper.device.junos_acl_interfaces + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_acl_interfaces instead. + Redirects will be removed after 2028-04-01. + junos_banner: + redirect: juniper.device.junos_banner + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_banner instead. + Redirects will be removed after 2028-04-01. + junos_command: + redirect: juniper.device.junos_command + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_command instead. + Redirects will be removed after 2028-04-01. + junos_config: + redirect: juniper.device.junos_config + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_config instead. + Redirects will be removed after 2028-04-01. + config: + redirect: juniper.device.junos_config + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_config instead. + Redirects will be removed after 2028-04-01. + junos_facts: + redirect: juniper.device.junos_facts + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_facts instead. + Redirects will be removed after 2028-04-01. + junos_interfaces: + redirect: juniper.device.junos_interfaces + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_interfaces instead. + Redirects will be removed after 2028-04-01. + junos_acls: + redirect: juniper.device.junos_acls + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_acls instead. + Redirects will be removed after 2028-04-01. + junos_hostname: + redirect: juniper.device.junos_hostname + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_hostname instead. + Redirects will be removed after 2028-04-01. + junos_l2_interfaces: + redirect: juniper.device.junos_l2_interfaces + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_l2_interfaces instead. + Redirects will be removed after 2028-04-01. + junos_l3_interfaces: + redirect: juniper.device.junos_l3_interfaces + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_l3_interfaces instead. + Redirects will be removed after 2028-04-01. + junos_lacp: + redirect: juniper.device.junos_lacp + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_lacp instead. + Redirects will be removed after 2028-04-01. + junos_lacp_interfaces: + redirect: juniper.device.junos_lacp_interfaces + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_lacp_interfaces instead. + Redirects will be removed after 2028-04-01. + junos_lag_interfaces: + redirect: juniper.device.junos_lag_interfaces + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_lag_interfaces instead. + Redirects will be removed after 2028-04-01. + junos_lldp_global: + redirect: juniper.device.junos_lldp_global + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_lldp_global instead. + Redirects will be removed after 2028-04-01. + junos_bgp_global: + redirect: juniper.device.junos_bgp_global + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_bgp_global instead. + Redirects will be removed after 2028-04-01. + junos_bgp_address_family: + redirect: juniper.device.junos_bgp_address_family + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_bgp_address_family instead. + Redirects will be removed after 2028-04-01. + junos_routing_instances: + redirect: juniper.device.junos_routing_instances + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_routing_instances instead. + Redirects will be removed after 2028-04-01. + junos_prefix_lists: + redirect: juniper.device.junos_prefix_lists + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_prefix_lists instead. + Redirects will be removed after 2028-04-01. + junos_logging_global: + redirect: juniper.device.junos_logging_global + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_logging_global instead. + Redirects will be removed after 2028-04-01. + junos_ntp_global: + redirect: juniper.device.junos_ntp_global + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_ntp_global instead. + Redirects will be removed after 2028-04-01. + junos_security_policies: + redirect: juniper.device.junos_security_policies + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_security_policies instead. + Redirects will be removed after 2028-04-01. + junos_security_policies_global: + redirect: juniper.device.junos_security_policies_global + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_security_policies_global instead. + Redirects will be removed after 2028-04-01. + junos_security_zones: + redirect: juniper.device.junos_security_zones + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_security_zones instead. + Redirects will be removed after 2028-04-01. + junos_snmp_server: + redirect: juniper.device.junos_snmp_server + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_snmp_server instead. + Redirects will be removed after 2028-04-01. + junos_routing_options: + redirect: juniper.device.junos_routing_options + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_routing_options instead. + Redirects will be removed after 2028-04-01. + junos_lldp_interfaces: + redirect: juniper.device.junos_lldp_interfaces + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_lldp_interfaces instead. + Redirects will be removed after 2028-04-01. + junos_netconf: + redirect: juniper.device.junos_netconf + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_netconf instead. + Redirects will be removed after 2028-04-01. + junos_ospfv2: + redirect: juniper.device.junos_ospfv2 + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_ospfv2 instead. + Redirects will be removed after 2028-04-01. + junos_ospfv3: + redirect: juniper.device.junos_ospfv3 + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_ospfv3 instead. + Redirects will be removed after 2028-04-01. + junos_ospf_interfaces: + redirect: juniper.device.junos_ospf_interfaces + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_ospf_interfaces instead. + Redirects will be removed after 2028-04-01. + junos_package: + redirect: juniper.device.junos_package + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_package instead. + Redirects will be removed after 2028-04-01. + junos_rpc: + redirect: juniper.device.junos_rpc + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_rpc instead. + Redirects will be removed after 2028-04-01. + junos_ping: + redirect: juniper.device.junos_ping + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_ping instead. + Redirects will be removed after 2028-04-01. + junos_static_routes: + redirect: juniper.device.junos_static_routes + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_static_routes instead. + Redirects will be removed after 2028-04-01. + junos_system: + redirect: juniper.device.junos_system + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_system instead. + Redirects will be removed after 2028-04-01. + junos_user: + redirect: juniper.device.junos_user + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_user instead. + Redirects will be removed after 2028-04-01. + junos_vlans: + redirect: juniper.device.junos_vlans + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_vlans instead. + Redirects will be removed after 2028-04-01. + junos_vrf: + redirect: juniper.device.junos_vrf + deprecation: + removal_date: "2028-04-01" + warning_text: | + The junipernetworks.junos collection is deprecated. Use juniper.device.junos_vrf instead. + Redirects will be removed after 2028-04-01. netconf: junos: redirect: juniper.device.junos