Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
小 白蛋
Clutch
Commits
0986f33d
Commit
0986f33d
authored
4 years ago
by
Angela Nguyen
Browse files
Options
Download
Plain Diff
Merge branch 'main' into github-getdefault
parents
c107f737
a7a5b625
Changes
14
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
.github/workflows/docker.yml
+1
-1
.github/workflows/docker.yml
api/config/gateway/v1/gateway.proto
+2
-0
api/config/gateway/v1/gateway.proto
backend/api/config/gateway/v1/gateway.pb.go
+59
-49
backend/api/config/gateway/v1/gateway.pb.go
backend/api/config/gateway/v1/gateway.pb.validate.go
+2
-0
backend/api/config/gateway/v1/gateway.pb.validate.go
backend/cmd/migrate/README.md
+24
-0
backend/cmd/migrate/README.md
backend/cmd/migrate/migrate.go
+45
-9
backend/cmd/migrate/migrate.go
backend/cmd/migrate/migrations/000005_create_topology_cache_table.down.sql
+1
-1
...te/migrations/000005_create_topology_cache_table.down.sql
backend/gateway/gateway.go
+1
-1
backend/gateway/gateway.go
backend/gateway/mux/mux.go
+9
-4
backend/gateway/mux/mux.go
backend/go.mod
+9
-9
backend/go.mod
backend/go.sum
+20
-12
backend/go.sum
backend/module/chaos/serverexperimentation/rtds/rtds_cache.go
+2
-2
...end/module/chaos/serverexperimentation/rtds/rtds_cache.go
frontend/api/src/index.d.ts
+6
-0
frontend/api/src/index.d.ts
frontend/api/src/index.js
+17
-0
frontend/api/src/index.js
with
198 additions
and
88 deletions
+198
-88
.github/workflows/docker.yml
+
1
-
1
View file @
0986f33d
...
...
@@ -22,7 +22,7 @@ jobs:
TAGS="$TAGS,${DOCKER_IMAGE}:sha-${GITHUB_SHA::7}"
echo ::set-output name=tags::${TAGS}
-
name
:
build
uses
:
docker/build-push-action@v2.2.
0
uses
:
docker/build-push-action@v2.2.
1
with
:
tags
:
${{ steps.tags.outputs.tags }}
push
:
true
This diff is collapsed.
Click to expand it.
api/config/gateway/v1/gateway.proto
+
2
-
0
View file @
0986f33d
...
...
@@ -95,6 +95,8 @@ message GatewayOptions {
repeated
Middleware
middleware
=
6
;
Assets
assets
=
7
;
bool
enable_pprof
=
8
;
}
// Assets configuration provide a passthrough host for frontend static assets.
...
...
This diff is collapsed.
Click to expand it.
backend/api/config/gateway/v1/gateway.pb.go
+
59
-
49
View file @
0986f33d
...
...
@@ -457,6 +457,7 @@ type GatewayOptions struct {
Timeouts
*
Timeouts
`protobuf:"bytes,5,opt,name=timeouts,proto3" json:"timeouts,omitempty"`
Middleware
[]
*
Middleware
`protobuf:"bytes,6,rep,name=middleware,proto3" json:"middleware,omitempty"`
Assets
*
Assets
`protobuf:"bytes,7,opt,name=assets,proto3" json:"assets,omitempty"`
EnablePprof
bool
`protobuf:"varint,8,opt,name=enable_pprof,json=enablePprof,proto3" json:"enable_pprof,omitempty"`
}
func
(
x
*
GatewayOptions
)
Reset
()
{
...
...
@@ -540,6 +541,13 @@ func (x *GatewayOptions) GetAssets() *Assets {
return
nil
}
func
(
x
*
GatewayOptions
)
GetEnablePprof
()
bool
{
if
x
!=
nil
{
return
x
.
EnablePprof
}
return
false
}
// Assets configuration provide a passthrough host for frontend static assets.
// This is useful if you dont have the ability to enable sticky sessions or a blue/green deploy system in place.
type
Assets
struct
{
...
...
@@ -1338,7 +1346,7 @@ var file_config_gateway_v1_gateway_proto_rawDesc = []byte{
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x19
,
0x2e
,
0x67
,
0x6f
,
0x6f
,
0x67
,
0x6c
,
0x65
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x62
,
0x75
,
0x66
,
0x2e
,
0x44
,
0x75
,
0x72
,
0x61
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x42
,
0x0c
,
0xfa
,
0x42
,
0x09
,
0xaa
,
0x01
,
0x06
,
0x08
,
0x01
,
0x32
,
0x02
,
0x08
,
0x01
,
0x52
,
0x07
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x6f
,
0x75
,
0x74
,
0x22
,
0x
82
,
0x04
,
0x0a
,
0x0e
,
0x47
,
0x61
,
0x74
,
0x07
,
0x74
,
0x69
,
0x6d
,
0x65
,
0x6f
,
0x75
,
0x74
,
0x22
,
0x
a5
,
0x04
,
0x0a
,
0x0e
,
0x47
,
0x61
,
0x74
,
0x65
,
0x77
,
0x61
,
0x79
,
0x4f
,
0x70
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x73
,
0x12
,
0x48
,
0x0a
,
0x08
,
0x6c
,
0x69
,
0x73
,
0x74
,
0x65
,
0x6e
,
0x65
,
0x72
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x22
,
0x2e
,
0x63
,
0x6c
,
0x75
,
0x74
,
0x63
,
0x68
,
0x2e
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x2e
,
0x67
,
0x61
,
...
...
@@ -1370,59 +1378,61 @@ var file_config_gateway_v1_gateway_proto_rawDesc = []byte{
0x61
,
0x72
,
0x65
,
0x12
,
0x38
,
0x0a
,
0x06
,
0x61
,
0x73
,
0x73
,
0x65
,
0x74
,
0x73
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x20
,
0x2e
,
0x63
,
0x6c
,
0x75
,
0x74
,
0x63
,
0x68
,
0x2e
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x2e
,
0x67
,
0x61
,
0x74
,
0x65
,
0x77
,
0x61
,
0x79
,
0x2e
,
0x76
,
0x31
,
0x2e
,
0x41
,
0x73
,
0x73
,
0x65
,
0x74
,
0x73
,
0x52
,
0x06
,
0x61
,
0x73
,
0x73
,
0x65
,
0x74
,
0x73
,
0x22
,
0xa3
,
0x01
,
0x0a
,
0x06
,
0x41
,
0x73
,
0x73
,
0x65
,
0x74
,
0x73
,
0x12
,
0x3d
,
0x0a
,
0x02
,
0x73
,
0x33
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x2b
,
0x2e
,
0x63
,
0x6c
,
0x75
,
0x74
,
0x63
,
0x68
,
0x2e
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x2e
,
0x67
,
0x61
,
0x74
,
0x65
,
0x77
,
0x61
,
0x79
,
0x2e
,
0x76
,
0x31
,
0x2e
,
0x41
,
0x73
,
0x73
,
0x65
,
0x74
,
0x73
,
0x2e
,
0x53
,
0x33
,
0x50
,
0x72
,
0x6f
,
0x76
,
0x69
,
0x64
,
0x65
,
0x72
,
0x48
,
0x00
,
0x52
,
0x02
,
0x73
,
0x33
,
0x1a
,
0x4e
,
0x0a
,
0x0a
,
0x53
,
0x33
,
0x50
,
0x72
,
0x6f
,
0x76
,
0x69
,
0x64
,
0x65
,
0x72
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x72
,
0x65
,
0x67
,
0x69
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x72
,
0x65
,
0x67
,
0x69
,
0x6f
,
0x6e
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x62
,
0x75
,
0x63
,
0x6b
,
0x65
,
0x74
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x62
,
0x75
,
0x63
,
0x6b
,
0x65
,
0x74
,
0x12
,
0x10
,
0x0a
,
0x03
,
0x6b
,
0x65
,
0x79
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x03
,
0x6b
,
0x65
,
0x79
,
0x42
,
0x0a
,
0x0a
,
0x08
,
0x70
,
0x72
,
0x6f
,
0x76
,
0x69
,
0x64
,
0x65
,
0x72
,
0x22
,
0xc4
,
0x01
,
0x0a
,
0x06
,
0x4c
,
0x6f
,
0x67
,
0x67
,
0x65
,
0x72
,
0x12
,
0x3c
,
0x0a
,
0x05
,
0x6c
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0e
,
0x32
,
0x26
,
0x2e
,
0x63
,
0x6c
,
0x75
,
0x74
,
0x63
,
0x68
,
0x2e
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x2e
,
0x67
,
0x61
,
0x74
,
0x65
,
0x77
,
0x61
,
0x79
,
0x2e
,
0x76
,
0x31
,
0x2e
,
0x4c
,
0x6f
,
0x67
,
0x67
,
0x65
,
0x72
,
0x2e
,
0x4c
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x52
,
0x05
,
0x6c
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x12
,
0x18
,
0x0a
,
0x06
,
0x70
,
0x72
,
0x65
,
0x74
,
0x74
,
0x79
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x08
,
0x48
,
0x00
,
0x52
,
0x06
,
0x70
,
0x72
,
0x65
,
0x74
,
0x74
,
0x79
,
0x22
,
0x58
,
0x0a
,
0x05
,
0x4c
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x12
,
0x0f
,
0x0a
,
0x0b
,
0x55
,
0x4e
,
0x53
,
0x50
,
0x45
,
0x43
,
0x49
,
0x46
,
0x49
,
0x45
,
0x44
,
0x10
,
0x00
,
0x12
,
0x09
,
0x0a
,
0x05
,
0x44
,
0x45
,
0x42
,
0x55
,
0x47
,
0x10
,
0x01
,
0x12
,
0x08
,
0x0a
,
0x04
,
0x49
,
0x4e
,
0x46
,
0x4f
,
0x10
,
0x02
,
0x12
,
0x08
,
0x0a
,
0x04
,
0x57
,
0x41
,
0x52
,
0x4e
,
0x10
,
0x03
,
0x12
,
0x09
,
0x0a
,
0x05
,
0x45
,
0x52
,
0x52
,
0x4f
,
0x52
,
0x10
,
0x04
,
0x12
,
0x09
,
0x0a
,
0x05
,
0x50
,
0x41
,
0x4e
,
0x49
,
0x43
,
0x10
,
0x05
,
0x12
,
0x09
,
0x0a
,
0x05
,
0x46
,
0x41
,
0x54
,
0x41
,
0x4c
,
0x10
,
0x06
,
0x42
,
0x08
,
0x0a
,
0x06
,
0x66
,
0x6f
,
0x72
,
0x6d
,
0x61
,
0x74
,
0x22
,
0x62
,
0x0a
,
0x0a
,
0x4d
,
0x69
,
0x64
,
0x64
,
0x6c
,
0x65
,
0x77
,
0x61
,
0x72
,
0x65
,
0x12
,
0x1b
,
0x0a
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x07
,
0xfa
,
0x42
,
0x04
,
0x72
,
0x02
,
0x20
,
0x01
,
0x52
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x37
,
0x0a
,
0x0c
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x5f
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x14
,
0x2e
,
0x67
,
0x6f
,
0x6f
,
0x67
,
0x6c
,
0x65
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x62
,
0x75
,
0x66
,
0x2e
,
0x41
,
0x6e
,
0x79
,
0x52
,
0x0b
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x22
,
0x5f
,
0x0a
,
0x07
,
0x53
,
0x65
,
0x72
,
0x76
,
0x69
,
0x63
,
0x65
,
0x12
,
0x1b
,
0x0a
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x07
,
0xfa
,
0x42
,
0x04
,
0x72
,
0x02
,
0x20
,
0x01
,
0x52
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x37
,
0x0a
,
0x0c
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x5f
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x14
,
0x2e
,
0x67
,
0x6f
,
0x6f
,
0x67
,
0x6c
,
0x65
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x62
,
0x75
,
0x66
,
0x2e
,
0x41
,
0x6e
,
0x79
,
0x52
,
0x0b
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x22
,
0x60
,
0x0a
,
0x08
,
0x52
,
0x65
,
0x73
,
0x6f
,
0x6c
,
0x76
,
0x65
,
0x72
,
0x12
,
0x1b
,
0x0a
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x07
,
0xfa
,
0x42
,
0x04
,
0x72
,
0x02
,
0x20
,
0x01
,
0x52
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x37
,
0x0a
,
0x0c
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x5f
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x14
,
0x2e
,
0x67
,
0x6f
,
0x6f
,
0x67
,
0x6c
,
0x65
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x62
,
0x75
,
0x66
,
0x2e
,
0x41
,
0x6e
,
0x79
,
0x52
,
0x0b
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x22
,
0x5e
,
0x0a
,
0x06
,
0x4d
,
0x6f
,
0x64
,
0x75
,
0x6c
,
0x65
,
0x12
,
0x1b
,
0x0a
,
0x04
,
0x6e
,
0x73
,
0x73
,
0x65
,
0x74
,
0x73
,
0x52
,
0x06
,
0x61
,
0x73
,
0x73
,
0x65
,
0x74
,
0x73
,
0x12
,
0x21
,
0x0a
,
0x0c
,
0x65
,
0x6e
,
0x61
,
0x62
,
0x6c
,
0x65
,
0x5f
,
0x70
,
0x70
,
0x72
,
0x6f
,
0x66
,
0x18
,
0x08
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x0b
,
0x65
,
0x6e
,
0x61
,
0x62
,
0x6c
,
0x65
,
0x50
,
0x70
,
0x72
,
0x6f
,
0x66
,
0x22
,
0xa3
,
0x01
,
0x0a
,
0x06
,
0x41
,
0x73
,
0x73
,
0x65
,
0x74
,
0x73
,
0x12
,
0x3d
,
0x0a
,
0x02
,
0x73
,
0x33
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x2b
,
0x2e
,
0x63
,
0x6c
,
0x75
,
0x74
,
0x63
,
0x68
,
0x2e
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x2e
,
0x67
,
0x61
,
0x74
,
0x65
,
0x77
,
0x61
,
0x79
,
0x2e
,
0x76
,
0x31
,
0x2e
,
0x41
,
0x73
,
0x73
,
0x65
,
0x74
,
0x73
,
0x2e
,
0x53
,
0x33
,
0x50
,
0x72
,
0x6f
,
0x76
,
0x69
,
0x64
,
0x65
,
0x72
,
0x48
,
0x00
,
0x52
,
0x02
,
0x73
,
0x33
,
0x1a
,
0x4e
,
0x0a
,
0x0a
,
0x53
,
0x33
,
0x50
,
0x72
,
0x6f
,
0x76
,
0x69
,
0x64
,
0x65
,
0x72
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x72
,
0x65
,
0x67
,
0x69
,
0x6f
,
0x6e
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x72
,
0x65
,
0x67
,
0x69
,
0x6f
,
0x6e
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x62
,
0x75
,
0x63
,
0x6b
,
0x65
,
0x74
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x06
,
0x62
,
0x75
,
0x63
,
0x6b
,
0x65
,
0x74
,
0x12
,
0x10
,
0x0a
,
0x03
,
0x6b
,
0x65
,
0x79
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x03
,
0x6b
,
0x65
,
0x79
,
0x42
,
0x0a
,
0x0a
,
0x08
,
0x70
,
0x72
,
0x6f
,
0x76
,
0x69
,
0x64
,
0x65
,
0x72
,
0x22
,
0xc4
,
0x01
,
0x0a
,
0x06
,
0x4c
,
0x6f
,
0x67
,
0x67
,
0x65
,
0x72
,
0x12
,
0x3c
,
0x0a
,
0x05
,
0x6c
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x0e
,
0x32
,
0x26
,
0x2e
,
0x63
,
0x6c
,
0x75
,
0x74
,
0x63
,
0x68
,
0x2e
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x2e
,
0x67
,
0x61
,
0x74
,
0x65
,
0x77
,
0x61
,
0x79
,
0x2e
,
0x76
,
0x31
,
0x2e
,
0x4c
,
0x6f
,
0x67
,
0x67
,
0x65
,
0x72
,
0x2e
,
0x4c
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x52
,
0x05
,
0x6c
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x12
,
0x18
,
0x0a
,
0x06
,
0x70
,
0x72
,
0x65
,
0x74
,
0x74
,
0x79
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x08
,
0x48
,
0x00
,
0x52
,
0x06
,
0x70
,
0x72
,
0x65
,
0x74
,
0x74
,
0x79
,
0x22
,
0x58
,
0x0a
,
0x05
,
0x4c
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x12
,
0x0f
,
0x0a
,
0x0b
,
0x55
,
0x4e
,
0x53
,
0x50
,
0x45
,
0x43
,
0x49
,
0x46
,
0x49
,
0x45
,
0x44
,
0x10
,
0x00
,
0x12
,
0x09
,
0x0a
,
0x05
,
0x44
,
0x45
,
0x42
,
0x55
,
0x47
,
0x10
,
0x01
,
0x12
,
0x08
,
0x0a
,
0x04
,
0x49
,
0x4e
,
0x46
,
0x4f
,
0x10
,
0x02
,
0x12
,
0x08
,
0x0a
,
0x04
,
0x57
,
0x41
,
0x52
,
0x4e
,
0x10
,
0x03
,
0x12
,
0x09
,
0x0a
,
0x05
,
0x45
,
0x52
,
0x52
,
0x4f
,
0x52
,
0x10
,
0x04
,
0x12
,
0x09
,
0x0a
,
0x05
,
0x50
,
0x41
,
0x4e
,
0x49
,
0x43
,
0x10
,
0x05
,
0x12
,
0x09
,
0x0a
,
0x05
,
0x46
,
0x41
,
0x54
,
0x41
,
0x4c
,
0x10
,
0x06
,
0x42
,
0x08
,
0x0a
,
0x06
,
0x66
,
0x6f
,
0x72
,
0x6d
,
0x61
,
0x74
,
0x22
,
0x62
,
0x0a
,
0x0a
,
0x4d
,
0x69
,
0x64
,
0x64
,
0x6c
,
0x65
,
0x77
,
0x61
,
0x72
,
0x65
,
0x12
,
0x1b
,
0x0a
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x07
,
0xfa
,
0x42
,
0x04
,
0x72
,
0x02
,
0x20
,
0x01
,
0x52
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x37
,
0x0a
,
0x0c
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x5f
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x14
,
0x2e
,
0x67
,
0x6f
,
0x6f
,
0x67
,
0x6c
,
0x65
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x62
,
0x75
,
0x66
,
0x2e
,
0x41
,
0x6e
,
0x79
,
0x52
,
0x0b
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x42
,
0x40
,
0x5a
,
0x3e
,
0x67
,
0x69
,
0x74
,
0x68
,
0x75
,
0x62
,
0x2e
,
0x63
,
0x6f
,
0x6d
,
0x2f
,
0x6c
,
0x79
,
0x66
,
0x74
,
0x2f
,
0x63
,
0x6c
,
0x75
,
0x74
,
0x63
,
0x68
,
0x2f
,
0x62
,
0x61
,
0x63
,
0x6b
,
0x65
,
0x6e
,
0x64
,
0x2f
,
0x61
,
0x70
,
0x69
,
0x2f
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x2f
,
0x67
,
0x61
,
0x74
,
0x65
,
0x77
,
0x61
,
0x79
,
0x2f
,
0x76
,
0x31
,
0x3b
,
0x67
,
0x61
,
0x74
,
0x65
,
0x77
,
0x61
,
0x79
,
0x76
,
0x31
,
0x62
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
0x67
,
0x22
,
0x5f
,
0x0a
,
0x07
,
0x53
,
0x65
,
0x72
,
0x76
,
0x69
,
0x63
,
0x65
,
0x12
,
0x1b
,
0x0a
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x07
,
0xfa
,
0x42
,
0x04
,
0x72
,
0x02
,
0x20
,
0x01
,
0x52
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x37
,
0x0a
,
0x0c
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x5f
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x14
,
0x2e
,
0x67
,
0x6f
,
0x6f
,
0x67
,
0x6c
,
0x65
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x62
,
0x75
,
0x66
,
0x2e
,
0x41
,
0x6e
,
0x79
,
0x52
,
0x0b
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x22
,
0x60
,
0x0a
,
0x08
,
0x52
,
0x65
,
0x73
,
0x6f
,
0x6c
,
0x76
,
0x65
,
0x72
,
0x12
,
0x1b
,
0x0a
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x07
,
0xfa
,
0x42
,
0x04
,
0x72
,
0x02
,
0x20
,
0x01
,
0x52
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x37
,
0x0a
,
0x0c
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x5f
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x14
,
0x2e
,
0x67
,
0x6f
,
0x6f
,
0x67
,
0x6c
,
0x65
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x62
,
0x75
,
0x66
,
0x2e
,
0x41
,
0x6e
,
0x79
,
0x52
,
0x0b
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x22
,
0x5e
,
0x0a
,
0x06
,
0x4d
,
0x6f
,
0x64
,
0x75
,
0x6c
,
0x65
,
0x12
,
0x1b
,
0x0a
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x42
,
0x07
,
0xfa
,
0x42
,
0x04
,
0x72
,
0x02
,
0x20
,
0x01
,
0x52
,
0x04
,
0x6e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x37
,
0x0a
,
0x0c
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x5f
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x14
,
0x2e
,
0x67
,
0x6f
,
0x6f
,
0x67
,
0x6c
,
0x65
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x62
,
0x75
,
0x66
,
0x2e
,
0x41
,
0x6e
,
0x79
,
0x52
,
0x0b
,
0x74
,
0x79
,
0x70
,
0x65
,
0x64
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x42
,
0x40
,
0x5a
,
0x3e
,
0x67
,
0x69
,
0x74
,
0x68
,
0x75
,
0x62
,
0x2e
,
0x63
,
0x6f
,
0x6d
,
0x2f
,
0x6c
,
0x79
,
0x66
,
0x74
,
0x2f
,
0x63
,
0x6c
,
0x75
,
0x74
,
0x63
,
0x68
,
0x2f
,
0x62
,
0x61
,
0x63
,
0x6b
,
0x65
,
0x6e
,
0x64
,
0x2f
,
0x61
,
0x70
,
0x69
,
0x2f
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x2f
,
0x67
,
0x61
,
0x74
,
0x65
,
0x77
,
0x61
,
0x79
,
0x2f
,
0x76
,
0x31
,
0x3b
,
0x67
,
0x61
,
0x74
,
0x65
,
0x77
,
0x61
,
0x79
,
0x76
,
0x31
,
0x62
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
}
var
(
...
...
This diff is collapsed.
Click to expand it.
backend/api/config/gateway/v1/gateway.pb.validate.go
+
2
-
0
View file @
0986f33d
...
...
@@ -662,6 +662,8 @@ func (m *GatewayOptions) Validate() error {
}
}
// no validation rules for EnablePprof
return
nil
}
...
...
This diff is collapsed.
Click to expand it.
backend/cmd/migrate/README.md
+
24
-
0
View file @
0986f33d
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents**
*generated with [DocToc](https://github.com/thlorenz/doctoc)*
-
[
Using `migrate`
](
#using-migrate
)
-
[
Migrating Up
](
#migrating-up
)
-
[
Migrating Down
](
#migrating-down
)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
# Using `migrate`
## Migrating Up
Ensure that the working directory is
`migrate`
so the binary can discover the migration files, e.g.
```
bash
...
...
@@ -10,3 +22,15 @@ go run migrate.go -template -c path/to/my/clutch-config.yaml
Note:
`migrate.go`
accepts the same arguments as the main Clutch binary.
Migrate also accepts an
`-f`
option to skip user confirmation of migration (useful for CI).
## Migrating Down
To migrate down supply the
`-down`
flag.
A single invocation of the migrate down will only ever migrate one version down.
If you need to migrate down multiple versions, invoke the tool until you reach the desired version.
```
cd backend/cmd/migrate
go run migrate.go -template -down -c path/to/my/clutch-config.yaml
```
This diff is collapsed.
Click to expand it.
backend/cmd/migrate/migrate.go
+
45
-
9
View file @
0986f33d
...
...
@@ -25,6 +25,7 @@ import (
type
MigrateFlags
struct
{
Force
bool
Down
bool
BaseFlags
*
gateway
.
Flags
}
...
...
@@ -33,6 +34,7 @@ func (m *MigrateFlags) Link() {
m
.
BaseFlags
.
Link
()
flag
.
BoolVar
(
&
m
.
Force
,
"f"
,
false
,
"do not ask user for confirmation"
)
flag
.
BoolVar
(
&
m
.
Down
,
"down"
,
false
,
"migrates down by one version"
)
}
type
migrateLogger
struct
{
...
...
@@ -85,7 +87,8 @@ func (m *Migrator) setupSqlClient() (*sql.DB, string) {
// Asks the user to confrim an action, this can be skipped by using the force flag.
// If the input is not 'y' we log fatal and exit.
func
(
m
*
Migrator
)
confirmWithUser
(
msg
string
,
hostInfo
string
)
{
func
(
m
*
Migrator
)
confirmWithUser
(
msg
string
)
{
_
,
hostInfo
:=
m
.
setupSqlClient
()
// Verify that user wants to continue (unless -f for force is passed as a flag).
m
.
log
.
Info
(
"using database"
,
zap
.
String
(
"hostInfo"
,
hostInfo
))
if
!
m
.
flags
.
Force
{
...
...
@@ -103,11 +106,9 @@ func (m *Migrator) confirmWithUser(msg string, hostInfo string) {
}
}
func
(
m
*
Migrator
)
Up
()
{
sqlDB
,
hostInfo
:=
m
.
setupSqlClient
()
msg
:=
"migration has the potential to cause irrevocable data loss, verify host information above"
m
.
confirmWithUser
(
msg
,
hostInfo
)
// Sets up the sql migrator while also perfomring some pre flight checks such as a db ping.
func
(
m
*
Migrator
)
setupSqlMigrator
()
*
migrate
.
Migrate
{
sqlDB
,
_
:=
m
.
setupSqlClient
()
// Ping database and bring up driver.
if
err
:=
sqlDB
.
Ping
();
err
!=
nil
{
...
...
@@ -125,6 +126,7 @@ func (m *Migrator) Up() {
m
.
log
.
Fatal
(
"could not get working dir"
,
zap
.
Error
(
err
))
}
migrationDir
=
filepath
.
Join
(
migrationDir
,
"migrations"
)
m
.
log
.
Info
(
"Utilizing migration directory:"
,
zap
.
String
(
"migrationDir"
,
migrationDir
))
sqlMigrate
,
err
:=
migrate
.
NewWithDatabaseInstance
(
fmt
.
Sprintf
(
"file://%s"
,
migrationDir
),
...
...
@@ -137,9 +139,39 @@ func (m *Migrator) Up() {
logger
:
m
.
log
.
Sugar
(),
}
return
sqlMigrate
}
func
(
m
*
Migrator
)
Up
()
{
msg
:=
"migration has the potential to cause irrevocable data loss, verify host information above"
m
.
confirmWithUser
(
msg
)
sqlMigrate
:=
m
.
setupSqlMigrator
()
// Apply migrations!
m
.
log
.
Info
(
"applying migrations"
,
zap
.
String
(
"migrationDir"
,
migrationDir
))
err
=
sqlMigrate
.
Up
()
m
.
log
.
Info
(
"applying up migrations"
)
err
:=
sqlMigrate
.
Up
()
if
err
!=
nil
&&
err
!=
migrate
.
ErrNoChange
{
m
.
log
.
Fatal
(
"failed running migrations"
,
zap
.
Error
(
err
))
}
}
func
(
m
*
Migrator
)
Down
()
{
sqlMigrate
:=
m
.
setupSqlMigrator
()
version
,
_
,
err
:=
sqlMigrate
.
Version
()
if
err
!=
nil
{
m
.
log
.
Fatal
(
"failed to aquire migration version"
,
zap
.
Error
(
err
))
}
msg
:=
fmt
.
Sprintf
(
"Migrating DOWN by ONE version from (%d -> %d) this migration has the potential to cause irrevocable data loss, verify host information above"
,
version
,
(
version
-
1
))
m
.
confirmWithUser
(
msg
)
// Migrate back by 1
m
.
log
.
Info
(
"applying migrations down"
)
err
=
sqlMigrate
.
Steps
(
-
1
)
if
err
!=
nil
&&
err
!=
migrate
.
ErrNoChange
{
m
.
log
.
Fatal
(
"failed running migrations"
,
zap
.
Error
(
err
))
}
...
...
@@ -161,5 +193,9 @@ func main() {
cfg
:
cfg
,
}
migrator
.
Up
()
if
f
.
Down
{
migrator
.
Down
()
}
else
{
migrator
.
Up
()
}
}
This diff is collapsed.
Click to expand it.
backend/cmd/migrate/migrations/000005_create_topology_cache_table.down.sql
+
1
-
1
View file @
0986f33d
DROP
TABLE
IF
EXISTS
topology_cache
_data
;
DROP
TABLE
IF
EXISTS
topology_cache
;
This diff is collapsed.
Click to expand it.
backend/gateway/gateway.go
+
1
-
1
View file @
0986f33d
...
...
@@ -164,7 +164,7 @@ func RunWithConfig(f *Flags, cfg *gatewayv1.Config, cf *ComponentFactory, assets
}
// Instantiate and register modules listed in the configuration.
rpcMux
,
err
:=
mux
.
New
(
interceptors
,
assets
,
cfg
.
Gateway
.
Assets
)
rpcMux
,
err
:=
mux
.
New
(
interceptors
,
assets
,
cfg
.
Gateway
)
if
err
!=
nil
{
panic
(
err
)
}
...
...
This diff is collapsed.
Click to expand it.
backend/gateway/mux/mux.go
+
9
-
4
View file @
0986f33d
...
...
@@ -6,6 +6,7 @@ import (
"io"
"net/http"
"net/http/httptest"
"net/http/pprof"
"net/url"
"path"
"regexp"
...
...
@@ -199,7 +200,7 @@ func customErrorHandler(ctx context.Context, mux *runtime.ServeMux, m runtime.Ma
runtime
.
DefaultHTTPErrorHandler
(
ctx
,
mux
,
m
,
w
,
req
,
err
)
}
func
New
(
unaryInterceptors
[]
grpc
.
UnaryServerInterceptor
,
assets
http
.
FileSystem
,
asset
Cfg
*
gatewayv1
.
Asset
s
)
(
*
Mux
,
error
)
{
func
New
(
unaryInterceptors
[]
grpc
.
UnaryServerInterceptor
,
assets
http
.
FileSystem
,
gateway
Cfg
*
gatewayv1
.
GatewayOption
s
)
(
*
Mux
,
error
)
{
grpcServer
:=
grpc
.
NewServer
(
grpc
.
ChainUnaryInterceptor
(
unaryInterceptors
...
))
jsonGateway
:=
runtime
.
NewServeMux
(
runtime
.
WithForwardResponseOption
(
customResponseForwarder
),
...
...
@@ -220,8 +221,8 @@ func New(unaryInterceptors []grpc.UnaryServerInterceptor, assets http.FileSystem
// If there is a configured asset provider, we check to see if the service is configured before proceeding.
// Bailing out early during the startup process instead of hitting this error at runtime when serving assets.
if
a
sset
Cfg
!=
nil
&&
a
sset
Cfg
.
Provider
!=
nil
{
_
,
err
:=
getAssetProviderService
(
a
sset
Cfg
)
if
gatewayCfg
.
A
sset
s
!=
nil
&&
gatewayCfg
.
A
sset
s
.
Provider
!=
nil
{
_
,
err
:=
getAssetProviderService
(
gatewayCfg
.
A
sset
s
)
if
err
!=
nil
{
return
nil
,
err
}
...
...
@@ -229,12 +230,16 @@ func New(unaryInterceptors []grpc.UnaryServerInterceptor, assets http.FileSystem
httpMux
:=
http
.
NewServeMux
()
httpMux
.
Handle
(
"/"
,
&
assetHandler
{
assetCfg
:
a
sset
Cfg
,
assetCfg
:
gatewayCfg
.
A
sset
s
,
next
:
jsonGateway
,
fileSystem
:
assets
,
fileServer
:
http
.
FileServer
(
assets
),
})
if
gatewayCfg
.
EnablePprof
{
httpMux
.
HandleFunc
(
"/debug/pprof/"
,
pprof
.
Index
)
}
mux
:=
&
Mux
{
GRPCServer
:
grpcServer
,
JSONGateway
:
jsonGateway
,
...
...
This diff is collapsed.
Click to expand it.
backend/go.mod
+
9
-
9
View file @
0986f33d
...
...
@@ -4,12 +4,12 @@ go 1.13
require (
github.com/DATA-DOG/go-sqlmock v1.5.0
github.com/aws/aws-sdk-go v1.3
5.35
github.com/aws/aws-sdk-go v1.3
6.2
github.com/bufbuild/buf v0.30.0
github.com/cactus/go-statsd-client/statsd v0.0.0-20200623234511-94959e3146b2
github.com/coreos/go-oidc v2.2.1+incompatible
github.com/dgrijalva/jwt-go v3.2.0+incompatible
github.com/envoyproxy/go-control-plane v0.9.
7
github.com/envoyproxy/go-control-plane v0.9.
8
github.com/envoyproxy/protoc-gen-validate v0.4.1
github.com/fullstorydev/grpcurl v1.7.0
github.com/go-git/go-billy/v5 v5.0.0
...
...
@@ -24,21 +24,21 @@ require (
github.com/iancoleman/strcase v0.1.2
github.com/jhump/protoreflect v1.7.1
github.com/lib/pq v1.9.0
github.com/mitchellh/hashstructure v
1
.0.
0
github.com/mitchellh/hashstructure
/v2
v
2
.0.
1
github.com/pquerna/cachecontrol v0.0.0-20180517163645-1555304b9b35 // indirect
github.com/shurcooL/githubv4 v0.0.0-2020
0928013246-d292edc3691b
github.com/shurcooL/githubv4 v0.0.0-2020
1206200315-234843c633fa
github.com/shurcooL/graphql v0.0.0-20181231061246-d48a9a75455f // indirect
github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749 // indirect
github.com/shurcooL/vfsgen v0.0.0-20200824052919-0d455de96546
github.com/slack-go/slack v0.7.
2
github.com/slack-go/slack v0.7.
3
github.com/stretchr/testify v1.6.1
github.com/uber-go/tally v3.3.17+incompatible
go.uber.org/zap v1.16.0
golang.org/x/net v0.0.0-20201
110031124-69a78807bb2
b
golang.org/x/oauth2 v0.0.0-2020
0902213428-5d25da1a8d43
golang.org/x/net v0.0.0-20201
202161906-c7110b5ffcb
b
golang.org/x/oauth2 v0.0.0-2020
1208152858-08078c50e5b5
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9
google.golang.org/genproto v0.0.0-20201
119123407-9b1e624d6bc4
google.golang.org/grpc v1.3
3.2
google.golang.org/genproto v0.0.0-20201
207150747-9ee31aac76e7
google.golang.org/grpc v1.3
4.0
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.0.1
google.golang.org/protobuf v1.25.0
gopkg.in/square/go-jose.v2 v2.4.1 // indirect
...
...
This diff is collapsed.
Click to expand it.
backend/go.sum
+
20
-
12
View file @
0986f33d
...
...
@@ -109,8 +109,8 @@ github.com/aws/aws-sdk-go v1.19.18/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpi
github.com/aws/aws-sdk-go v1.19.45/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
github.com/aws/aws-sdk-go v1.20.6/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
github.com/aws/aws-sdk-go v1.25.11/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
github.com/aws/aws-sdk-go v1.3
5.35 h1:o/EbgEcIPWga7GWhJhb3tiaxqk4/goTdo5YEMdnVxgE
=
github.com/aws/aws-sdk-go v1.3
5.35
/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
github.com/aws/aws-sdk-go v1.3
6.2 h1:UAeFPct+jHqWM+tgiqDrC9/sfbWj6wkcvpsJ+zdcsvA
=
github.com/aws/aws-sdk-go v1.3
6.2
/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59/go.mod h1:q/89r3U2H7sSsE2t6Kca0lfwTK8JdoNGS/yzM/4iH5I=
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8=
...
...
@@ -143,6 +143,8 @@ github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f h1:WBZRG4aNOuI15bLRrC
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354 h1:9kRtNpqLHbZVO/NNxhHp2ymxFxsHOe3x2efJGn//Tas=
github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403 h1:cqQfy1jclcSy/FwLjemeg3SR1yaINm74aQyupQ0Bl8M=
github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ=
github.com/cockroachdb/cockroach-go v0.0.0-20190925194419-606b3d062051/go.mod h1:XGLbWH/ujMcbPbhZq52Nv6UrCghb1yGn//133kEsvDk=
github.com/containerd/containerd v1.4.0/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
...
...
@@ -195,6 +197,8 @@ github.com/envoyproxy/go-control-plane v0.9.4 h1:rEvIZUSZ3fx39WIi3JkQqQBitGwpELB
github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98=
github.com/envoyproxy/go-control-plane v0.9.7 h1:EARl0OvqMoxq/UMgMSCLnXzkaXbxzskluEBlMQCJPms=
github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po=
github.com/envoyproxy/go-control-plane v0.9.8 h1:bbmjRkjmP0ZggMoahdNMmJFFnK7v5H+/j5niP5QH6bg=
github.com/envoyproxy/go-control-plane v0.9.8/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
github.com/envoyproxy/protoc-gen-validate v0.4.1 h1:7dLaJvASGRD7X49jSCSXXHwKPm0ZN9r9kJD+p+vS7dM=
github.com/envoyproxy/protoc-gen-validate v0.4.1/go.mod h1:E+IEazqdaWv3FrnGtZIu3b9fPFMK8AzeTTrk9SfVwWs=
...
...
@@ -527,8 +531,8 @@ github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG
github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI=
github.com/mitchellh/gox v0.4.0/go.mod h1:Sd9lOJ0+aimLBi73mGofS1ycjY8lL3uZM3JPS42BGNg=
github.com/mitchellh/hashstructure v
1
.0.
0
h1:
ZkRJX1CyOoTkar7p/mLS5TZU4nJ1Rn/F8u9dGS02Q3
Y=
github.com/mitchellh/hashstructure v
1
.0.
0
/go.mod h1:
QjSHrPWS+BGUVBYkbTZWEnOh3G1DutKwClXU/ABz6AQ
=
github.com/mitchellh/hashstructure
/v2
v
2
.0.
1
h1:
L60q1+q7cXE4JeEJJKMnh2brFIe3rZxCihYAB61ypA
Y=
github.com/mitchellh/hashstructure
/v2
v
2
.0.
1
/go.mod h1:
MG3aRVU/N29oo/V/IhBX8GR/zz4kQkprJgF2EVszyDE
=
github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY=
github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
github.com/mitchellh/mapstructure v0.0.0-20180220230111-00c29f56e238/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
...
...
@@ -615,8 +619,8 @@ github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAm
github.com/sergi/go-diff v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=
github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4=
github.com/shurcooL/githubv4 v0.0.0-2020
0928013246-d292edc3691b h1:0/ecDXh/HTHRtSDSFnD2/Ta1yQ5J76ZspVY4u0/jGFk
=
github.com/shurcooL/githubv4 v0.0.0-2020
0928013246-d292edc3691b
/go.mod h1:hAF0iLZy4td2EX+/8Tw+4nodhlMrwN3HupfaXj3zkGo=
github.com/shurcooL/githubv4 v0.0.0-2020
1206200315-234843c633fa h1:jozR3igKlnYCj9IVHOVump59bp07oIRoLQ/CcjMYIUA
=
github.com/shurcooL/githubv4 v0.0.0-2020
1206200315-234843c633fa
/go.mod h1:hAF0iLZy4td2EX+/8Tw+4nodhlMrwN3HupfaXj3zkGo=
github.com/shurcooL/graphql v0.0.0-20181231061246-d48a9a75455f h1:tygelZueB1EtXkPI6mQ4o9DQ0+FKW41hTbunoXZCTqk=
github.com/shurcooL/graphql v0.0.0-20181231061246-d48a9a75455f/go.mod h1:AuYgA5Kyo4c7HfUmvRGs/6rGlMMV/6B1bVnB9JxJEEg=
github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749 h1:bUGsEnyNbVPw06Bs80sCeARAlK8lhwqGyi6UT8ymuGk=
...
...
@@ -631,8 +635,8 @@ github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6Mwd
github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88=
github.com/sirupsen/logrus v1.7.0 h1:ShrD1U9pZB12TX0cVy0DtePoCH97K8EtX+mg7ZARUtM=
github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0=
github.com/slack-go/slack v0.7.
2
h1:
oLy2a2YqrtoHSSxbjRhrtLDGbCKcZJwgbuQ826BWxaI
=
github.com/slack-go/slack v0.7.
2
/go.mod h1:FGqNzJBmxIsZURAxh2a8D21AnOVvvXZvGligs4npPUM=
github.com/slack-go/slack v0.7.
3
h1:
XGgpRjLVAqBUFN2xvILySR9mo/JW/ITIHufy53QLhTE
=
github.com/slack-go/slack v0.7.
3
/go.mod h1:FGqNzJBmxIsZURAxh2a8D21AnOVvvXZvGligs4npPUM=
github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
github.com/smartystreets/assertions v1.0.0/go.mod h1:kHHU4qYBaI3q23Pp3VPrmWhuIUrLW/7eUrw0BU5VaoM=
github.com/smartystreets/go-aws-auth v0.0.0-20180515143844-0c1422d1fdb9/go.mod h1:SnhjPscd9TpLiy1LpzGSKh3bXCfxxXuqd9xmQJy3slM=
...
...
@@ -817,6 +821,8 @@ golang.org/x/net v0.0.0-20200904194848-62affa334b73/go.mod h1:/O7V0waA8r7cgGh81R
golang.org/x/net v0.0.0-20201029221708-28c70e62bb1d/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
golang.org/x/net v0.0.0-20201110031124-69a78807bb2b h1:uwuIcX0g4Yl1NC5XAz37xsr2lTtcqevgzYNVt49waME=
golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb h1:eBmm0M9fYhWpKZLjQUUKka/LtIxf46G4fxeEz5KJr9U=
golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
golang.org/x/oauth2 v0.0.0-20180227000427-d7d64896b5ff/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20181106182150-f42d05182288/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
...
...
@@ -827,6 +833,8 @@ golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4Iltr
golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43 h1:ld7aEMNHoBnnDAX15v1T6z31v8HwR2A9FYOuAhWqkwc=
golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5 h1:Lm4OryKCca1vehdsWogr9N4t7NfZxLbJoc/H0w4K4S4=
golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
...
...
@@ -1031,8 +1039,8 @@ google.golang.org/genproto v0.0.0-20201019141844-1ed22bb0c154/go.mod h1:FWY/as6D
google.golang.org/genproto v0.0.0-20201030142918-24207fddd1c3/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
google.golang.org/genproto v0.0.0-20201103154000-415bd0cd5df6 h1:rMoZiLTOobSD3eg30lPMcFkBFNSyKUQQIQlw/hsAXME=
google.golang.org/genproto v0.0.0-20201103154000-415bd0cd5df6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
google.golang.org/genproto v0.0.0-20201
119123407-9b1e624d6bc4 h1:Rt0FRalMgdSlXAVJvX4pr65KfqaxHXSLkSJRD9pw6g0
=
google.golang.org/genproto v0.0.0-20201
119123407-9b1e624d6bc4
/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
google.golang.org/genproto v0.0.0-20201
207150747-9ee31aac76e7 h1:MrlntRhz7JNWmR2J5pRYZFgfR0IuuhELDhxo2aBZVsg
=
google.golang.org/genproto v0.0.0-20201
207150747-9ee31aac76e7
/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no=
google.golang.org/grpc v1.8.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38=
...
...
@@ -1050,8 +1058,8 @@ google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM
google.golang.org/grpc v1.32.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak=
google.golang.org/grpc v1.33.1 h1:DGeFlSan2f+WEtCERJ4J9GJWk15TxUi8QGagfI87Xyc=
google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0=
google.golang.org/grpc v1.3
3.2
h1:
EQyQC3sa8M+p6Ulc8yy9SWSS2GVwyRc83gAbG8lrl4o
=
google.golang.org/grpc v1.3
3.2
/go.mod h1:
JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc
=
google.golang.org/grpc v1.3
4.0
h1:
raiipEjMOIC/TO2AvyTxP25XFdLxNIBwzDh3FM3XztI
=
google.golang.org/grpc v1.3
4.0
/go.mod h1:
WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8
=
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.0.0 h1:lQ+dE99pFsb8osbJB3oRfE5eW4Hx6a/lZQr8Jh+eoT4=
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.0.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw=
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.0.1 h1:M8spwkmx0pHrPq+uMdl22w5CvJ/Y+oAJTIs9oGoCpOE=
...
...
This diff is collapsed.
Click to expand it.
backend/module/chaos/serverexperimentation/rtds/rtds_cache.go
+
2
-
2
View file @
0986f33d
...
...
@@ -14,7 +14,7 @@ import (
gcpResourceV3
"github.com/envoyproxy/go-control-plane/pkg/resource/v3"
"github.com/golang/protobuf/ptypes"
pstruct
"github.com/golang/protobuf/ptypes/struct"
"github.com/mitchellh/hashstructure"
"github.com/mitchellh/hashstructure
/v2
"
"go.uber.org/zap"
experimentation
"github.com/lyft/clutch/backend/api/chaos/experimentation/v1"
...
...
@@ -329,7 +329,7 @@ func isFaultTest(experiment *experimentation.Experiment, testConfig *serverexper
}
func
computeChecksum
(
item
interface
{})
(
string
,
error
)
{
hash
,
err
:=
hashstructure
.
Hash
(
item
,
&
hashstructure
.
HashOptions
{
TagName
:
"json"
})
hash
,
err
:=
hashstructure
.
Hash
(
item
,
hashstructure
.
FormatV1
,
&
hashstructure
.
HashOptions
{
TagName
:
"json"
})
if
err
!=
nil
{
return
""
,
err
}
...
...
This diff is collapsed.
Click to expand it.
frontend/api/src/index.d.ts
+
6
-
0
View file @
0986f33d
...
...
@@ -5077,6 +5077,9 @@ export namespace clutch {
/** GatewayOptions assets */
assets?: (clutch.config.gateway.v1.IAssets|null);
/** GatewayOptions enablePprof */
enablePprof?: (boolean|null);
}
/** Represents a GatewayOptions. */
...
...
@@ -5109,6 +5112,9 @@ export namespace clutch {
/** GatewayOptions assets. */
public assets?: (clutch.config.gateway.v1.IAssets|null);
/** GatewayOptions enablePprof. */
public enablePprof: boolean;
/**
* Verifies a GatewayOptions message.
* @param message Plain object to verify
...
...
This diff is collapsed.
Click to expand it.
frontend/api/src/index.js
+
17
-
0
View file @
0986f33d
...
...
@@ -11921,6 +11921,7 @@ export const clutch = $root.clutch = (() => {
* @property {clutch.config.gateway.v1.ITimeouts|null} [timeouts] GatewayOptions timeouts
* @property {Array.<clutch.config.gateway.v1.IMiddleware>|null} [middleware] GatewayOptions middleware
* @property {clutch.config.gateway.v1.IAssets|null} [assets] GatewayOptions assets
* @property {boolean|null} [enablePprof] GatewayOptions enablePprof
*/
/**
...
...
@@ -11995,6 +11996,14 @@ export const clutch = $root.clutch = (() => {
*/
GatewayOptions.prototype.assets = null;
/**
* GatewayOptions enablePprof.
* @member {boolean} enablePprof
* @memberof clutch.config.gateway.v1.GatewayOptions
* @instance
*/
GatewayOptions.prototype.enablePprof = false;
/**
* Verifies a GatewayOptions message.
* @function verify
...
...
@@ -12045,6 +12054,9 @@ export const clutch = $root.clutch = (() => {
if (error)
return "assets." + error;
}
if (message.enablePprof != null && message.hasOwnProperty("enablePprof"))
if (typeof message.enablePprof !== "boolean")
return "enablePprof: boolean expected";
return null;
};
...
...
@@ -12100,6 +12112,8 @@ export const clutch = $root.clutch = (() => {
throw TypeError(".clutch.config.gateway.v1.GatewayOptions.assets: object expected");
message.assets = $root.clutch.config.gateway.v1.Assets.fromObject(object.assets);
}
if (object.enablePprof != null)
message.enablePprof = Boolean(object.enablePprof);
return message;
};
...
...
@@ -12125,6 +12139,7 @@ export const clutch = $root.clutch = (() => {
object.stats = null;
object.timeouts = null;
object.assets = null;
object.enablePprof = false;
}
if (message.listener != null && message.hasOwnProperty("listener"))
object.listener = $root.clutch.config.gateway.v1.Listener.toObject(message.listener, options);
...
...
@@ -12143,6 +12158,8 @@ export const clutch = $root.clutch = (() => {
}
if (message.assets != null && message.hasOwnProperty("assets"))
object.assets = $root.clutch.config.gateway.v1.Assets.toObject(message.assets, options);
if (message.enablePprof != null && message.hasOwnProperty("enablePprof"))
object.enablePprof = message.enablePprof;
return object;
};
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment