This commit is contained in:
Alexander Matyushentsev 2018-06-04 13:52:07 -07:00 committed by GitHub
parent 423fe3487c
commit 54835a0d93
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 143 additions and 60 deletions

View file

@ -113,7 +113,7 @@ func request_ApplicationService_Create_0(ctx context.Context, marshaler runtime.
var protoReq ApplicationCreateRequest
var metadata runtime.ServerMetadata
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Application); err != nil && err != io.EOF {
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Application); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@ -192,7 +192,7 @@ func request_ApplicationService_Update_0(ctx context.Context, marshaler runtime.
var protoReq ApplicationUpdateRequest
var metadata runtime.ServerMetadata
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Application); err != nil && err != io.EOF {
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Application); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@ -223,7 +223,7 @@ func request_ApplicationService_UpdateSpec_0(ctx context.Context, marshaler runt
var protoReq ApplicationUpdateSpecRequest
var metadata runtime.ServerMetadata
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Spec); err != nil && err != io.EOF {
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Spec); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@ -289,7 +289,7 @@ func request_ApplicationService_Sync_0(ctx context.Context, marshaler runtime.Ma
var protoReq ApplicationSyncRequest
var metadata runtime.ServerMetadata
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF {
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@ -320,7 +320,7 @@ func request_ApplicationService_Rollback_0(ctx context.Context, marshaler runtim
var protoReq ApplicationRollbackRequest
var metadata runtime.ServerMetadata
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF {
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}

View file

@ -49,7 +49,7 @@ func request_ClusterService_Create_0(ctx context.Context, marshaler runtime.Mars
var protoReq ClusterCreateRequest
var metadata runtime.ServerMetadata
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Cluster); err != nil && err != io.EOF {
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Cluster); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@ -89,7 +89,7 @@ func request_ClusterService_Update_0(ctx context.Context, marshaler runtime.Mars
var protoReq ClusterUpdateRequest
var metadata runtime.ServerMetadata
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Cluster); err != nil && err != io.EOF {
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Cluster); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}

View file

@ -2007,50 +2007,51 @@ var (
func init() { proto.RegisterFile("server/repository/repository.proto", fileDescriptorRepository) }
var fileDescriptorRepository = []byte{
// 716 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0xcd, 0x6e, 0xd3, 0x40,
0x10, 0x96, 0x93, 0x36, 0xa2, 0x9b, 0xaa, 0xb4, 0x4b, 0xa9, 0x2c, 0x93, 0xa6, 0xd5, 0xc2, 0xa1,
0x20, 0x6a, 0xd3, 0xc0, 0xa1, 0x2a, 0x27, 0x4a, 0xab, 0xaa, 0x2a, 0x07, 0x70, 0x55, 0x24, 0x38,
0x50, 0xb9, 0xce, 0xc8, 0x35, 0x49, 0x76, 0x97, 0xdd, 0x8d, 0xa5, 0x08, 0xf5, 0xc2, 0x01, 0x71,
0x86, 0x3b, 0x77, 0x1e, 0x80, 0x77, 0xe0, 0x88, 0xc4, 0x81, 0x2b, 0xaa, 0x78, 0x10, 0xb4, 0x6b,
0x27, 0x71, 0x9a, 0x9f, 0x53, 0xc4, 0x6d, 0x76, 0xf6, 0x9b, 0x99, 0xcf, 0xdf, 0xcc, 0xac, 0x11,
0x91, 0x20, 0x12, 0x10, 0x9e, 0x00, 0xce, 0x64, 0xac, 0x98, 0xe8, 0xe4, 0x4c, 0x97, 0x0b, 0xa6,
0x18, 0x46, 0x7d, 0x8f, 0xb3, 0x1c, 0xb1, 0x88, 0x19, 0xb7, 0xa7, 0xad, 0x14, 0xe1, 0x54, 0x22,
0xc6, 0xa2, 0x26, 0x78, 0x01, 0x8f, 0xbd, 0x80, 0x52, 0xa6, 0x02, 0x15, 0x33, 0x2a, 0xb3, 0x5b,
0xd2, 0xd8, 0x96, 0x6e, 0xcc, 0xcc, 0x6d, 0xc8, 0x04, 0x78, 0xc9, 0x96, 0x17, 0x01, 0x05, 0x11,
0x28, 0xa8, 0x67, 0x98, 0xc3, 0x28, 0x56, 0xe7, 0xed, 0x33, 0x37, 0x64, 0x2d, 0x2f, 0x10, 0xa6,
0xc4, 0x5b, 0x63, 0x6c, 0x86, 0x75, 0x8f, 0x37, 0x22, 0x1d, 0x2c, 0xbd, 0x80, 0xf3, 0x66, 0x1c,
0x9a, 0xe4, 0x5e, 0xb2, 0x15, 0x34, 0xf9, 0x79, 0x30, 0x94, 0x8a, 0xec, 0xa2, 0x45, 0x1f, 0x38,
0x3b, 0x92, 0x8c, 0x52, 0x50, 0x2f, 0xda, 0x20, 0x3a, 0x18, 0xa3, 0x19, 0xfd, 0x11, 0xb6, 0xb5,
0x6e, 0x6d, 0xcc, 0xf9, 0xc6, 0xc6, 0x0e, 0xba, 0x26, 0x20, 0x89, 0x65, 0xcc, 0xa8, 0x5d, 0x30,
0xfe, 0xde, 0x99, 0x1c, 0xa0, 0x1b, 0xb9, 0x1c, 0x3e, 0x48, 0xce, 0xa8, 0x04, 0xfc, 0x00, 0xcd,
0xc6, 0x0a, 0x5a, 0xd2, 0xb6, 0xd6, 0x8b, 0x1b, 0xe5, 0x9a, 0xe3, 0xe6, 0xb4, 0xca, 0xb0, 0x4f,
0x38, 0x3f, 0xe6, 0x10, 0xfa, 0x29, 0x90, 0xfc, 0xb6, 0xd0, 0xc2, 0xe0, 0x8d, 0xe6, 0x42, 0x83,
0x16, 0x74, 0xb9, 0x68, 0x1b, 0x3f, 0x47, 0xf3, 0x40, 0x93, 0x58, 0x30, 0xda, 0x02, 0xaa, 0xa4,
0x5d, 0x30, 0xf9, 0xef, 0x8f, 0xcf, 0xef, 0xee, 0xe7, 0xe0, 0xfb, 0x54, 0x89, 0x8e, 0x3f, 0x90,
0xc1, 0x39, 0x45, 0x4b, 0x43, 0x10, 0xbc, 0x88, 0x8a, 0x0d, 0xe8, 0x64, 0x95, 0xb5, 0x89, 0x1f,
0xa1, 0xd9, 0x24, 0x68, 0xb6, 0xc1, 0x28, 0x50, 0xae, 0x55, 0x47, 0x54, 0xcc, 0xa5, 0xf1, 0x53,
0xf0, 0x4e, 0x61, 0xdb, 0x22, 0xdf, 0x2c, 0x84, 0x87, 0x11, 0x23, 0xbf, 0xae, 0x8a, 0x50, 0x63,
0x5b, 0xbe, 0x04, 0x91, 0xd3, 0x3a, 0xe7, 0xd1, 0x31, 0x3c, 0x50, 0xe7, 0x76, 0x31, 0x8d, 0xd1,
0x36, 0x3e, 0x42, 0xe5, 0x3a, 0x48, 0x15, 0x53, 0xd3, 0x6d, 0x7b, 0xc6, 0xd0, 0xbb, 0x3b, 0x99,
0xde, 0x5e, 0x3f, 0xc0, 0xcf, 0x47, 0x93, 0x13, 0xb4, 0x3a, 0x11, 0x8d, 0x57, 0x50, 0x29, 0x5d,
0x84, 0x8c, 0x77, 0x76, 0xc2, 0x15, 0x34, 0xa7, 0xbf, 0x40, 0xf2, 0x20, 0x84, 0x8c, 0x78, 0xdf,
0x41, 0xd6, 0xd0, 0x9c, 0x9e, 0x92, 0xb1, 0x23, 0x46, 0x16, 0xd0, 0xbc, 0x06, 0x74, 0xe7, 0x87,
0x50, 0xb4, 0xa4, 0xcf, 0x4f, 0x05, 0x04, 0x0a, 0x7c, 0x78, 0xd7, 0x06, 0xa9, 0xf0, 0xab, 0x5c,
0x60, 0xb9, 0xb6, 0xef, 0xf6, 0x37, 0xc1, 0xed, 0x6e, 0x82, 0x31, 0x4e, 0xc3, 0xba, 0xcb, 0x1b,
0x91, 0xab, 0x37, 0xc1, 0xcd, 0x6d, 0x82, 0xdb, 0xdd, 0x04, 0xd7, 0xef, 0x89, 0x93, 0xd5, 0xcf,
0xea, 0x9d, 0xf0, 0xfa, 0x7f, 0xa9, 0x57, 0xfb, 0x5e, 0x4a, 0x0b, 0xa6, 0xce, 0x63, 0x10, 0x49,
0x1c, 0x02, 0xfe, 0x68, 0xa1, 0x99, 0x67, 0xb1, 0x54, 0xf8, 0x66, 0xbe, 0x7d, 0x3d, 0xe5, 0x9c,
0xc3, 0xa9, 0x50, 0xd0, 0x15, 0x48, 0xe5, 0xc3, 0xaf, 0xbf, 0x5f, 0x0a, 0x2b, 0x78, 0xd9, 0x3c,
0x36, 0xc9, 0x56, 0xff, 0x31, 0x8b, 0x41, 0xe2, 0x04, 0x5d, 0xd7, 0xa8, 0xfe, 0x26, 0x49, 0x5c,
0xb9, 0x4a, 0x29, 0xff, 0x6c, 0x38, 0x6b, 0x63, 0x6e, 0x7b, 0x0d, 0xbd, 0x63, 0xea, 0x55, 0x71,
0x65, 0x54, 0x3d, 0xaf, 0x91, 0xa2, 0xf1, 0x67, 0x0b, 0x95, 0xd2, 0x9e, 0xe3, 0xd5, 0xab, 0x19,
0x07, 0x66, 0xc1, 0x99, 0x4e, 0x37, 0x08, 0x31, 0xb4, 0x2a, 0x64, 0xa4, 0x0c, 0x3b, 0xe9, 0xf3,
0xf7, 0xc9, 0x42, 0xc5, 0x03, 0x18, 0xdb, 0x94, 0x29, 0x31, 0xb9, 0x6d, 0x98, 0xac, 0xe2, 0x5b,
0x23, 0x05, 0x7a, 0xaf, 0x4f, 0x17, 0xf8, 0xab, 0x85, 0x4a, 0xe9, 0x8c, 0x0e, 0xeb, 0x33, 0x30,
0xbb, 0xd3, 0x62, 0xe5, 0x1a, 0x56, 0x1b, 0x64, 0x7d, 0x3c, 0x2b, 0xc3, 0xe3, 0x22, 0xd3, 0xea,
0x0d, 0x2a, 0xed, 0x41, 0x13, 0x14, 0x8c, 0x53, 0xcb, 0xbe, 0xea, 0xee, 0x4d, 0x48, 0x26, 0xc0,
0xbd, 0x49, 0x02, 0xec, 0x3e, 0xfe, 0x71, 0x59, 0xb5, 0x7e, 0x5e, 0x56, 0xad, 0x3f, 0x97, 0x55,
0xeb, 0xf5, 0xe6, 0xa4, 0x7f, 0xe1, 0xd0, 0xff, 0xfa, 0xac, 0x64, 0x7e, 0x7b, 0x0f, 0xff, 0x05,
0x00, 0x00, 0xff, 0xff, 0xb9, 0x5d, 0xa7, 0x8a, 0xcb, 0x07, 0x00, 0x00,
// 721 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0x4d, 0x6f, 0xd3, 0x4c,
0x10, 0x96, 0x93, 0x36, 0x7a, 0xbb, 0xa9, 0xfa, 0xb6, 0xfb, 0xf6, 0xad, 0x2c, 0x93, 0xa6, 0xd5,
0x56, 0x48, 0xe5, 0xa3, 0x36, 0x0d, 0x1c, 0xaa, 0x72, 0xa2, 0xb4, 0xaa, 0xaa, 0x72, 0x00, 0x57,
0x45, 0x82, 0x03, 0x95, 0xeb, 0x8c, 0x5c, 0x93, 0x64, 0x77, 0xd9, 0xdd, 0x58, 0x8a, 0x50, 0x2f,
0x1c, 0x10, 0x67, 0xb8, 0x73, 0xe7, 0x3f, 0xf0, 0x03, 0x38, 0x22, 0x71, 0xe0, 0x8a, 0x2a, 0x7e,
0x08, 0xda, 0xb5, 0x93, 0x38, 0xcd, 0xc7, 0x29, 0xe2, 0x36, 0x3b, 0xfb, 0xcc, 0xcc, 0xe3, 0x67,
0x66, 0xd6, 0x88, 0x48, 0x10, 0x09, 0x08, 0x4f, 0x00, 0x67, 0x32, 0x56, 0x4c, 0x74, 0x72, 0xa6,
0xcb, 0x05, 0x53, 0x0c, 0xa3, 0xbe, 0xc7, 0x59, 0x8e, 0x58, 0xc4, 0x8c, 0xdb, 0xd3, 0x56, 0x8a,
0x70, 0x2a, 0x11, 0x63, 0x51, 0x13, 0xbc, 0x80, 0xc7, 0x5e, 0x40, 0x29, 0x53, 0x81, 0x8a, 0x19,
0x95, 0xd9, 0x2d, 0x69, 0xec, 0x48, 0x37, 0x66, 0xe6, 0x36, 0x64, 0x02, 0xbc, 0x64, 0xdb, 0x8b,
0x80, 0x82, 0x08, 0x14, 0xd4, 0x33, 0xcc, 0x51, 0x14, 0xab, 0x8b, 0xf6, 0xb9, 0x1b, 0xb2, 0x96,
0x17, 0x08, 0x53, 0xe2, 0xb5, 0x31, 0xb6, 0xc2, 0xba, 0xc7, 0x1b, 0x91, 0x0e, 0x96, 0x5e, 0xc0,
0x79, 0x33, 0x0e, 0x4d, 0x72, 0x2f, 0xd9, 0x0e, 0x9a, 0xfc, 0x22, 0x18, 0x4a, 0x45, 0xf6, 0xd0,
0xa2, 0x0f, 0x9c, 0x1d, 0x4b, 0x46, 0x29, 0xa8, 0x67, 0x6d, 0x10, 0x1d, 0x8c, 0xd1, 0x8c, 0xfe,
0x08, 0xdb, 0x5a, 0xb7, 0x36, 0xe7, 0x7c, 0x63, 0x63, 0x07, 0xfd, 0x23, 0x20, 0x89, 0x65, 0xcc,
0xa8, 0x5d, 0x30, 0xfe, 0xde, 0x99, 0x1c, 0xa2, 0xff, 0x72, 0x39, 0x7c, 0x90, 0x9c, 0x51, 0x09,
0xf8, 0x1e, 0x9a, 0x8d, 0x15, 0xb4, 0xa4, 0x6d, 0xad, 0x17, 0x37, 0xcb, 0x35, 0xc7, 0xcd, 0x69,
0x95, 0x61, 0x1f, 0x71, 0x7e, 0xc2, 0x21, 0xf4, 0x53, 0x20, 0xf9, 0x69, 0xa1, 0x85, 0xc1, 0x1b,
0xcd, 0x85, 0x06, 0x2d, 0xe8, 0x72, 0xd1, 0x36, 0x7e, 0x8a, 0xe6, 0x81, 0x26, 0xb1, 0x60, 0xb4,
0x05, 0x54, 0x49, 0xbb, 0x60, 0xf2, 0xdf, 0x1d, 0x9f, 0xdf, 0x3d, 0xc8, 0xc1, 0x0f, 0xa8, 0x12,
0x1d, 0x7f, 0x20, 0x83, 0x73, 0x86, 0x96, 0x86, 0x20, 0x78, 0x11, 0x15, 0x1b, 0xd0, 0xc9, 0x2a,
0x6b, 0x13, 0x3f, 0x40, 0xb3, 0x49, 0xd0, 0x6c, 0x83, 0x51, 0xa0, 0x5c, 0xab, 0x8e, 0xa8, 0x98,
0x4b, 0xe3, 0xa7, 0xe0, 0xdd, 0xc2, 0x8e, 0x45, 0xbe, 0x58, 0x08, 0x0f, 0x23, 0x46, 0x7e, 0x5d,
0x15, 0xa1, 0xc6, 0x8e, 0x7c, 0x0e, 0x22, 0xa7, 0x75, 0xce, 0xa3, 0x63, 0x78, 0xa0, 0x2e, 0xec,
0x62, 0x1a, 0xa3, 0x6d, 0x7c, 0x8c, 0xca, 0x75, 0x90, 0x2a, 0xa6, 0xa6, 0xdb, 0xf6, 0x8c, 0xa1,
0x77, 0x6b, 0x32, 0xbd, 0xfd, 0x7e, 0x80, 0x9f, 0x8f, 0x26, 0xa7, 0x68, 0x75, 0x22, 0x1a, 0xaf,
0xa0, 0x52, 0xba, 0x08, 0x19, 0xef, 0xec, 0x84, 0x2b, 0x68, 0x4e, 0x7f, 0x81, 0xe4, 0x41, 0x08,
0x19, 0xf1, 0xbe, 0x83, 0xac, 0xa1, 0x39, 0x3d, 0x25, 0x63, 0x47, 0x8c, 0x2c, 0xa0, 0x79, 0x0d,
0xe8, 0xce, 0x0f, 0xa1, 0x68, 0x49, 0x9f, 0x1f, 0x0b, 0x08, 0x14, 0xf8, 0xf0, 0xa6, 0x0d, 0x52,
0xe1, 0x17, 0xb9, 0xc0, 0x72, 0xed, 0xc0, 0xed, 0x6f, 0x82, 0xdb, 0xdd, 0x04, 0x63, 0x9c, 0x85,
0x75, 0x97, 0x37, 0x22, 0x57, 0x6f, 0x82, 0x9b, 0xdb, 0x04, 0xb7, 0xbb, 0x09, 0xae, 0xdf, 0x13,
0x27, 0xab, 0x9f, 0xd5, 0x3b, 0xe5, 0xf5, 0xbf, 0x52, 0xaf, 0xf6, 0xb5, 0x94, 0x16, 0x4c, 0x9d,
0x27, 0x20, 0x92, 0x38, 0x04, 0xfc, 0xde, 0x42, 0x33, 0x4f, 0x62, 0xa9, 0xf0, 0xff, 0xf9, 0xf6,
0xf5, 0x94, 0x73, 0x8e, 0xa6, 0x42, 0x41, 0x57, 0x20, 0x95, 0x77, 0x3f, 0x7e, 0x7f, 0x2a, 0xac,
0xe0, 0x65, 0xf3, 0xd8, 0x24, 0xdb, 0xfd, 0xc7, 0x2c, 0x06, 0x89, 0x2f, 0xd1, 0xbf, 0x1a, 0xd5,
0xdf, 0x24, 0x89, 0x2b, 0xd7, 0x29, 0xe5, 0x9f, 0x0d, 0x67, 0x6d, 0xcc, 0x6d, 0xaf, 0xa1, 0x77,
0x4c, 0xbd, 0x9b, 0x78, 0x63, 0x54, 0x3d, 0xef, 0xad, 0x3e, 0x5d, 0x7a, 0x8d, 0x34, 0x08, 0x7f,
0xb4, 0x50, 0x29, 0x6d, 0x3d, 0x5e, 0xbd, 0x9e, 0x78, 0x60, 0x24, 0x9c, 0xe9, 0x34, 0x85, 0x10,
0xc3, 0xae, 0x42, 0x46, 0xaa, 0xb1, 0x9b, 0xbe, 0x82, 0x1f, 0x2c, 0x54, 0x3c, 0x84, 0xb1, 0xbd,
0x99, 0x12, 0x93, 0x0d, 0xc3, 0x64, 0x15, 0xdf, 0x98, 0xa0, 0x13, 0xfe, 0x6c, 0xa1, 0x52, 0x3a,
0xaa, 0xc3, 0xfa, 0x0c, 0x8c, 0xf0, 0xb4, 0x58, 0xb9, 0x86, 0xd5, 0x26, 0x59, 0x1f, 0xcf, 0xca,
0xf0, 0xb8, 0xcc, 0xb4, 0x7a, 0x85, 0x4a, 0xfb, 0xd0, 0x04, 0x05, 0xe3, 0xd4, 0xb2, 0xaf, 0xbb,
0x7b, 0x83, 0x92, 0x09, 0x70, 0x7b, 0x92, 0x00, 0x7b, 0x0f, 0xbf, 0x5d, 0x55, 0xad, 0xef, 0x57,
0x55, 0xeb, 0xd7, 0x55, 0xd5, 0x7a, 0xb9, 0x35, 0xe9, 0x97, 0x38, 0xf4, 0xdb, 0x3e, 0x2f, 0x99,
0xbf, 0xdf, 0xfd, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xe4, 0x1c, 0x99, 0xd2, 0xd2, 0x07, 0x00,
0x00,
}

View file

@ -46,13 +46,31 @@ func request_RepositoryService_List_0(ctx context.Context, marshaler runtime.Mar
}
var (
filter_RepositoryService_ListKsonnetApps_0 = &utilities.DoubleArray{Encoding: map[string]int{}, Base: []int(nil), Check: []int(nil)}
filter_RepositoryService_ListKsonnetApps_0 = &utilities.DoubleArray{Encoding: map[string]int{"repo": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}}
)
func request_RepositoryService_ListKsonnetApps_0(ctx context.Context, marshaler runtime.Marshaler, client RepositoryServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
var protoReq RepoKsonnetQuery
var metadata runtime.ServerMetadata
var (
val string
ok bool
err error
_ = err
)
val, ok = pathParams["repo"]
if !ok {
return nil, metadata, status.Errorf(codes.InvalidArgument, "missing parameter %s", "repo")
}
protoReq.Repo, err = runtime.String(val)
if err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "repo", err)
}
if err := runtime.PopulateQueryParameters(&protoReq, req.URL.Query(), filter_RepositoryService_ListKsonnetApps_0); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@ -66,7 +84,7 @@ func request_RepositoryService_Create_0(ctx context.Context, marshaler runtime.M
var protoReq RepoCreateRequest
var metadata runtime.ServerMetadata
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Repo); err != nil && err != io.EOF {
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Repo); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@ -106,7 +124,7 @@ func request_RepositoryService_Update_0(ctx context.Context, marshaler runtime.M
var protoReq RepoUpdateRequest
var metadata runtime.ServerMetadata
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Repo); err != nil && err != io.EOF {
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq.Repo); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}
@ -378,7 +396,7 @@ func RegisterRepositoryServiceHandlerClient(ctx context.Context, mux *runtime.Se
var (
pattern_RepositoryService_List_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"api", "v1", "repositories"}, ""))
pattern_RepositoryService_ListKsonnetApps_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"api", "v1", "repositories", "ksonnet"}, ""))
pattern_RepositoryService_ListKsonnetApps_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 1, 0, 4, 1, 5, 3, 2, 4}, []string{"api", "v1", "repositories", "repo", "ksonnet"}, ""))
pattern_RepositoryService_Create_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2}, []string{"api", "v1", "repositories"}, ""))

