Method: Rbeapi::Api::VarpInterfaces#set_addresses
- Defined in:
- lib/rbeapi/api/varp.rb
#set_addresses(name, opts = {}) ⇒ Boolean
The set_addresses method assigns one or more virtual IPv4 address to the specified VLAN interface. All existing addresses are removed before the ones in value are added.
rubocop:disable Metrics/MethodLength
203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 |
# File 'lib/rbeapi/api/varp.rb', line 203 def set_addresses(name, opts = {}) value = opts[:value] enable = opts.fetch(:enable, true) default = opts[:default] || false cmds = ["interface #{name}"] if value unless value.is_a?(Array) raise ArgumentError, 'value must be an Array' end end case default when true cmds << 'default ip virtual-router address' when false cmds << 'no ip virtual-router address' if enable unless value raise ArgumentError, 'no values for addresses provided' end value.each do |addr| cmds << "ip virtual-router address #{addr}" end end end configure(cmds) end |