cisco_node_utils 2.0.2 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +37 -0
  3. data/lib/cisco_node_utils/bfd_global.rb +4 -0
  4. data/lib/cisco_node_utils/cisco_cmn_utils.rb +25 -0
  5. data/lib/cisco_node_utils/cmd_ref/interface.yaml +18 -18
  6. data/lib/cisco_node_utils/cmd_ref/interface_channel_group.yaml +4 -1
  7. data/lib/cisco_node_utils/cmd_ref/interface_evpn_multisite.yaml +1 -1
  8. data/lib/cisco_node_utils/cmd_ref/interface_ospf.yaml +17 -15
  9. data/lib/cisco_node_utils/interface.rb +117 -118
  10. data/lib/cisco_node_utils/interface_channel_group.rb +17 -8
  11. data/lib/cisco_node_utils/interface_evpn_multisite.rb +15 -6
  12. data/lib/cisco_node_utils/interface_ospf.rb +126 -102
  13. data/lib/cisco_node_utils/itd_service.rb +8 -0
  14. data/lib/cisco_node_utils/node.rb +0 -1
  15. data/lib/cisco_node_utils/platform.rb +16 -32
  16. data/lib/cisco_node_utils/version.rb +1 -1
  17. data/lib/cisco_node_utils/vlan.rb +1 -2
  18. data/lib/cisco_node_utils/vxlan_vtep.rb +1 -1
  19. data/tests/test_interface.rb +74 -13
  20. data/tests/test_interface_bdi.rb +2 -2
  21. data/tests/test_interface_channel_group.rb +24 -17
  22. data/tests/test_interface_evpn_multisite.rb +35 -0
  23. data/tests/test_interface_ospf.rb +71 -3
  24. data/tests/test_itd_service.rb +16 -4
  25. data/tests/test_node_ext.rb +4 -1
  26. data/tests/test_portchannel_global.rb +3 -0
  27. data/tests/test_router_ospf_vrf.rb +2 -34
  28. data/tests/test_stp_global.rb +4 -0
  29. metadata +3 -6
  30. data/lib/cisco_node_utils/cmd_ref/DEPRECATED.yaml +0 -118
  31. data/lib/cisco_node_utils/interface_DEPRECATED.rb +0 -518
  32. data/lib/cisco_node_utils/vlan_DEPRECATED.rb +0 -108
@@ -51,7 +51,7 @@ class TestItdSvc < CiscoTestCase
51
51
  def test_access_list
52
52
  skip_nexus_i2_image?
53
53
  itd = ItdService.new('new_group')
54
- config 'ip access-list include'
54
+ config 'ip access-list include ; permit ip any any'
55
55
  config 'ip access-list exclude'
56
56
  itd.access_list = 'include'
57
57
  itd.exclude_access_list = 'exclude'
@@ -98,9 +98,21 @@ class TestItdSvc < CiscoTestCase
98
98
  intf = interfaces[0].dup
99
99
  new_intf = Interface.new(interfaces[0])
100
100
  new_intf.switchport_mode = :disabled
101
- ii = [['vlan 2', '1.1.1.1'],
102
- [intf.insert(8, ' '), '2.2.2.2'],
103
- ['port-channel 100', '3.3.3.3']]
101
+ # The next-hop setting as part of the ingress_interface
102
+ # is not needed for n9k and in the latest images is not
103
+ # even supported by the cli.
104
+ if Platform.image_version[/9\.\d+/]
105
+ next_hop1 = ''
106
+ next_hop2 = ''
107
+ next_hop3 = ''
108
+ else
109
+ next_hop1 = '1.1.1.1'
110
+ next_hop2 = '2.2.2.2'
111
+ next_hop3 = '3.3.3.3'
112
+ end
113
+ ii = [['vlan 2', next_hop1],
114
+ [intf.insert(8, ' '), next_hop2],
115
+ ['port-channel 100', next_hop3]]
104
116
  itd.ingress_interface = ii
105
117
  assert_equal(itd.ingress_interface, ii)
106
118
  ii = [['vlan 2', ''],
@@ -37,7 +37,8 @@ class TestNodeExt < CiscoTestCase
37
37
  node.client.set(context: ['interface loopback0'], values: ['shutdown'])
38
38
  node.client.set(values: ['interface loopback1', 'no shutdown'])
39
39
 
40
- result = node.config_get('interface', 'shutdown', name: 'loopback1')
40
+ result = node.config_get('interface', 'shutdown',
41
+ name: 'loopback1', show_name: 'loopback1')
41
42
  refute(result)
42
43
  end
43
44
 
@@ -143,8 +144,10 @@ class TestNodeExt < CiscoTestCase
143
144
  def test_get_product_id
144
145
  # N3|9K Fretta product_id gets a '-F' appended so remove it for this check
145
146
  if product_tag[/n(3|9)k-f/]
147
+ node.client.cache_flush
146
148
  chassis = node.product_id.sub('-F', '')
147
149
  else
150
+ node.client.cache_flush
148
151
  chassis = node.product_id
149
152
  end
150
153
  assert_output_check(command: 'show inventory',
@@ -192,6 +192,9 @@ class TestPortchannelGlobal < CiscoTestCase
192
192
  skip('Test not supported on this platform') if n3k_in_n3k_mode? ||
193
193
  validate_property_excluded?('portchannel_global', 'symmetry')
194
194
  # rubocop:enable Style/MultilineOperationIndentation
195
+ # TBD: concat not supported; add N9k-EX to allowed platforms list and
196
+ # use proper _exclude tags
197
+ skip('TBD: Limited support for N9k-EX') if node.product_id[/N9K.*EX/]
195
198
 
196
199
  global = create_portchannel_global
197
200
  global.send(:port_channel_load_balance=,
@@ -244,11 +244,10 @@ class TestRouterOspfVrf < CiscoTestCase
244
244
  end
245
245
 
246
246
  def test_create_name_zero_length
247
- routerospf = RouterOspf.new('testOspf')
247
+ RouterOspf.new('testOspf')
248
248
  assert_raises(ArgumentError) do
249
249
  RouterOspfVrf.new('testOspf', '')
250
250
  end
251
- routerospf.destroy
252
251
  end
253
252
 
254
253
  def test_create_valid
@@ -259,7 +258,6 @@ class TestRouterOspfVrf < CiscoTestCase
259
258
  assert_match_vrf_line(ospfname, vrfname)
260
259
  assert_equal(vrfname, vrf.name,
261
260
  "Error: #{vrfname} vrf, create failed")
262
- vrf.parent.destroy
263
261
  end
264
262
 
265
263
  def test_get_parent_name
@@ -267,7 +265,6 @@ class TestRouterOspfVrf < CiscoTestCase
267
265
  vrf = create_routerospfvrf(routerospf.name)
268
266
  assert_equal(routerospf.name, vrf.parent.name,
269
267
  'Error: Parent value is not correct')
270
- routerospf.destroy
271
268
  end
272
269
 
273
270
  def test_get_name
@@ -276,7 +273,6 @@ class TestRouterOspfVrf < CiscoTestCase
276
273
  assert_match_vrf_line('green', vrfname)
277
274
  assert_equal(vrfname, vrf.name,
278
275
  "Error: #{vrfname} vrf, name get value mismatch")
279
- vrf.parent.destroy
280
276
  end
281
277
 
282
278
  def test_destroy
@@ -286,7 +282,6 @@ class TestRouterOspfVrf < CiscoTestCase
286
282
  vrf.destroy
287
283
  end
288
284
  assert_match_vrf_line(vrf.parent.name, vrfname)
289
- vrf.parent.destroy
290
285
  end
291
286
 
292
287
  def test_auto_cost
@@ -298,7 +293,6 @@ class TestRouterOspfVrf < CiscoTestCase
298
293
  assert_match_vrf_line(vrf.parent.name, vrf.name, pattern)
299
294
  assert_equal(auto_cost_value, vrf.auto_cost,
300
295
  'Error: auto-cost, get value mismatch')
301
- vrf.parent.destroy
302
296
  end
303
297
 
304
298
  def test_auto_cost_multiple_vrf
@@ -321,7 +315,6 @@ class TestRouterOspfVrf < CiscoTestCase
321
315
  assert_match_vrf_line(routerospf.name, vrf1.name, pattern)
322
316
  assert_equal(auto_cost_value, vrf1.auto_cost,
323
317
  "Error: #{vrf1.name} vrf, auto-cost get value mismatch")
324
- routerospf.destroy
325
318
  end
326
319
 
327
320
  def test_get_default_auto_cost
@@ -332,7 +325,6 @@ class TestRouterOspfVrf < CiscoTestCase
332
325
  'Error: default auto-cost get value mismatch')
333
326
  assert_equal(auto_cost_value, vrf.auto_cost,
334
327
  'Error: auto-cost get value default mismatch')
335
- vrf.parent.destroy
336
328
  end
337
329
 
338
330
  def test_bfd
@@ -349,7 +341,6 @@ class TestRouterOspfVrf < CiscoTestCase
349
341
  vrf1.bfd = vrf1.default_bfd
350
342
  assert_equal(vrf.default_bfd, vrf.bfd)
351
343
  assert_equal(vrf1.default_bfd, vrf1.bfd)
352
- routerospf.destroy
353
344
  end
354
345
 
355
346
  def test_default_metric
@@ -365,7 +356,6 @@ class TestRouterOspfVrf < CiscoTestCase
365
356
  return unless step_unless_legacy_defect(skip_versions, 'CSCvi74876: Cannot remove default metric')
366
357
  vrf.default_metric = vrf.default_default_metric
367
358
  refute_match_vrf_line(vrf.parent.name, vrf.name, pattern)
368
- vrf.parent.destroy
369
359
  end
370
360
 
371
361
  def test_default_metric_multiple_vrf
@@ -387,8 +377,6 @@ class TestRouterOspfVrf < CiscoTestCase
387
377
  assert_match_vrf_line(routerospf.name, vrf1.name, pattern)
388
378
  assert_equal(metric, vrf1.default_metric,
389
379
  "Error: #{vrf1.name} vrf, default-metric get value mismatch")
390
-
391
- routerospf.destroy
392
380
  end
393
381
 
394
382
  def test_log_adjacency_changes
@@ -413,7 +401,6 @@ class TestRouterOspfVrf < CiscoTestCase
413
401
  vrf.log_adjacency = vrf.default_log_adjacency
414
402
  pattern = /\s+log-adjacency-changes(.*)/
415
403
  refute_match_vrf_line(vrf.parent.name, vrf.name, pattern)
416
- vrf.parent.destroy
417
404
  end
418
405
 
419
406
  def test_log_adjacency_multiple_vrf
@@ -433,8 +420,6 @@ class TestRouterOspfVrf < CiscoTestCase
433
420
  assert_match_vrf_line(routerospf.name, vrf1.name, pattern)
434
421
  assert_equal(:detail, vrf1.log_adjacency,
435
422
  "Error: #{vrf1.name} vrf, log-adjacency get value mismatch")
436
-
437
- routerospf.destroy
438
423
  end
439
424
 
440
425
  def test_log_adjacency_multiple_vrf_2
@@ -453,8 +438,6 @@ class TestRouterOspfVrf < CiscoTestCase
453
438
  assert_equal(:none, vrf_default.log_adjacency,
454
439
  "Error: #{vrf_default.name} vrf_default, " \
455
440
  'log-adjacency get value mismatch')
456
-
457
- routerospf.destroy
458
441
  end
459
442
 
460
443
  def test_router_id
@@ -468,7 +451,6 @@ class TestRouterOspfVrf < CiscoTestCase
468
451
 
469
452
  vrf.router_id = vrf.default_router_id
470
453
  refute_match_vrf_line(vrf.parent.name, vrf.name, pattern)
471
- vrf.parent.destroy
472
454
  end
473
455
 
474
456
  def test_router_id_multiple_vrf
@@ -491,8 +473,6 @@ class TestRouterOspfVrf < CiscoTestCase
491
473
  assert_match_vrf_line(routerospf.name, vrf1.name, pattern)
492
474
  assert_equal(id, vrf1.router_id,
493
475
  "Error: #{vrf1.name} vrf, router-id get value mismatch")
494
-
495
- routerospf.destroy
496
476
  end
497
477
 
498
478
  def test_timer_throttle_lsa
@@ -505,7 +485,6 @@ class TestRouterOspfVrf < CiscoTestCase
505
485
  assert_equal(lsa, vrf.timer_throttle_lsa,
506
486
  "Error: #{vrf.name} vrf, timer throttle lsa " \
507
487
  'get values mismatch')
508
- vrf.parent.destroy
509
488
  end
510
489
 
511
490
  def test_timer_throttle_lsa_multiple_vrf
@@ -529,8 +508,6 @@ class TestRouterOspfVrf < CiscoTestCase
529
508
  assert_equal(lsa, vrf1.timer_throttle_lsa,
530
509
  "Error: #{vrf1.name} vrf, timer throttle lsa " \
531
510
  'get values mismatch')
532
-
533
- routerospf.destroy
534
511
  end
535
512
 
536
513
  def test_get_default_timer_throttle_lsa
@@ -548,7 +525,6 @@ class TestRouterOspfVrf < CiscoTestCase
548
525
  'Error: default timer throttle lsa hold not correct')
549
526
  assert_equal(lsa[2], vrf.default_timer_throttle_lsa_max,
550
527
  'Error: default timer throttle lsa max not correct')
551
- vrf.parent.destroy
552
528
  end
553
529
 
554
530
  def test_timer_throttle_spf
@@ -561,7 +537,6 @@ class TestRouterOspfVrf < CiscoTestCase
561
537
  assert_equal(spf, vrf.timer_throttle_spf,
562
538
  "Error: #{vrf.name} vrf, timer throttle spf " \
563
539
  'get values mismatch')
564
- vrf.parent.destroy
565
540
  end
566
541
 
567
542
  def test_timer_throttle_spf_multiple_vrf
@@ -585,8 +560,6 @@ class TestRouterOspfVrf < CiscoTestCase
585
560
  assert_equal(spf, vrf1.timer_throttle_spf,
586
561
  "Error: #{vrf1.name} vrf, timer throttle spf " \
587
562
  'get values mismatch')
588
-
589
- routerospf.destroy
590
563
  end
591
564
 
592
565
  def test_get_default_timer_throttle_spf
@@ -607,7 +580,6 @@ class TestRouterOspfVrf < CiscoTestCase
607
580
  assert_equal(spf[2], vrf.timer_throttle_spf_max,
608
581
  "Error: #{vrf.name} vrf, " \
609
582
  'default timer throttle max not correct')
610
- vrf.parent.destroy
611
583
  end
612
584
 
613
585
  def test_create_valid_destroy_default
@@ -621,7 +593,6 @@ class TestRouterOspfVrf < CiscoTestCase
621
593
  assert_raises(RuntimeError) do
622
594
  vrf.destroy
623
595
  end
624
- routerospf.destroy
625
596
  end
626
597
 
627
598
  # rubocop:disable Style/AlignHash
@@ -693,7 +664,6 @@ class TestRouterOspfVrf < CiscoTestCase
693
664
  "Error: #{vrf.name} vrf, hold timer throttle lsa not correct")
694
665
  assert_equal(5001, vrf.timer_throttle_lsa_max,
695
666
  "Error: #{vrf.name} vrf, max timer throttle lsa not correct")
696
- vrf.parent.destroy
697
667
  end
698
668
 
699
669
  def test_timer_throttle_spf_start_hold_max
@@ -705,11 +675,10 @@ class TestRouterOspfVrf < CiscoTestCase
705
675
  "Error: #{vrf.name} vrf, hold timer throttle spf not correct")
706
676
  assert_equal(5001, vrf.timer_throttle_spf_max,
707
677
  "Error: #{vrf.name} vrf, max timer throttle spf not correct")
708
- vrf.parent.destroy
709
678
  end
710
679
 
711
680
  def test_noninstantiated
712
- routerospf = create_routerospf
681
+ create_routerospf
713
682
  vrf = RouterOspfVrf.new('absent', 'absent', false)
714
683
  vrf.auto_cost
715
684
  vrf.default_metric
@@ -717,6 +686,5 @@ class TestRouterOspfVrf < CiscoTestCase
717
686
  vrf.router_id
718
687
  vrf.timer_throttle_lsa
719
688
  vrf.timer_throttle_spf
720
- routerospf.destroy
721
689
  end
722
690
  end
@@ -233,6 +233,8 @@ class TestStpGlobal < CiscoTestCase
233
233
  end
