mirror of
https://github.com/gravitl/netmaker.git
synced 2025-09-03 19:54:22 +08:00
add format int64 for swagger doc (#3247)
* add format int64 for swagger doc * add format int64 for swagger doc * add global override * swagger doc update * add new line for .swaggo file
This commit is contained in:
parent
94cc85377f
commit
1d9e0f71df
12 changed files with 138 additions and 67 deletions
2
.swaggo
Normal file
2
.swaggo
Normal file
|
@ -0,0 +1,2 @@
|
|||
// Replace all time.Duration with int64
|
||||
replace time.Duration int64
|
|
@ -89,7 +89,7 @@ type ServerConfig struct {
|
|||
EgressesLimit int `yaml:"egresses_limit"`
|
||||
DeployedByOperator bool `yaml:"deployed_by_operator"`
|
||||
Environment string `yaml:"environment"`
|
||||
JwtValidityDuration time.Duration `yaml:"jwt_validity_duration"`
|
||||
JwtValidityDuration time.Duration `yaml:"jwt_validity_duration" swaggertype:"primitive,integer" format:"int64"`
|
||||
RacAutoDisable bool `yaml:"rac_auto_disable"`
|
||||
CacheEnabled string `yaml:"caching_enabled"`
|
||||
EndpointDetection bool `json:"endpoint_detection"`
|
||||
|
|
|
@ -16,10 +16,10 @@ type ApiNode struct {
|
|||
Address6 string `json:"address6" validate:"omitempty,cidrv6"`
|
||||
LocalAddress string `json:"localaddress" validate:"omitempty,cidr"`
|
||||
AllowedIPs []string `json:"allowedips"`
|
||||
LastModified int64 `json:"lastmodified"`
|
||||
ExpirationDateTime int64 `json:"expdatetime"`
|
||||
LastCheckIn int64 `json:"lastcheckin"`
|
||||
LastPeerUpdate int64 `json:"lastpeerupdate"`
|
||||
LastModified int64 `json:"lastmodified" swaggertype:"primitive,integer" format:"int64"`
|
||||
ExpirationDateTime int64 `json:"expdatetime" swaggertype:"primitive,integer" format:"int64"`
|
||||
LastCheckIn int64 `json:"lastcheckin" swaggertype:"primitive,integer" format:"int64"`
|
||||
LastPeerUpdate int64 `json:"lastpeerupdate" swaggertype:"primitive,integer" format:"int64"`
|
||||
Network string `json:"network"`
|
||||
NetworkRange string `json:"networkrange"`
|
||||
NetworkRange6 string `json:"networkrange6"`
|
||||
|
|
|
@ -58,7 +58,7 @@ type EnrollmentKey struct {
|
|||
|
||||
// APIEnrollmentKey - used to create enrollment keys via API
|
||||
type APIEnrollmentKey struct {
|
||||
Expiration int64 `json:"expiration"`
|
||||
Expiration int64 `json:"expiration" swaggertype:"primitive,integer" format:"int64"`
|
||||
UsesRemaining int `json:"uses_remaining"`
|
||||
Networks []string `json:"networks"`
|
||||
Unlimited bool `json:"unlimited"`
|
||||
|
|
|
@ -13,7 +13,7 @@ type ExtClient struct {
|
|||
AllowedIPs []string `json:"allowed_ips"`
|
||||
IngressGatewayID string `json:"ingressgatewayid" bson:"ingressgatewayid"`
|
||||
IngressGatewayEndpoint string `json:"ingressgatewayendpoint" bson:"ingressgatewayendpoint"`
|
||||
LastModified int64 `json:"lastmodified" bson:"lastmodified"`
|
||||
LastModified int64 `json:"lastmodified" bson:"lastmodified" swaggertype:"primitive,integer" format:"int64"`
|
||||
Enabled bool `json:"enabled" bson:"enabled"`
|
||||
OwnerID string `json:"ownerid" bson:"ownerid"`
|
||||
DeniedACLs map[string]struct{} `json:"deniednodeacls" bson:"acls,omitempty"`
|
||||
|
|
|
@ -71,7 +71,7 @@ type Host struct {
|
|||
IsDefault bool `json:"isdefault" yaml:"isdefault"`
|
||||
NatType string `json:"nat_type,omitempty" yaml:"nat_type,omitempty"`
|
||||
TurnEndpoint *netip.AddrPort `json:"turn_endpoint,omitempty" yaml:"turn_endpoint,omitempty"`
|
||||
PersistentKeepalive time.Duration `json:"persistentkeepalive" yaml:"persistentkeepalive"`
|
||||
PersistentKeepalive time.Duration `json:"persistentkeepalive" swaggertype:"primitive,integer" format:"int64" yaml:"persistentkeepalive"`
|
||||
}
|
||||
|
||||
// FormatBool converts a boolean to a [yes|no] string
|
||||
|
|
|
@ -15,14 +15,14 @@ type Metrics struct {
|
|||
// Metric - holds a metric for data between nodes
|
||||
type Metric struct {
|
||||
NodeName string `json:"node_name" bson:"node_name" yaml:"node_name"`
|
||||
Uptime int64 `json:"uptime" bson:"uptime" yaml:"uptime"`
|
||||
TotalTime int64 `json:"totaltime" bson:"totaltime" yaml:"totaltime"`
|
||||
Latency int64 `json:"latency" bson:"latency" yaml:"latency"`
|
||||
TotalReceived int64 `json:"totalreceived" bson:"totalreceived" yaml:"totalreceived"`
|
||||
LastTotalReceived int64 `json:"lasttotalreceived" bson:"lasttotalreceived" yaml:"lasttotalreceived"`
|
||||
TotalSent int64 `json:"totalsent" bson:"totalsent" yaml:"totalsent"`
|
||||
LastTotalSent int64 `json:"lasttotalsent" bson:"lasttotalsent" yaml:"lasttotalsent"`
|
||||
ActualUptime time.Duration `json:"actualuptime" bson:"actualuptime" yaml:"actualuptime"`
|
||||
Uptime int64 `json:"uptime" bson:"uptime" yaml:"uptime" swaggertype:"primitive,integer" format:"int64"`
|
||||
TotalTime int64 `json:"totaltime" bson:"totaltime" yaml:"totaltime" swaggertype:"primitive,integer" format:"int64"`
|
||||
Latency int64 `json:"latency" bson:"latency" yaml:"latency" swaggertype:"primitive,integer" format:"int64"`
|
||||
TotalReceived int64 `json:"totalreceived" bson:"totalreceived" yaml:"totalreceived" swaggertype:"primitive,integer" format:"int64"`
|
||||
LastTotalReceived int64 `json:"lasttotalreceived" bson:"lasttotalreceived" yaml:"lasttotalreceived" swaggertype:"primitive,integer" format:"int64"`
|
||||
TotalSent int64 `json:"totalsent" bson:"totalsent" yaml:"totalsent" swaggertype:"primitive,integer" format:"int64"`
|
||||
LastTotalSent int64 `json:"lasttotalsent" bson:"lasttotalsent" yaml:"lasttotalsent" swaggertype:"primitive,integer" format:"int64"`
|
||||
ActualUptime time.Duration `json:"actualuptime" swaggertype:"primitive,integer" format:"int64" bson:"actualuptime" yaml:"actualuptime"`
|
||||
PercentUp float64 `json:"percentup" bson:"percentup" yaml:"percentup"`
|
||||
Connected bool `json:"connected" bson:"connected" yaml:"connected"`
|
||||
}
|
||||
|
|
|
@ -11,8 +11,8 @@ type Network struct {
|
|||
AddressRange string `json:"addressrange" bson:"addressrange" validate:"omitempty,cidrv4"`
|
||||
AddressRange6 string `json:"addressrange6" bson:"addressrange6" validate:"omitempty,cidrv6"`
|
||||
NetID string `json:"netid" bson:"netid" validate:"required,min=1,max=32,netid_valid"`
|
||||
NodesLastModified int64 `json:"nodeslastmodified" bson:"nodeslastmodified"`
|
||||
NetworkLastModified int64 `json:"networklastmodified" bson:"networklastmodified"`
|
||||
NodesLastModified int64 `json:"nodeslastmodified" bson:"nodeslastmodified" swaggertype:"primitive,integer" format:"int64"`
|
||||
NetworkLastModified int64 `json:"networklastmodified" bson:"networklastmodified" swaggertype:"primitive,integer" format:"int64"`
|
||||
DefaultInterface string `json:"defaultinterface" bson:"defaultinterface" validate:"min=1,max=35"`
|
||||
DefaultListenPort int32 `json:"defaultlistenport,omitempty" bson:"defaultlistenport,omitempty" validate:"omitempty,min=1024,max=65535"`
|
||||
NodeLimit int32 `json:"nodelimit" bson:"nodelimit"`
|
||||
|
|
|
@ -137,10 +137,10 @@ type LegacyNode struct {
|
|||
IsHub string `json:"ishub" bson:"ishub" yaml:"ishub" validate:"checkyesorno"`
|
||||
AccessKey string `json:"accesskey" bson:"accesskey" yaml:"accesskey"`
|
||||
Interface string `json:"interface" bson:"interface" yaml:"interface"`
|
||||
LastModified int64 `json:"lastmodified" bson:"lastmodified" yaml:"lastmodified"`
|
||||
ExpirationDateTime int64 `json:"expdatetime" bson:"expdatetime" yaml:"expdatetime"`
|
||||
LastPeerUpdate int64 `json:"lastpeerupdate" bson:"lastpeerupdate" yaml:"lastpeerupdate"`
|
||||
LastCheckIn int64 `json:"lastcheckin" bson:"lastcheckin" yaml:"lastcheckin"`
|
||||
LastModified int64 `json:"lastmodified" bson:"lastmodified" yaml:"lastmodified" swaggertype:"primitive,integer" format:"int64"`
|
||||
ExpirationDateTime int64 `json:"expdatetime" bson:"expdatetime" yaml:"expdatetime" swaggertype:"primitive,integer" format:"int64"`
|
||||
LastPeerUpdate int64 `json:"lastpeerupdate" bson:"lastpeerupdate" yaml:"lastpeerupdate" swaggertype:"primitive,integer" format:"int64"`
|
||||
LastCheckIn int64 `json:"lastcheckin" bson:"lastcheckin" yaml:"lastcheckin" swaggertype:"primitive,integer" format:"int64"`
|
||||
MacAddress string `json:"macaddress" bson:"macaddress" yaml:"macaddress"`
|
||||
Password string `json:"password" bson:"password" yaml:"password" validate:"required,min=6"`
|
||||
Network string `json:"network" bson:"network" yaml:"network" validate:"network_exists"`
|
||||
|
|
|
@ -196,7 +196,7 @@ type ServerUpdateData struct {
|
|||
// also contains assymetrical encryption pub/priv keys for any server traffic
|
||||
type Telemetry struct {
|
||||
UUID string `json:"uuid" bson:"uuid"`
|
||||
LastSend int64 `json:"lastsend" bson:"lastsend"`
|
||||
LastSend int64 `json:"lastsend" bson:"lastsend" swaggertype:"primitive,integer" format:"int64"`
|
||||
TrafficKeyPriv []byte `json:"traffickeypriv" bson:"traffickeypriv"`
|
||||
TrafficKeyPub []byte `json:"traffickeypub" bson:"traffickeypub"`
|
||||
}
|
||||
|
|
|
@ -18,7 +18,7 @@ var errValidation = errors.New(license_validation_err_msg)
|
|||
// LicenseKey - the license key struct representation with associated data
|
||||
type LicenseKey struct {
|
||||
LicenseValue string `json:"license_value"` // actual (public) key and the unique value for the key
|
||||
Expiration int64 `json:"expiration"`
|
||||
Expiration int64 `json:"expiration" swaggertype:"primitive,integer" format:"int64"`
|
||||
UsageServers int `json:"limit_servers"`
|
||||
UsageUsers int `json:"limit_users"`
|
||||
UsageClients int `json:"limit_clients"`
|
||||
|
|
155
swagger.yaml
155
swagger.yaml
|
@ -1,6 +1,7 @@
|
|||
definitions:
|
||||
acls.ACL:
|
||||
additionalProperties:
|
||||
format: int32
|
||||
type: integer
|
||||
type: object
|
||||
acls.ACLContainer:
|
||||
|
@ -74,7 +75,8 @@ definitions:
|
|||
ingressesLimit:
|
||||
type: integer
|
||||
jwtValidityDuration:
|
||||
$ref: '#/definitions/time.Duration'
|
||||
format: int64
|
||||
type: integer
|
||||
licenseValue:
|
||||
type: string
|
||||
machinesLimit:
|
||||
|
@ -109,6 +111,8 @@ definitions:
|
|||
type: string
|
||||
publicIPService:
|
||||
type: string
|
||||
publicIp:
|
||||
type: string
|
||||
racAutoDisable:
|
||||
type: boolean
|
||||
restBackend:
|
||||
|
@ -155,6 +159,7 @@ definitions:
|
|||
models.APIEnrollmentKey:
|
||||
properties:
|
||||
expiration:
|
||||
format: int64
|
||||
type: integer
|
||||
groups:
|
||||
items:
|
||||
|
@ -179,6 +184,41 @@ definitions:
|
|||
required:
|
||||
- tags
|
||||
type: object
|
||||
models.AclRule:
|
||||
properties:
|
||||
allowed:
|
||||
type: boolean
|
||||
allowed_ports:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
allowed_protocols:
|
||||
allOf:
|
||||
- $ref: '#/definitions/models.Protocol'
|
||||
description: tcp, udp, etc.
|
||||
direction:
|
||||
allOf:
|
||||
- $ref: '#/definitions/models.AllowedTrafficDirection'
|
||||
description: single or two-way
|
||||
id:
|
||||
type: string
|
||||
ip_list:
|
||||
items:
|
||||
$ref: '#/definitions/net.IPNet'
|
||||
type: array
|
||||
ip6_list:
|
||||
items:
|
||||
$ref: '#/definitions/net.IPNet'
|
||||
type: array
|
||||
type: object
|
||||
models.AllowedTrafficDirection:
|
||||
enum:
|
||||
- 0
|
||||
- 1
|
||||
type: integer
|
||||
x-enum-varnames:
|
||||
- TrafficDirectionUni
|
||||
- TrafficDirectionBi
|
||||
models.ApiHost:
|
||||
properties:
|
||||
autoupdate:
|
||||
|
@ -267,6 +307,7 @@ definitions:
|
|||
type: string
|
||||
type: array
|
||||
expdatetime:
|
||||
format: int64
|
||||
type: integer
|
||||
fail_over_peers:
|
||||
additionalProperties:
|
||||
|
@ -307,10 +348,13 @@ definitions:
|
|||
isrelayed:
|
||||
type: boolean
|
||||
lastcheckin:
|
||||
format: int64
|
||||
type: integer
|
||||
lastmodified:
|
||||
format: int64
|
||||
type: integer
|
||||
lastpeerupdate:
|
||||
format: int64
|
||||
type: integer
|
||||
localaddress:
|
||||
type: string
|
||||
|
@ -334,6 +378,8 @@ definitions:
|
|||
type: string
|
||||
static_node:
|
||||
$ref: '#/definitions/models.ExtClient'
|
||||
status:
|
||||
$ref: '#/definitions/models.NodeStatus'
|
||||
tags:
|
||||
additionalProperties:
|
||||
type: object
|
||||
|
@ -481,6 +527,7 @@ definitions:
|
|||
ingressgatewayid:
|
||||
type: string
|
||||
lastmodified:
|
||||
format: int64
|
||||
type: integer
|
||||
network:
|
||||
type: string
|
||||
|
@ -515,13 +562,27 @@ definitions:
|
|||
properties:
|
||||
allow:
|
||||
type: boolean
|
||||
dstIP:
|
||||
allowed_ports:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
allowed_protocols:
|
||||
allOf:
|
||||
- $ref: '#/definitions/models.Protocol'
|
||||
description: tcp, udp, etc.
|
||||
dst_ip:
|
||||
$ref: '#/definitions/net.IPNet'
|
||||
srcIP:
|
||||
src_ip:
|
||||
$ref: '#/definitions/net.IPNet'
|
||||
type: object
|
||||
models.FwUpdate:
|
||||
properties:
|
||||
acl_rules:
|
||||
additionalProperties:
|
||||
$ref: '#/definitions/models.AclRule'
|
||||
type: object
|
||||
allow_all:
|
||||
type: boolean
|
||||
egress_info:
|
||||
additionalProperties:
|
||||
$ref: '#/definitions/models.EgressInfo'
|
||||
|
@ -534,6 +595,10 @@ definitions:
|
|||
type: boolean
|
||||
is_ingress_gw:
|
||||
type: boolean
|
||||
networks:
|
||||
items:
|
||||
$ref: '#/definitions/net.IPNet'
|
||||
type: array
|
||||
type: object
|
||||
models.Host:
|
||||
properties:
|
||||
|
@ -596,7 +661,8 @@ definitions:
|
|||
os:
|
||||
type: string
|
||||
persistentkeepalive:
|
||||
$ref: '#/definitions/time.Duration'
|
||||
format: int64
|
||||
type: integer
|
||||
publickey:
|
||||
items:
|
||||
type: integer
|
||||
|
@ -797,26 +863,34 @@ definitions:
|
|||
models.Metric:
|
||||
properties:
|
||||
actualuptime:
|
||||
$ref: '#/definitions/time.Duration'
|
||||
format: int64
|
||||
type: integer
|
||||
connected:
|
||||
type: boolean
|
||||
lasttotalreceived:
|
||||
format: int64
|
||||
type: integer
|
||||
lasttotalsent:
|
||||
format: int64
|
||||
type: integer
|
||||
latency:
|
||||
format: int64
|
||||
type: integer
|
||||
node_name:
|
||||
type: string
|
||||
percentup:
|
||||
type: number
|
||||
totalreceived:
|
||||
format: int64
|
||||
type: integer
|
||||
totalsent:
|
||||
format: int64
|
||||
type: integer
|
||||
totaltime:
|
||||
format: int64
|
||||
type: integer
|
||||
uptime:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
models.Metrics:
|
||||
|
@ -868,10 +942,12 @@ definitions:
|
|||
minLength: 1
|
||||
type: string
|
||||
networklastmodified:
|
||||
format: int64
|
||||
type: integer
|
||||
nodelimit:
|
||||
type: integer
|
||||
nodeslastmodified:
|
||||
format: int64
|
||||
type: integer
|
||||
required:
|
||||
- netid
|
||||
|
@ -967,6 +1043,8 @@ definitions:
|
|||
type: integer
|
||||
networkrange6:
|
||||
type: number
|
||||
node_status:
|
||||
$ref: '#/definitions/models.NodeStatus'
|
||||
ownerid:
|
||||
type: string
|
||||
pendingdelete:
|
||||
|
@ -1005,10 +1083,36 @@ definitions:
|
|||
serverconfig:
|
||||
$ref: '#/definitions/models.ServerConfig'
|
||||
type: object
|
||||
models.NodeStatus:
|
||||
enum:
|
||||
- online
|
||||
- offline
|
||||
- warning
|
||||
- error
|
||||
- unknown
|
||||
type: string
|
||||
x-enum-varnames:
|
||||
- OnlineSt
|
||||
- OfflineSt
|
||||
- WarningSt
|
||||
- ErrorSt
|
||||
- UnKnown
|
||||
models.PeerMap:
|
||||
additionalProperties:
|
||||
$ref: '#/definitions/models.IDandAddr'
|
||||
type: object
|
||||
models.Protocol:
|
||||
enum:
|
||||
- all
|
||||
- udp
|
||||
- tcp
|
||||
- icmp
|
||||
type: string
|
||||
x-enum-varnames:
|
||||
- ALL
|
||||
- UDP
|
||||
- TCP
|
||||
- ICMP
|
||||
models.RegisterResponse:
|
||||
properties:
|
||||
requested_host:
|
||||
|
@ -1286,6 +1390,7 @@ definitions:
|
|||
mask:
|
||||
description: network mask
|
||||
items:
|
||||
format: int32
|
||||
type: integer
|
||||
type: array
|
||||
type: object
|
||||
|
@ -1303,42 +1408,6 @@ definitions:
|
|||
type: object
|
||||
netip.AddrPort:
|
||||
type: object
|
||||
time.Duration:
|
||||
enum:
|
||||
- -9223372036854775808
|
||||
- 9223372036854775807
|
||||
- 1
|
||||
- 1000
|
||||
- 1000000
|
||||
- 1000000000
|
||||
- 60000000000
|
||||
- 3600000000000
|
||||
- -9223372036854775808
|
||||
- 9223372036854775807
|
||||
- 1
|
||||
- 1000
|
||||
- 1000000
|
||||
- 1000000000
|
||||
- 60000000000
|
||||
- 3600000000000
|
||||
type: integer
|
||||
x-enum-varnames:
|
||||
- minDuration
|
||||
- maxDuration
|
||||
- Nanosecond
|
||||
- Microsecond
|
||||
- Millisecond
|
||||
- Second
|
||||
- Minute
|
||||
- Hour
|
||||
- minDuration
|
||||
- maxDuration
|
||||
- Nanosecond
|
||||
- Microsecond
|
||||
- Millisecond
|
||||
- Second
|
||||
- Minute
|
||||
- Hour
|
||||
wgtypes.PeerConfig:
|
||||
properties:
|
||||
allowedIPs:
|
||||
|
@ -1353,13 +1422,13 @@ definitions:
|
|||
- $ref: '#/definitions/net.UDPAddr'
|
||||
description: Endpoint specifies the endpoint of this peer entry, if not nil.
|
||||
persistentKeepaliveInterval:
|
||||
allOf:
|
||||
- $ref: '#/definitions/time.Duration'
|
||||
description: |-
|
||||
PersistentKeepaliveInterval specifies the persistent keepalive interval
|
||||
for this peer, if not nil.
|
||||
|
||||
A non-nil value of 0 will clear the persistent keepalive interval.
|
||||
format: int64
|
||||
type: integer
|
||||
presharedKey:
|
||||
description: |-
|
||||
PresharedKey specifies a peer's preshared key configuration, if not nil.
|
||||
|
|
Loading…
Add table
Reference in a new issue