View file

@ -72,7 +72,7 @@ service RepositoryService {
// ListKsonnetApps returns list of Ksonnet apps in the repo
rpc ListKsonnetApps(RepoKsonnetQuery) returns (RepoKsonnetResponse) {
option (google.api.http).get = "/api/v1/repositories/ksonnet";
option (google.api.http).get = "/api/v1/repositories/{repo}/ksonnet";
}
// Create creates a repo

View file

@ -6,6 +6,7 @@ import (
"fmt"
"net"
"net/http"
"net/url"
"strings"
"time"
@ -277,6 +278,7 @@ func (a *ArgoCDServer) newGRPCServer() *grpc.Server {
grpc_util.PanicLoggerStreamServerInterceptor(a.log),
)))
sOpts = append(sOpts, grpc.UnaryInterceptor(grpc_middleware.ChainUnaryServer(
bug21955WorkaroundInterceptor,
grpc_logrus.UnaryServerInterceptor(a.log),
grpc_auth.UnaryServerInterceptor(a.authenticate),
grpc_util.ErrorCodeUnaryServerInterceptor(),
@ -322,7 +324,7 @@ func (a *ArgoCDServer) newHTTPServer(ctx context.Context, port int) *http.Server
mux := http.NewServeMux()
httpS := http.Server{
Addr: endpoint,
Handler: mux,
Handler: &bug21955Workaround{handler: mux},
}
var dOpts []grpc.DialOption
if a.useTLS() {
@ -469,3 +471,65 @@ func getToken(md metadata.MD) string {
}
return ""
}
// Workaround for https://github.com/golang/go/issues/21955 to support escaped URLs in URL path.
type bug21955Workaround struct {
handler http.Handler
}
func (bf *bug21955Workaround) ServeHTTP(w http.ResponseWriter, r *http.Request) {
paths := map[string][]string{
"/api/v1/repositories/": {"ksonnet"},
"/api/v1/clusters/": {},
}
for path, subPaths := range paths {
if strings.Index(r.URL.Path, path) > -1 {
postfix := ""
for _, subPath := range subPaths {
if strings.LastIndex(r.URL.Path, subPath) == len(r.URL.Path)-len(subPath) {
postfix = "/" + subPath
r.URL.Path = r.URL.Path[0 : len(r.URL.Path)-len(subPath)-1]
break
}
}
r.URL.Path = path + url.QueryEscape(r.URL.Path[len(path):]) + postfix
break
}
}
bf.handler.ServeHTTP(w, r)
}
func bug21955WorkaroundInterceptor(ctx context.Context, req interface{}, _ *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (resp interface{}, err error) {
if rq, ok := req.(*repository.RepoQuery); ok {
repo, err := url.QueryUnescape(rq.Repo)
if err != nil {
return nil, err
}
rq.Repo = repo
} else if rk, ok := req.(*repository.RepoKsonnetQuery); ok {
repo, err := url.QueryUnescape(rk.Repo)
if err != nil {
return nil, err
}
rk.Repo = repo
} else if ru, ok := req.(*repository.RepoUpdateRequest); ok {
repo, err := url.QueryUnescape(ru.Repo.Repo)
if err != nil {
return nil, err
}
ru.Repo.Repo = repo
} else if cq, ok := req.(*cluster.ClusterQuery); ok {
server, err := url.QueryUnescape(cq.Server)
if err != nil {
return nil, err
}
cq.Server = server
} else if cu, ok := req.(*cluster.ClusterUpdateRequest); ok {
server, err := url.QueryUnescape(cu.Cluster.Server)
if err != nil {
return nil, err
}
cu.Cluster.Server = server
}
return handler(ctx, req)
}

View file

@ -32,7 +32,7 @@ func request_SessionService_Create_0(ctx context.Context, marshaler runtime.Mars
var protoReq SessionCreateRequest
var metadata runtime.ServerMetadata
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil && err != io.EOF {
if err := marshaler.NewDecoder(req.Body).Decode(&protoReq); err != nil {
return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
}