From 31082eed2769799acbc1974ed47066380b757ca2 Mon Sep 17 00:00:00 2001 From: Eric Chiang Date: Fri, 5 Aug 2016 09:59:29 -0700 Subject: [PATCH] *: remove api and clt It's not clear that the best way to manage clients is through a gRPC based command line tool. For example we may explore an admin dashboard and enable bootstrapping through static clients. For now use static clients while we hold off on a more concrete proposal. --- Makefile | 9 +- api/api.go | 136 ------------- api/apipb/api.pb.go | 443 ----------------------------------------- api/apipb/api.proto | 74 ------- api/doc.go | 2 - cmd/pokectl/pokectl.go | 24 --- glide.yaml | 26 +-- 7 files changed, 6 insertions(+), 708 deletions(-) delete mode 100644 api/api.go delete mode 100644 api/apipb/api.pb.go delete mode 100644 api/apipb/api.proto delete mode 100644 api/doc.go delete mode 100644 cmd/pokectl/pokectl.go diff --git a/Makefile b/Makefile index 43620c59..323aed44 100644 --- a/Makefile +++ b/Makefile @@ -46,13 +46,6 @@ lint: golint $$package; \ done -# TODO(ericchiang): Grab protoc as well. -grpc: bin/protoc-gen-go - @protoc --go_out=plugins=grpc:. ./api/apipb/*.proto - -bin/protoc-gen-go: - @go install ${REPO_PATH}/vendor/github.com/golang/protobuf/protoc-gen-go - clean: @rm bin/* @@ -60,4 +53,4 @@ testall: testrace vet fmt lint FORCE: -.PHONY: test testrace vet fmt lint testall grpc +.PHONY: test testrace vet fmt lint testall diff --git a/api/api.go b/api/api.go deleted file mode 100644 index b9f5c4dc..00000000 --- a/api/api.go +++ /dev/null @@ -1,136 +0,0 @@ -package api - -import ( - "errors" - - "golang.org/x/net/context" - - "github.com/coreos/poke/api/apipb" - "github.com/coreos/poke/storage" -) - -// NewServer returns a gRPC server for talking to a storage. -func NewServer(s storage.Storage) apipb.StorageServer { - return &server{s} -} - -type server struct { - storage storage.Storage -} - -func fromPBClient(client *apipb.Client) storage.Client { - return storage.Client{ - ID: client.Id, - Secret: client.Secret, - RedirectURIs: client.RedirectUris, - TrustedPeers: client.TrustedPeers, - Public: client.Public, - Name: client.Name, - LogoURL: client.LogoUrl, - } -} - -func toPBClient(client storage.Client) *apipb.Client { - return &apipb.Client{ - Id: client.ID, - Secret: client.Secret, - RedirectUris: client.RedirectURIs, - TrustedPeers: client.TrustedPeers, - Public: client.Public, - Name: client.Name, - LogoUrl: client.LogoURL, - } -} - -func (s *server) CreateClient(ctx context.Context, req *apipb.CreateClientReq) (*apipb.CreateClientResp, error) { - // TODO(ericchiang): Create a more centralized strategy for creating client IDs - // and secrets which are restricted based on the storage. - client := fromPBClient(req.Client) - if client.ID == "" { - client.ID = storage.NewID() - } - if client.Secret == "" { - client.Secret = storage.NewID() + storage.NewID() - } - - if err := s.storage.CreateClient(client); err != nil { - return nil, err - } - return &apipb.CreateClientResp{Client: toPBClient(client)}, nil -} - -func (s *server) UpdateClient(ctx context.Context, req *apipb.UpdateClientReq) (*apipb.UpdateClientResp, error) { - switch { - case req.Id == "": - return nil, errors.New("no ID supplied") - case req.MakePublic && req.MakePrivate: - return nil, errors.New("cannot both make public and private") - case req.MakePublic && len(req.RedirectUris) != 0: - return nil, errors.New("redirect uris supplied for a public client") - } - - var client *storage.Client - updater := func(old storage.Client) (storage.Client, error) { - if req.MakePublic { - old.Public = true - } - if req.MakePrivate { - old.Public = false - } - if req.Secret != "" { - old.Secret = req.Secret - } - if req.Name != "" { - old.Name = req.Name - } - if req.LogoUrl != "" { - old.LogoURL = req.LogoUrl - } - if len(req.RedirectUris) != 0 { - if old.Public { - return old, errors.New("public clients cannot have redirect URIs") - } - old.RedirectURIs = req.RedirectUris - } - client = &old - return old, nil - } - - if err := s.storage.UpdateClient(req.Id, updater); err != nil { - return nil, err - } - return &apipb.UpdateClientResp{Client: toPBClient(*client)}, nil -} - -func (s *server) DeleteClient(ctx context.Context, req *apipb.DeleteClientReq) (*apipb.DeleteClientReq, error) { - if req.Id == "" { - return nil, errors.New("no client ID supplied") - } - if err := s.storage.DeleteClient(req.Id); err != nil { - return nil, err - } - return &apipb.DeleteClientReq{}, nil -} - -func (s *server) ListClients(ctx context.Context, req *apipb.ListClientsReq) (*apipb.ListClientsResp, error) { - clients, err := s.storage.ListClients() - if err != nil { - return nil, err - } - resp := make([]*apipb.Client, len(clients)) - for i, client := range clients { - resp[i] = toPBClient(client) - } - return &apipb.ListClientsResp{Clients: resp}, nil -} - -func (s *server) GetClient(ctx context.Context, req *apipb.GetClientReq) (*apipb.GetClientResp, error) { - if req.Id == "" { - return nil, errors.New("no client ID supplied") - } - client, err := s.storage.GetClient(req.Id) - if err != nil { - return nil, err - } - return &apipb.GetClientResp{Client: toPBClient(client)}, nil -} diff --git a/api/apipb/api.pb.go b/api/apipb/api.pb.go deleted file mode 100644 index 4d15b33e..00000000 --- a/api/apipb/api.pb.go +++ /dev/null @@ -1,443 +0,0 @@ -// Code generated by protoc-gen-go. -// source: api/apipb/api.proto -// DO NOT EDIT! - -/* -Package apipb is a generated protocol buffer package. - -It is generated from these files: - api/apipb/api.proto - -It has these top-level messages: - Client - CreateClientReq - CreateClientResp - UpdateClientReq - UpdateClientResp - ListClientsReq - ListClientsResp - DeleteClientReq - DeleteClientResp - GetClientReq - GetClientResp -*/ -package apipb - -import proto "github.com/golang/protobuf/proto" -import fmt "fmt" -import math "math" - -import ( - context "golang.org/x/net/context" - grpc "google.golang.org/grpc" -) - -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package - -type Client struct { - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` - Secret string `protobuf:"bytes,2,opt,name=secret" json:"secret,omitempty"` - RedirectUris []string `protobuf:"bytes,3,rep,name=redirect_uris,json=redirectUris" json:"redirect_uris,omitempty"` - TrustedPeers []string `protobuf:"bytes,4,rep,name=trusted_peers,json=trustedPeers" json:"trusted_peers,omitempty"` - Public bool `protobuf:"varint,5,opt,name=public" json:"public,omitempty"` - Name string `protobuf:"bytes,6,opt,name=name" json:"name,omitempty"` - LogoUrl string `protobuf:"bytes,7,opt,name=logo_url,json=logoUrl" json:"logo_url,omitempty"` -} - -func (m *Client) Reset() { *m = Client{} } -func (m *Client) String() string { return proto.CompactTextString(m) } -func (*Client) ProtoMessage() {} -func (*Client) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} } - -type CreateClientReq struct { - Client *Client `protobuf:"bytes,1,opt,name=client" json:"client,omitempty"` -} - -func (m *CreateClientReq) Reset() { *m = CreateClientReq{} } -func (m *CreateClientReq) String() string { return proto.CompactTextString(m) } -func (*CreateClientReq) ProtoMessage() {} -func (*CreateClientReq) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} } - -func (m *CreateClientReq) GetClient() *Client { - if m != nil { - return m.Client - } - return nil -} - -type CreateClientResp struct { - Client *Client `protobuf:"bytes,1,opt,name=client" json:"client,omitempty"` -} - -func (m *CreateClientResp) Reset() { *m = CreateClientResp{} } -func (m *CreateClientResp) String() string { return proto.CompactTextString(m) } -func (*CreateClientResp) ProtoMessage() {} -func (*CreateClientResp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} } - -func (m *CreateClientResp) GetClient() *Client { - if m != nil { - return m.Client - } - return nil -} - -type UpdateClientReq struct { - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` - // Empty strings indicate that string fields should not be updated. - Secret string `protobuf:"bytes,2,opt,name=secret" json:"secret,omitempty"` - Name string `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"` - LogoUrl string `protobuf:"bytes,4,opt,name=logo_url,json=logoUrl" json:"logo_url,omitempty"` - MakePublic bool `protobuf:"varint,5,opt,name=make_public,json=makePublic" json:"make_public,omitempty"` - MakePrivate bool `protobuf:"varint,6,opt,name=make_private,json=makePrivate" json:"make_private,omitempty"` - // If no redirect URIs are specified, the current redirect URIs are preserved. - RedirectUris []string `protobuf:"bytes,7,rep,name=redirect_uris,json=redirectUris" json:"redirect_uris,omitempty"` -} - -func (m *UpdateClientReq) Reset() { *m = UpdateClientReq{} } -func (m *UpdateClientReq) String() string { return proto.CompactTextString(m) } -func (*UpdateClientReq) ProtoMessage() {} -func (*UpdateClientReq) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} } - -type UpdateClientResp struct { - Client *Client `protobuf:"bytes,1,opt,name=client" json:"client,omitempty"` -} - -func (m *UpdateClientResp) Reset() { *m = UpdateClientResp{} } -func (m *UpdateClientResp) String() string { return proto.CompactTextString(m) } -func (*UpdateClientResp) ProtoMessage() {} -func (*UpdateClientResp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} } - -func (m *UpdateClientResp) GetClient() *Client { - if m != nil { - return m.Client - } - return nil -} - -type ListClientsReq struct { -} - -func (m *ListClientsReq) Reset() { *m = ListClientsReq{} } -func (m *ListClientsReq) String() string { return proto.CompactTextString(m) } -func (*ListClientsReq) ProtoMessage() {} -func (*ListClientsReq) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} } - -type ListClientsResp struct { - Clients []*Client `protobuf:"bytes,1,rep,name=clients" json:"clients,omitempty"` -} - -func (m *ListClientsResp) Reset() { *m = ListClientsResp{} } -func (m *ListClientsResp) String() string { return proto.CompactTextString(m) } -func (*ListClientsResp) ProtoMessage() {} -func (*ListClientsResp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} } - -func (m *ListClientsResp) GetClients() []*Client { - if m != nil { - return m.Clients - } - return nil -} - -type DeleteClientReq struct { - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` -} - -func (m *DeleteClientReq) Reset() { *m = DeleteClientReq{} } -func (m *DeleteClientReq) String() string { return proto.CompactTextString(m) } -func (*DeleteClientReq) ProtoMessage() {} -func (*DeleteClientReq) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} } - -type DeleteClientResp struct { -} - -func (m *DeleteClientResp) Reset() { *m = DeleteClientResp{} } -func (m *DeleteClientResp) String() string { return proto.CompactTextString(m) } -func (*DeleteClientResp) ProtoMessage() {} -func (*DeleteClientResp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} } - -type GetClientReq struct { - Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` -} - -func (m *GetClientReq) Reset() { *m = GetClientReq{} } -func (m *GetClientReq) String() string { return proto.CompactTextString(m) } -func (*GetClientReq) ProtoMessage() {} -func (*GetClientReq) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} } - -type GetClientResp struct { - Client *Client `protobuf:"bytes,1,opt,name=client" json:"client,omitempty"` -} - -func (m *GetClientResp) Reset() { *m = GetClientResp{} } -func (m *GetClientResp) String() string { return proto.CompactTextString(m) } -func (*GetClientResp) ProtoMessage() {} -func (*GetClientResp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} } - -func (m *GetClientResp) GetClient() *Client { - if m != nil { - return m.Client - } - return nil -} - -func init() { - proto.RegisterType((*Client)(nil), "apipb.Client") - proto.RegisterType((*CreateClientReq)(nil), "apipb.CreateClientReq") - proto.RegisterType((*CreateClientResp)(nil), "apipb.CreateClientResp") - proto.RegisterType((*UpdateClientReq)(nil), "apipb.UpdateClientReq") - proto.RegisterType((*UpdateClientResp)(nil), "apipb.UpdateClientResp") - proto.RegisterType((*ListClientsReq)(nil), "apipb.ListClientsReq") - proto.RegisterType((*ListClientsResp)(nil), "apipb.ListClientsResp") - proto.RegisterType((*DeleteClientReq)(nil), "apipb.DeleteClientReq") - proto.RegisterType((*DeleteClientResp)(nil), "apipb.DeleteClientResp") - proto.RegisterType((*GetClientReq)(nil), "apipb.GetClientReq") - proto.RegisterType((*GetClientResp)(nil), "apipb.GetClientResp") -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConn - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion3 - -// Client API for Storage service - -type StorageClient interface { - GetClient(ctx context.Context, in *GetClientReq, opts ...grpc.CallOption) (*GetClientResp, error) - CreateClient(ctx context.Context, in *CreateClientReq, opts ...grpc.CallOption) (*CreateClientResp, error) - UpdateClient(ctx context.Context, in *UpdateClientReq, opts ...grpc.CallOption) (*UpdateClientResp, error) - DeleteClient(ctx context.Context, in *DeleteClientReq, opts ...grpc.CallOption) (*DeleteClientReq, error) - ListClients(ctx context.Context, in *ListClientsReq, opts ...grpc.CallOption) (*ListClientsResp, error) -} - -type storageClient struct { - cc *grpc.ClientConn -} - -func NewStorageClient(cc *grpc.ClientConn) StorageClient { - return &storageClient{cc} -} - -func (c *storageClient) GetClient(ctx context.Context, in *GetClientReq, opts ...grpc.CallOption) (*GetClientResp, error) { - out := new(GetClientResp) - err := grpc.Invoke(ctx, "/apipb.Storage/GetClient", in, out, c.cc, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageClient) CreateClient(ctx context.Context, in *CreateClientReq, opts ...grpc.CallOption) (*CreateClientResp, error) { - out := new(CreateClientResp) - err := grpc.Invoke(ctx, "/apipb.Storage/CreateClient", in, out, c.cc, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageClient) UpdateClient(ctx context.Context, in *UpdateClientReq, opts ...grpc.CallOption) (*UpdateClientResp, error) { - out := new(UpdateClientResp) - err := grpc.Invoke(ctx, "/apipb.Storage/UpdateClient", in, out, c.cc, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageClient) DeleteClient(ctx context.Context, in *DeleteClientReq, opts ...grpc.CallOption) (*DeleteClientReq, error) { - out := new(DeleteClientReq) - err := grpc.Invoke(ctx, "/apipb.Storage/DeleteClient", in, out, c.cc, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageClient) ListClients(ctx context.Context, in *ListClientsReq, opts ...grpc.CallOption) (*ListClientsResp, error) { - out := new(ListClientsResp) - err := grpc.Invoke(ctx, "/apipb.Storage/ListClients", in, out, c.cc, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// Server API for Storage service - -type StorageServer interface { - GetClient(context.Context, *GetClientReq) (*GetClientResp, error) - CreateClient(context.Context, *CreateClientReq) (*CreateClientResp, error) - UpdateClient(context.Context, *UpdateClientReq) (*UpdateClientResp, error) - DeleteClient(context.Context, *DeleteClientReq) (*DeleteClientReq, error) - ListClients(context.Context, *ListClientsReq) (*ListClientsResp, error) -} - -func RegisterStorageServer(s *grpc.Server, srv StorageServer) { - s.RegisterService(&_Storage_serviceDesc, srv) -} - -func _Storage_GetClient_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetClientReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServer).GetClient(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/apipb.Storage/GetClient", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServer).GetClient(ctx, req.(*GetClientReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Storage_CreateClient_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateClientReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServer).CreateClient(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/apipb.Storage/CreateClient", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServer).CreateClient(ctx, req.(*CreateClientReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Storage_UpdateClient_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UpdateClientReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServer).UpdateClient(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/apipb.Storage/UpdateClient", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServer).UpdateClient(ctx, req.(*UpdateClientReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Storage_DeleteClient_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteClientReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServer).DeleteClient(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/apipb.Storage/DeleteClient", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServer).DeleteClient(ctx, req.(*DeleteClientReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Storage_ListClients_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListClientsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServer).ListClients(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/apipb.Storage/ListClients", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServer).ListClients(ctx, req.(*ListClientsReq)) - } - return interceptor(ctx, in, info, handler) -} - -var _Storage_serviceDesc = grpc.ServiceDesc{ - ServiceName: "apipb.Storage", - HandlerType: (*StorageServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "GetClient", - Handler: _Storage_GetClient_Handler, - }, - { - MethodName: "CreateClient", - Handler: _Storage_CreateClient_Handler, - }, - { - MethodName: "UpdateClient", - Handler: _Storage_UpdateClient_Handler, - }, - { - MethodName: "DeleteClient", - Handler: _Storage_DeleteClient_Handler, - }, - { - MethodName: "ListClients", - Handler: _Storage_ListClients_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: fileDescriptor0, -} - -func init() { proto.RegisterFile("api/apipb/api.proto", fileDescriptor0) } - -var fileDescriptor0 = []byte{ - // 459 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x8c, 0x54, 0x41, 0x8f, 0xd2, 0x40, - 0x14, 0xa6, 0xc0, 0xb6, 0xf0, 0x28, 0x0b, 0x79, 0xab, 0x6b, 0xe5, 0xa0, 0xec, 0x18, 0x23, 0x27, - 0x4c, 0xd6, 0xc4, 0xac, 0x1e, 0x8c, 0x66, 0x4d, 0xbc, 0x78, 0x20, 0x35, 0x9c, 0x49, 0xa1, 0x2f, - 0x9b, 0x89, 0xdd, 0xed, 0x30, 0x33, 0xf8, 0xff, 0x3c, 0x7b, 0xf2, 0x1f, 0x99, 0xce, 0xb4, 0x4d, - 0x07, 0x64, 0xc3, 0x85, 0xf0, 0xbe, 0xf9, 0xde, 0x7b, 0xf9, 0xbe, 0xef, 0xa5, 0x70, 0x91, 0x08, - 0xfe, 0x36, 0x11, 0x5c, 0xac, 0x8b, 0xdf, 0xb9, 0x90, 0xb9, 0xce, 0xf1, 0xcc, 0x00, 0xec, 0xb7, - 0x07, 0xfe, 0x6d, 0xc6, 0xe9, 0x41, 0xe3, 0x39, 0xb4, 0x79, 0x1a, 0x79, 0x53, 0x6f, 0xd6, 0x8f, - 0xdb, 0x3c, 0xc5, 0x4b, 0xf0, 0x15, 0x6d, 0x24, 0xe9, 0xa8, 0x6d, 0xb0, 0xb2, 0xc2, 0x57, 0x30, - 0x94, 0x94, 0x72, 0x49, 0x1b, 0xbd, 0xda, 0x49, 0xae, 0xa2, 0xce, 0xb4, 0x33, 0xeb, 0xc7, 0x61, - 0x05, 0x2e, 0x25, 0x57, 0x05, 0x49, 0xcb, 0x9d, 0xd2, 0x94, 0xae, 0x04, 0x91, 0x54, 0x51, 0xd7, - 0x92, 0x4a, 0x70, 0x51, 0x60, 0xc5, 0x06, 0xb1, 0x5b, 0x67, 0x7c, 0x13, 0x9d, 0x4d, 0xbd, 0x59, - 0x2f, 0x2e, 0x2b, 0x44, 0xe8, 0x3e, 0x24, 0xf7, 0x14, 0xf9, 0x66, 0xaf, 0xf9, 0x8f, 0xcf, 0xa1, - 0x97, 0xe5, 0x77, 0xf9, 0x6a, 0x27, 0xb3, 0x28, 0x30, 0x78, 0x50, 0xd4, 0x4b, 0x99, 0xb1, 0x1b, - 0x18, 0xdd, 0x4a, 0x4a, 0x34, 0x59, 0x21, 0x31, 0x6d, 0xf1, 0x35, 0xf8, 0x1b, 0x53, 0x18, 0x3d, - 0x83, 0xeb, 0xe1, 0xdc, 0xc8, 0x9d, 0x97, 0x8c, 0xf2, 0x91, 0x7d, 0x80, 0xb1, 0xdb, 0xa9, 0xc4, - 0xa9, 0xad, 0x7f, 0x3d, 0x18, 0x2d, 0x45, 0xea, 0x6c, 0x3d, 0xd5, 0xc1, 0x4a, 0x5f, 0xe7, 0x88, - 0xbe, 0xae, 0xa3, 0x0f, 0x5f, 0xc2, 0xe0, 0x3e, 0xf9, 0x49, 0x2b, 0xc7, 0x2b, 0x28, 0xa0, 0x85, - 0xf5, 0xeb, 0x0a, 0x42, 0x4b, 0x90, 0xfc, 0x57, 0xa2, 0xad, 0x6f, 0xbd, 0xd8, 0x34, 0x2d, 0x2c, - 0x74, 0x18, 0x5a, 0x70, 0x18, 0x5a, 0x61, 0x87, 0x2b, 0xe9, 0x74, 0x3b, 0xc6, 0x70, 0xfe, 0x9d, - 0x2b, 0x6d, 0x51, 0x15, 0xd3, 0x96, 0x7d, 0x84, 0x91, 0x83, 0x28, 0x81, 0x6f, 0x20, 0xb0, 0x74, - 0x15, 0x79, 0xd3, 0xce, 0xe1, 0xb0, 0xea, 0x95, 0x5d, 0xc1, 0xe8, 0x2b, 0x65, 0xf4, 0x88, 0xb7, - 0x0c, 0x61, 0xec, 0x52, 0x94, 0x60, 0x2f, 0x20, 0xfc, 0x46, 0xfa, 0x78, 0xcf, 0x7b, 0x18, 0x36, - 0xde, 0x4f, 0x16, 0x77, 0xfd, 0xa7, 0x0d, 0xc1, 0x0f, 0x9d, 0xcb, 0xe4, 0x8e, 0xf0, 0x06, 0xfa, - 0xf5, 0x0c, 0xbc, 0x28, 0xf9, 0xcd, 0xad, 0x93, 0x27, 0x87, 0xa0, 0x12, 0xac, 0x85, 0x5f, 0x20, - 0x6c, 0x1e, 0x1b, 0x5e, 0x56, 0xcb, 0xdc, 0xdb, 0x9d, 0x3c, 0xfb, 0x2f, 0x5e, 0x8d, 0x68, 0x06, - 0x54, 0x8f, 0xd8, 0x3b, 0xc4, 0x7a, 0xc4, 0x7e, 0x9a, 0xac, 0x85, 0x9f, 0x21, 0x6c, 0xfa, 0x56, - 0x8f, 0xd8, 0xf3, 0x7b, 0x72, 0x04, 0x67, 0x2d, 0xfc, 0x04, 0x83, 0x46, 0xb0, 0xf8, 0xb4, 0x24, - 0xba, 0xf1, 0xd7, 0xfd, 0x7b, 0x37, 0xc0, 0x5a, 0x6b, 0xdf, 0x7c, 0x80, 0xde, 0xfd, 0x0b, 0x00, - 0x00, 0xff, 0xff, 0x76, 0xa0, 0x50, 0x77, 0x97, 0x04, 0x00, 0x00, -} diff --git a/api/apipb/api.proto b/api/apipb/api.proto deleted file mode 100644 index 0930772a..00000000 --- a/api/apipb/api.proto +++ /dev/null @@ -1,74 +0,0 @@ -syntax = "proto3"; - -// Run `make grpc` at the top level directory to regenerate Go source code. - -package apipb; - -message Client { - string id = 1; - string secret = 2; - - repeated string redirect_uris = 3; - repeated string trusted_peers = 4; - - bool public = 5; - - string name = 6; - string logo_url = 7; -} - -message CreateClientReq { - Client client = 1; -} - -message CreateClientResp { - Client client = 1; -} - -message UpdateClientReq { - string id = 1; - - // Empty strings indicate that string fields should not be updated. - string secret = 2; - string name = 3; - string logo_url = 4; - - bool make_public = 5; - bool make_private = 6; - - // If no redirect URIs are specified, the current redirect URIs are preserved. - repeated string redirect_uris = 7; -} - -message UpdateClientResp { - Client client = 1; -} - -message ListClientsReq { -} - -message ListClientsResp { - repeated Client clients = 1; -} - -message DeleteClientReq { - string id = 1; -} - -message DeleteClientResp {} - -message GetClientReq { - string id = 1; -} - -message GetClientResp { - Client client = 1; -} - -service Storage { - rpc CreateClient(CreateClientReq) returns (CreateClientResp) {} - rpc DeleteClient(DeleteClientReq) returns (DeleteClientReq) {} - rpc GetClient(GetClientReq) returns (GetClientResp) {} - rpc ListClients(ListClientsReq) returns (ListClientsResp) {} - rpc UpdateClient(UpdateClientReq) returns (UpdateClientResp) {} -} diff --git a/api/doc.go b/api/doc.go deleted file mode 100644 index e91ea0aa..00000000 --- a/api/doc.go +++ /dev/null @@ -1,2 +0,0 @@ -// Package api implements a gRPC interface for interacting with a storage. -package api diff --git a/cmd/pokectl/pokectl.go b/cmd/pokectl/pokectl.go deleted file mode 100644 index 7832960d..00000000 --- a/cmd/pokectl/pokectl.go +++ /dev/null @@ -1,24 +0,0 @@ -package main - -import ( - "fmt" - "os" - - "github.com/spf13/cobra" -) - -var rootCmd = &cobra.Command{ - Use: "pokectl", - RunE: func(cmd *cobra.Command, args []string) error { - return nil - }, -} - -func init() {} - -func main() { - if err := rootCmd.Execute(); err != nil { - fmt.Fprintln(os.Stderr, err) - os.Exit(2) - } -} diff --git a/glide.yaml b/glide.yaml index 46fae0e5..14058f67 100644 --- a/glide.yaml +++ b/glide.yaml @@ -22,6 +22,11 @@ import: - cipher - json +- package: golang.org/x/net + version: 6a513affb38dc9788b449d59ffed099b8de18fa0 + subpackages: + - context + - package: gopkg.in/yaml.v2 version: a83829b6f1293c91addabc89d0571c246397bbf4 @@ -67,27 +72,6 @@ import: - package: github.com/mitchellh/go-homedir verison: 756f7b183b7ab78acdbbee5c7f392838ed459dda -- package: google.golang.org/grpc - version: v1.0.0 - subpackages: - - codes - - credentials - - grpclog - - internal - - metadata - - naming - - transport - - peer -- package: golang.org/x/net - version: 6a513affb38dc9788b449d59ffed099b8de18fa0 - subpackages: - - context # context is also imported directly by this repo. - - http2 - - http2/hpack - - trace - - lex/httplex - - internal/timeseries - - package: github.com/kylelemons/godebug subpackages: - diff