234
234
 
235
235
  def test_get_set_mst_priorities
236
+ # TBD: Add N9k-EX to allowed platforms list and use proper _exclude tags
237
+ skip('TBD: Limited support for N9k-EX') if node.product_id[/N9K.*EX/]
236
238
  global = StpGlobal.new('default')
237
239
  global.mode = 'mst'
238
240
  global.mst_priority = global.default_mst_priority
@@ -392,6 +394,8 @@ class TestStpGlobal < CiscoTestCase
392
394
  end
393
395
 
394
396
  def test_get_set_vlan_priorities
397
+ # TBD: Add N9k-EX to allowed platforms list and use proper _exclude tags
398
+ skip('TBD: Limited support for N9k-EX') if node.product_id[/N9K.*EX/]
395
399
  global = StpGlobal.new('default')
396
400
  global.vlan_priority = global.default_vlan_priority
397
401
  global.vlan_root_priority = global.default_vlan_root_priority
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cisco_node_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rob Gries
@@ -15,7 +15,7 @@ authors:
15
15
  autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
- date: 2019-06-25 00:00:00.000000000 Z
18
+ date: 2019-08-19 00:00:00.000000000 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: bundler
@@ -206,7 +206,6 @@ files:
206
206
  - lib/cisco_node_utils/client/nxapi.rb
