Module: Legion::Extensions::Nautobot::Runners::Vpn

Includes:
Helpers::Lex, Helpers::Client
Included in:
Client
Defined in:
lib/legion/extensions/nautobot/runners/vpn.rb

Instance Method Summary collapse

Methods included from Helpers::Client

#connection

Instance Method Details

#create_vpn(url: nil, token: nil, read_only: false, **attrs) ⇒ Object

Raises:



23
24
25
26
27
28
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 23

def create_vpn(url: nil, token: nil, read_only: false, **attrs)
  raise ReadOnlyError, 'Write operations disabled (read_only mode)' if read_only

  resp = connection(url: url, token: token).post('/api/vpn/vpns/', attrs)
  resp.body
end

#create_vpn_profile(url: nil, token: nil, read_only: false, **attrs) ⇒ Object

Raises:



96
97
98
99
100
101
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 96

def create_vpn_profile(url: nil, token: nil, read_only: false, **attrs)
  raise ReadOnlyError, 'Write operations disabled (read_only mode)' if read_only

  resp = connection(url: url, token: token).post('/api/vpn/vpn-profiles/', attrs)
  resp.body
end

#create_vpn_tunnel(url: nil, token: nil, read_only: false, **attrs) ⇒ Object

Raises:



54
55
56
57
58
59
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 54

def create_vpn_tunnel(url: nil, token: nil, read_only: false, **attrs)
  raise ReadOnlyError, 'Write operations disabled (read_only mode)' if read_only

  resp = connection(url: url, token: token).post('/api/vpn/vpn-tunnels/', attrs)
  resp.body
end

#delete_vpn(id:, url: nil, token: nil, read_only: false) ⇒ Object

Raises:



37
38
39
40
41
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 37

def delete_vpn(id:, url: nil, token: nil, read_only: false, **)
  raise ReadOnlyError, 'Write operations disabled (read_only mode)' if read_only

  connection(url: url, token: token).delete("/api/vpn/vpns/#{id}/")
end

#delete_vpn_tunnel(id:, url: nil, token: nil, read_only: false) ⇒ Object

Raises:



68
69
70
71
72
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 68

def delete_vpn_tunnel(id:, url: nil, token: nil, read_only: false, **)
  raise ReadOnlyError, 'Write operations disabled (read_only mode)' if read_only

  connection(url: url, token: token).delete("/api/vpn/vpn-tunnels/#{id}/")
end

#get_vpn(id:, url: nil, token: nil) ⇒ Object



18
19
20
21
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 18

def get_vpn(id:, url: nil, token: nil, **)
  resp = connection(url: url, token: token).get("/api/vpn/vpns/#{id}/")
  resp.body
end

#get_vpn_profile(id:, url: nil, token: nil) ⇒ Object



91
92
93
94
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 91

def get_vpn_profile(id:, url: nil, token: nil, **)
  resp = connection(url: url, token: token).get("/api/vpn/vpn-profiles/#{id}/")
  resp.body
end

#get_vpn_termination(id:, url: nil, token: nil) ⇒ Object



109
110
111
112
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 109

def get_vpn_termination(id:, url: nil, token: nil, **)
  resp = connection(url: url, token: token).get("/api/vpn/vpn-terminations/#{id}/")
  resp.body
end

#get_vpn_tunnel(id:, url: nil, token: nil) ⇒ Object



49
50
51
52
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 49

def get_vpn_tunnel(id:, url: nil, token: nil, **)
  resp = connection(url: url, token: token).get("/api/vpn/vpn-tunnels/#{id}/")
  resp.body
end

#get_vpn_tunnel_endpoint(id:, url: nil, token: nil) ⇒ Object



80
81
82
83
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 80

def get_vpn_tunnel_endpoint(id:, url: nil, token: nil, **)
  resp = connection(url: url, token: token).get("/api/vpn/vpn-tunnel-endpoints/#{id}/")
  resp.body
end

#list_vpn_profiles(url: nil, token: nil, **params) ⇒ Object

VPN Profiles



86
87
88
89
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 86

def list_vpn_profiles(url: nil, token: nil, **params)
  resp = connection(url: url, token: token).get('/api/vpn/vpn-profiles/', params)
  resp.body
end

#list_vpn_terminations(url: nil, token: nil, **params) ⇒ Object

VPN Terminations



104
105
106
107
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 104

def list_vpn_terminations(url: nil, token: nil, **params)
  resp = connection(url: url, token: token).get('/api/vpn/vpn-terminations/', params)
  resp.body
end

#list_vpn_tunnel_endpoints(url: nil, token: nil, **params) ⇒ Object

VPN Tunnel Endpoints



75
76
77
78
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 75

def list_vpn_tunnel_endpoints(url: nil, token: nil, **params)
  resp = connection(url: url, token: token).get('/api/vpn/vpn-tunnel-endpoints/', params)
  resp.body
end

#list_vpn_tunnels(url: nil, token: nil, **params) ⇒ Object

VPN Tunnels



44
45
46
47
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 44

def list_vpn_tunnels(url: nil, token: nil, **params)
  resp = connection(url: url, token: token).get('/api/vpn/vpn-tunnels/', params)
  resp.body
end

#list_vpns(url: nil, token: nil, **params) ⇒ Object

VPNs



13
14
15
16
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 13

def list_vpns(url: nil, token: nil, **params)
  resp = connection(url: url, token: token).get('/api/vpn/vpns/', params)
  resp.body
end

#update_vpn(id:, url: nil, token: nil, read_only: false, **attrs) ⇒ Object

Raises:



30
31
32
33
34
35
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 30

def update_vpn(id:, url: nil, token: nil, read_only: false, **attrs)
  raise ReadOnlyError, 'Write operations disabled (read_only mode)' if read_only

  resp = connection(url: url, token: token).patch("/api/vpn/vpns/#{id}/", attrs)
  resp.body
end

#update_vpn_tunnel(id:, url: nil, token: nil, read_only: false, **attrs) ⇒ Object

Raises:



61
62
63
64
65
66
# File 'lib/legion/extensions/nautobot/runners/vpn.rb', line 61

def update_vpn_tunnel(id:, url: nil, token: nil, read_only: false, **attrs)
  raise ReadOnlyError, 'Write operations disabled (read_only mode)' if read_only

  resp = connection(url: url, token: token).patch("/api/vpn/vpn-tunnels/#{id}/", attrs)
  resp.body
end