summaryrefslogtreecommitdiffstats
path: root/ansible_collections/cisco/dnac/plugins/modules/device_replacement.py
blob: 4f2d1fdfc4f2243fa7c1b57bfede45504e0be492 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
#!/usr/bin/python
# -*- coding: utf-8 -*-

# Copyright (c) 2021, Cisco Systems
# GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt)

DOCUMENTATION = r"""
---
module: device_replacement
short_description: Resource module for Device Replacement
description:
- Manage operations create and update of the resource Device Replacement.
- Marks device for replacement.
- UnMarks device for replacement.
version_added: '3.1.0'
extends_documentation_fragment:
  - cisco.dnac.module
author: Rafael Campos (@racampos)
options:
  payload:
    description: Device Replacement's payload.
    elements: dict
    suboptions:
      creationTime:
        description: Date and time of marking the device for replacement.
        type: int
      family:
        description: Faulty device family.
        type: str
      faultyDeviceId:
        description: Unique identifier of the faulty device.
        type: str
      faultyDeviceName:
        description: Faulty device name.
        type: str
      faultyDevicePlatform:
        description: Faulty device platform.
        type: str
      faultyDeviceSerialNumber:
        description: Faulty device serial number.
        type: str
      id:
        description: Unique identifier of the device replacement resource.
        type: str
      neighbourDeviceId:
        description: Unique identifier of the neighbor device to create the DHCP server.
        type: str
      networkReadinessTaskId:
        description: Unique identifier of network readiness task.
        type: str
      replacementDevicePlatform:
        description: Replacement device platform.
        type: str
      replacementDeviceSerialNumber:
        description: Replacement device serial number.
        type: str
      replacementStatus:
        description: Device replacement status. Use NON-FAULTY to unmark the device
          for replacement.
        type: str
      replacementTime:
        description: Date and time of device replacement.
        type: int
      workflowId:
        description: Unique identifier of the device replacement workflow.
        type: str
    type: list
requirements:
- dnacentersdk >= 2.7.1
- python >= 3.5
seealso:
- name: Cisco DNA Center documentation for Device Replacement MarkDeviceForReplacement
  description: Complete reference of the MarkDeviceForReplacement API.
  link: https://developer.cisco.com/docs/dna-center/#!mark-device-for-replacement
- name: Cisco DNA Center documentation for Device Replacement UnMarkDeviceForReplacement
  description: Complete reference of the UnMarkDeviceForReplacement API.
  link: https://developer.cisco.com/docs/dna-center/#!un-mark-device-for-replacement
notes:
  - SDK Method used are
    device_replacement.DeviceReplacement.mark_device_for_replacement,
    device_replacement.DeviceReplacement.unmark_device_for_replacement,

  - Paths used are
    post /dna/intent/api/v1/device-replacement,
    put /dna/intent/api/v1/device-replacement,

"""

EXAMPLES = r"""
- name: Update all
  cisco.dnac.device_replacement:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    state: present
    payload:
    - creationTime: 0
      family: string
      faultyDeviceId: string
      faultyDeviceName: string
      faultyDevicePlatform: string
      faultyDeviceSerialNumber: string
      id: string
      neighbourDeviceId: string
      networkReadinessTaskId: string
      replacementDevicePlatform: string
      replacementDeviceSerialNumber: string
      replacementStatus: string
      replacementTime: 0
      workflowId: string

- name: Create
  cisco.dnac.device_replacement:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    state: present
    payload:
    - creationTime: 0
      family: string
      faultyDeviceId: string
      faultyDeviceName: string
      faultyDevicePlatform: string
      faultyDeviceSerialNumber: string
      id: string
      neighbourDeviceId: string
      networkReadinessTaskId: string
      replacementDevicePlatform: string
      replacementDeviceSerialNumber: string
      replacementStatus: string
      replacementTime: 0
      workflowId: string

"""
RETURN = r"""
dnac_response:
  description: A dictionary or list with the response returned by the Cisco DNAC Python SDK
  returned: always
  type: dict
  sample: >
    {
      "response": {
        "taskId": "string",
        "url": "string"
      },
      "version": "string"
    }
"""