207
207
  - lib/cisco_node_utils/client/nxapi/client.rb
208
208
  - lib/cisco_node_utils/client/utils.rb
209
- - lib/cisco_node_utils/cmd_ref/DEPRECATED.yaml
210
209
  - lib/cisco_node_utils/cmd_ref/README_YAML.md
211
210
  - lib/cisco_node_utils/cmd_ref/aaa_auth_login_service.yaml
212
211
  - lib/cisco_node_utils/cmd_ref/aaa_authentication_login.yaml
@@ -309,7 +308,6 @@ files:
309
308
  - lib/cisco_node_utils/hostname.rb
310
309
  - lib/cisco_node_utils/hsrp_global.rb
311
310
  - lib/cisco_node_utils/interface.rb
312
- - lib/cisco_node_utils/interface_DEPRECATED.rb
313
311
  - lib/cisco_node_utils/interface_channel_group.rb
314
312
  - lib/cisco_node_utils/interface_evpn_multisite.rb
315
313
  - lib/cisco_node_utils/interface_hsrp_group.rb
@@ -362,7 +360,6 @@ files:
362
360
  - lib/cisco_node_utils/vdc.rb
363
361
  - lib/cisco_node_utils/version.rb
364
362
  - lib/cisco_node_utils/vlan.rb
365
- - lib/cisco_node_utils/vlan_DEPRECATED.rb
366
363
  - lib/cisco_node_utils/vpc.rb
367
364
  - lib/cisco_node_utils/vrf.rb
368
365
  - lib/cisco_node_utils/vrf_af.rb
@@ -517,7 +514,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
517
514
  version: 2.1.0
518
515
  requirements: []
519
516
  rubyforge_project:
520
- rubygems_version: 2.5.2.1
517
+ rubygems_version: 2.5.2.3
521
518
  signing_key:
522
519
  specification_version: 4
523
520
  summary: Utilities for management of Cisco network nodes
