go.ligato.io/vpp-agent/v3@v3.5.0/plugins/restapi/resturl/urls.go (about)

     1  //  Copyright (c) 2018 Cisco and/or its affiliates.
     2  //
     3  //  Licensed under the Apache License, Version 2.0 (the "License");
     4  //  you may not use this file except in compliance with the License.
     5  //  You may obtain a copy of the License at:
     6  //
     7  //      http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  //  Unless required by applicable law or agreed to in writing, software
    10  //  distributed under the License is distributed on an "AS IS" BASIS,
    11  //  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  //  See the License for the specific language governing permissions and
    13  //  limitations under the License.
    14  
    15  package resturl
    16  
    17  // Info
    18  const (
    19  	// Version is a path for retrieving information about version of Agent.
    20  	Version = "/info/version"
    21  
    22  	// JSONSchema is a path for retrieving JSON Schema for VPP-Agent configuration (dynamically created
    23  	// container of all registered configuration models).
    24  	JSONSchema = "/info/configuration/jsonschema"
    25  )
    26  
    27  // Configuration
    28  const (
    29  	// Configuration is a path for handling(GET,PUT) all VPP-Agent NB configuration
    30  	Configuration = "/configuration"
    31  
    32  	// Validate is a path for validating NB yaml configuration for VPP-Agent (the same all-in-one dynamically
    33  	// created yaml configuration as used in agentctl configuration get/update)
    34  	Validate = "/configuration/validate"
    35  )
    36  
    37  // Linux Dumps
    38  const (
    39  	// Interfaces
    40  
    41  	// LinuxInterface is a linux interface rest path
    42  	LinuxInterface = "/dump/linux/v2/interfaces"
    43  
    44  	// L3
    45  
    46  	// LinuxRoutes is the rest linux route path
    47  	LinuxRoutes = "/dump/linux/v2/routes"
    48  	// LinuxArps is the rest linux ARPs path
    49  	LinuxArps = "/dump/linux/v2/arps"
    50  )
    51  
    52  // VPP ABF
    53  const (
    54  	// REST ABF
    55  	ABF = "/dump/vpp/v2/abf"
    56  )
    57  
    58  // VPP ACL
    59  const (
    60  	// REST ACL IP prefix
    61  	ACLIP = "/dump/vpp/v2/acl/ip"
    62  	// REST ACL MACIP prefix
    63  	ACLMACIP = "/dump/vpp/v2/acl/macip"
    64  )
    65  
    66  // VPP Interfaces
    67  const (
    68  	// Interface is rest interface path
    69  	Interface = "/dump/vpp/v2/interfaces"
    70  
    71  	// Loopback is path for loopback interface
    72  	Loopback = "/dump/vpp/v2/interfaces/loopback"
    73  	// Ethernet is path for physical interface
    74  	Ethernet = "/dump/vpp/v2/interfaces/ethernet"
    75  	// Memif is path for memif interface
    76  	Memif = "/dump/vpp/v2/interfaces/memif"
    77  	// Tap is path for tap interface
    78  	Tap = "/dump/vpp/v2/interfaces/tap"
    79  	// AfPacket is path for af-packet interface
    80  	AfPacket = "/dump/vpp/v2/interfaces/afpacket"
    81  	// VxLan is path for vxlan interface
    82  	VxLan = "/dump/vpp/v2/interfaces/vxlan"
    83  )
    84  
    85  // VPP NAT
    86  const (
    87  	// NatGlobal is a REST path of a global NAT config
    88  	NatGlobal = "/dump/vpp/v2/nat/global"
    89  	// NatDNat is a REST path of a DNAT configurations
    90  	NatDNat = "/dump/vpp/v2/nat/dnat"
    91  	// NatInterfaces is a REST path of NAT interfaces config
    92  	NatInterfaces = "/dump/vpp/v2/nat/interfaces"
    93  	// NatAddressPools is a REST path of NAT address pools config
    94  	NatAddressPools = "/dump/vpp/v2/nat/pools"
    95  )
    96  
    97  // L2 plugin
    98  const (
    99  	// restBd is rest bridge domain path
   100  	Bd = "/dump/vpp/v2/bd"
   101  	// restFib is rest FIB path
   102  	Fib = "/dump/vpp/v2/fib"
   103  	// restXc is rest cross-connect path
   104  	Xc = "/dump/vpp/v2/xc"
   105  )
   106  
   107  // VPP L3 plugin
   108  const (
   109  	// Routes is rest static route path
   110  	Routes = "/dump/vpp/v2/routes"
   111  	// Arps is rest ARPs path
   112  	Arps = "/dump/vpp/v2/arps"
   113  	// PArpIfs is rest proxy ARP interfaces path
   114  	PArpIfs = "/dump/vpp/v2/proxyarp/interfaces"
   115  	// PArpRngs is rest proxy ARP ranges path
   116  	PArpRngs = "/dump/vpp/v2/proxyarp/ranges"
   117  	// IPScanNeigh is rest IP scan neighbor setup path
   118  	IPScanNeigh = "/dump/vpp/v2/ipscanneigh"
   119  	// Vrrps is rest vrrp entries path
   120  	Vrrps = "/dump/vpp/v2/vrrps"
   121  )
   122  
   123  // VPP IPSec plugin
   124  const (
   125  	// SPDs is rest IPSec security policy database path
   126  	SPDs = "/dump/vpp/v2/ipsec/spds"
   127  	// SPs is rest IPSec security policy path
   128  	SPs = "/dump/vpp/v2/ipsec/sps"
   129  	// SAs is rest IPSec security association path
   130  	SAs = "/dump/vpp/v2/ipsec/sas"
   131  )
   132  
   133  const (
   134  	// PuntSocket is rest punt registered socket path
   135  	PuntSocket = "/dump/vpp/v2/punt/sockets"
   136  )
   137  
   138  // VPP Wireguard plugin
   139  const (
   140  	Peers = "/dump/vpp/v2/wireguard/peers"
   141  )
   142  
   143  // Telemetry
   144  const (
   145  	// Telemetry reads various types of metrics data from the VPP
   146  	Telemetry  = "/vpp/telemetry"
   147  	TMemory    = "/vpp/telemetry/memory"
   148  	TRuntime   = "/vpp/telemetry/runtime"
   149  	TNodeCount = "/vpp/telemetry/nodecount"
   150  )
   151  
   152  // Stats
   153  const (
   154  	// Configurator stats
   155  	ConfiguratorStats = "/stats/configurator"
   156  	// Linux interface stats
   157  	LinuxInterfaceStats = "/stats/linux/interfaces"
   158  )