@@ -1,118 +0,0 @@
1
- # DEPRECATED
2
- #
3
- ###############################################################################
4
- # WARNING. DO NOT USE ANY OF THE YAML TAGS IN THIS FILE.
5
- # These yaml tags are deprecated and will be removed in future releases.
6
- ###############################################################################
7
- ---
8
- _template:
9
- context: ["interface <name>"]
10
- nexus:
11
- get_command: "show running interface all"
12
-
13
- private_vlan_any:
14
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'pvlan_any'
15
- multiple:
16
- get_value: '/switchport private-vlan/'
17
-
18
- private_vlan_association:
19
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'pvlan_association'
20
- _exclude: [N3k-F, N9k-F]
21
- multiple: true
22
- get_command: "show vlan private-vlan"
23
- get_context: ~
24
- get_value: '/^<id>\s+(\d+)/'
25
- set_context: ['vlan <vlan>']
26
- set_value: "<state> private-vlan association <vlans> ; end"
27
- default_value: []
28
-
29
- private_vlan_mapping:
30
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'pvlan_mapping'
31
- _exclude: [ios_xr, N3k-F, N9k-F]
32
- multiple: true
33
- get_value: '/^private-vlan mapping (.*)$/'
34
- set_value: "<state> private-vlan mapping <vlans>"
35
- default_value: []
36
-
37
- private_vlan_type:
38
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'pvlan_type'
39
- _exclude: [N3k-F, N9k-F]
40
- kind: string
41
- get_command: 'show vlan private-vlan type'
42
- get_context: ~
43
- get_value: '/^<id>\s+(\S+)/'
44
- set_context: ['vlan <vlan>']
45
- set_value: "<state> private-vlan <type> ; end"
46
- default_value: ""
47
-
48
- switchport_mode_private_vlan_host:
49
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'switchport_pvlan_host'
50
- _exclude: [ios_xr, N3k-F, N9k-F]
51
- get_value: '/^switchport mode private-vlan (.*)$/'
52
- set_value: "<state> switchport mode private-vlan <mode>"
53
- default_value: :disabled
54
-
55
- switchport_mode_private_vlan_host_association:
56
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'switchport_pvlan_host_association'
57
- _exclude: [ios_xr, N3k-F, N9k-F]
58
- multiple: true
59
- get_value: '/^switchport private-vlan host-association (.*)$/'
60
- set_value: "<state> switchport private-vlan host-association <vlan_pr> <vlan_sec>"
61
- default_value: []
62
-
63
- switchport_mode_private_vlan_host_promiscous:
64
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'switchport_pvlan_promiscuous'
65
- _exclude: [ios_xr, N3k-F, N9k-F]
66
- multiple: true
67
- get_value: '/^switchport private-vlan mapping (\d+.*)$/'
68
- set_value: "<state> switchport private-vlan mapping <vlan_pr> <vlans>"
69
- default_value: []
70
-
71
- switchport_mode_private_vlan_trunk_promiscuous:
72
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'switchport_pvlan_trunk_promiscuous'
73
- _exclude: [ios_xr, N3k, N3k-F, N9k-F]
74
- kind: boolean
75
- get_value: '/^switchport mode private-vlan trunk promiscuous$/'
76
- set_value: "<state> switchport mode private-vlan trunk promiscuous"
77
- default_value: false
78
-
79
- switchport_mode_private_vlan_trunk_secondary:
80
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'switchport_pvlan_trunk_secondary'
81
- _exclude: [ios_xr, N3k, N3k-F, N9k-F]
82
- kind: boolean
83
- get_value: '/^switchport mode private-vlan trunk secondary$/'
84
- set_value: "<state> switchport mode private-vlan trunk secondary"
85
- default_value: false
86
-
87
- switchport_private_vlan_association_trunk:
88
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'switchport_pvlan_trunk_association'
89
- _exclude: [ios_xr, N3k, N3k-F, N9k-F]
90
- multiple: true
91
- #get_value: '/^switchport private-vlan association trunk (.*) (.*)$/'
92
- get_value: '/^switchport private-vlan association trunk (.*)$/'
93
- set_value: "<state> switchport private-vlan association trunk <vlan_pr> <vlan>"
94
- default_value: []
95
-
96
- switchport_private_vlan_mapping_trunk:
97
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'switchport_pvlan_mapping_trunk'
98
- _exclude: [ios_xr, N3k, N3k-F, N9k-F]
99
- multiple: true
100
- get_value: '/^switchport private-vlan mapping trunk (.*)$/'
101
- set_value: "<state> switchport private-vlan mapping trunk <vlan_pr> <vlans>"
102
- default_value: []
103
-
104
- switchport_private_vlan_trunk_allowed_vlan:
105
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'switchport_pvlan_trunk_allowed_vlan'
106
- _exclude: [ios_xr, N3k-F, N9k-F]
107
- multiple: true
108
- get_value: '/^switchport private-vlan trunk allowed vlan (.*)$/'
109
- set_value: "<state> switchport private-vlan trunk allowed vlan <oper> <vlans>"
110
- default_value: []
111
-
112
- switchport_private_vlan_trunk_native_vlan:
113
- # DEPRECATED (REMOVING WITH RELEASE 2.0.0). USE 'switchport_pvlan_trunk_native_vlan'
114
- _exclude: [ios_xr, N3k-F, N9k-F]
115
- kind: int
116
- get_value: '/^switchport private-vlan trunk native vlan (.*)$/'
117
- set_value: "<state> switchport private-vlan trunk native vlan <vlan>"
118
- default_value: 1