From 9fbac98b2d173fe1b30f18ac0487ff35b9627e3b Mon Sep 17 00:00:00 2001 From: Katrina Rogan Date: Tue, 10 Jan 2023 13:47:14 -0800 Subject: [PATCH] Add raw claims to user info response (#357) Signed-off-by: Katrina Rogan Signed-off-by: Katrina Rogan --- gen/pb-cpp/flyteidl/service/identity.pb.cc | 107 ++++++- gen/pb-cpp/flyteidl/service/identity.pb.h | 57 ++++ gen/pb-go/flyteidl/service/identity.pb.go | 64 ++-- .../flyteidl/service/identity.swagger.json | 70 +++++ gen/pb-java/flyteidl/service/Identity.java | 278 +++++++++++++++++- gen/pb-js/flyteidl.d.ts | 6 + gen/pb-js/flyteidl.js | 19 ++ .../flyteidl/service/identity_pb2.py | 15 +- .../flyteidl/service/identity_pb2.pyi | 9 +- protos/flyteidl/service/identity.proto | 4 + 10 files changed, 570 insertions(+), 59 deletions(-) diff --git a/gen/pb-cpp/flyteidl/service/identity.pb.cc b/gen/pb-cpp/flyteidl/service/identity.pb.cc index de42e3e52..3784a7fe5 100644 --- a/gen/pb-cpp/flyteidl/service/identity.pb.cc +++ b/gen/pb-cpp/flyteidl/service/identity.pb.cc @@ -16,6 +16,7 @@ // @@protoc_insertion_point(includes) #include +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fstruct_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto; namespace flyteidl { namespace service { class UserInfoRequestDefaultTypeInternal { @@ -53,8 +54,9 @@ static void InitDefaultsUserInfoResponse_flyteidl_2fservice_2fidentity_2eproto() ::flyteidl::service::UserInfoResponse::InitAsDefaultInstance(); } -::google::protobuf::internal::SCCInfo<0> scc_info_UserInfoResponse_flyteidl_2fservice_2fidentity_2eproto = - {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsUserInfoResponse_flyteidl_2fservice_2fidentity_2eproto}, {}}; +::google::protobuf::internal::SCCInfo<1> scc_info_UserInfoResponse_flyteidl_2fservice_2fidentity_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsUserInfoResponse_flyteidl_2fservice_2fidentity_2eproto}, { + &scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto.base,}}; void InitDefaults_flyteidl_2fservice_2fidentity_2eproto() { ::google::protobuf::internal::InitSCC(&scc_info_UserInfoRequest_flyteidl_2fservice_2fidentity_2eproto.base); @@ -83,6 +85,7 @@ const ::google::protobuf::uint32 TableStruct_flyteidl_2fservice_2fidentity_2epro PROTOBUF_FIELD_OFFSET(::flyteidl::service::UserInfoResponse, family_name_), PROTOBUF_FIELD_OFFSET(::flyteidl::service::UserInfoResponse, email_), PROTOBUF_FIELD_OFFSET(::flyteidl::service::UserInfoResponse, picture_), + PROTOBUF_FIELD_OFFSET(::flyteidl::service::UserInfoResponse, additional_claims_), }; static const ::google::protobuf::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { { 0, -1, sizeof(::flyteidl::service::UserInfoRequest)}, @@ -103,28 +106,31 @@ ::google::protobuf::internal::AssignDescriptorsTable assign_descriptors_table_fl const char descriptor_table_protodef_flyteidl_2fservice_2fidentity_2eproto[] = "\n\037flyteidl/service/identity.proto\022\020flyte" "idl.service\032\034google/api/annotations.prot" - "o\"\021\n\017UserInfoRequest\"\226\001\n\020UserInfoRespons" - "e\022\017\n\007subject\030\001 \001(\t\022\014\n\004name\030\002 \001(\t\022\032\n\022pref" - "erred_username\030\003 \001(\t\022\022\n\ngiven_name\030\004 \001(\t" - "\022\023\n\013family_name\030\005 \001(\t\022\r\n\005email\030\006 \001(\t\022\017\n\007" - "picture\030\007 \001(\t2q\n\017IdentityService\022^\n\010User" - "Info\022!.flyteidl.service.UserInfoRequest\032" - "\".flyteidl.service.UserInfoResponse\"\013\202\323\344" - "\223\002\005\022\003/meB9Z7github.com/flyteorg/flyteidl" - "/gen/pb-go/flyteidl/serviceb\006proto3" + "o\032\034google/protobuf/struct.proto\"\021\n\017UserI" + "nfoRequest\"\312\001\n\020UserInfoResponse\022\017\n\007subje" + "ct\030\001 \001(\t\022\014\n\004name\030\002 \001(\t\022\032\n\022preferred_user" + "name\030\003 \001(\t\022\022\n\ngiven_name\030\004 \001(\t\022\023\n\013family" + "_name\030\005 \001(\t\022\r\n\005email\030\006 \001(\t\022\017\n\007picture\030\007 " + "\001(\t\0222\n\021additional_claims\030\010 \001(\0132\027.google." + "protobuf.Struct2q\n\017IdentityService\022^\n\010Us" + "erInfo\022!.flyteidl.service.UserInfoReques" + "t\032\".flyteidl.service.UserInfoResponse\"\013\202" + "\323\344\223\002\005\022\003/meB9Z7github.com/flyteorg/flytei" + "dl/gen/pb-go/flyteidl/serviceb\006proto3" ; ::google::protobuf::internal::DescriptorTable descriptor_table_flyteidl_2fservice_2fidentity_2eproto = { false, InitDefaults_flyteidl_2fservice_2fidentity_2eproto, descriptor_table_protodef_flyteidl_2fservice_2fidentity_2eproto, - "flyteidl/service/identity.proto", &assign_descriptors_table_flyteidl_2fservice_2fidentity_2eproto, 435, + "flyteidl/service/identity.proto", &assign_descriptors_table_flyteidl_2fservice_2fidentity_2eproto, 517, }; void AddDescriptors_flyteidl_2fservice_2fidentity_2eproto() { - static constexpr ::google::protobuf::internal::InitFunc deps[1] = + static constexpr ::google::protobuf::internal::InitFunc deps[2] = { ::AddDescriptors_google_2fapi_2fannotations_2eproto, + ::AddDescriptors_google_2fprotobuf_2fstruct_2eproto, }; - ::google::protobuf::internal::AddDescriptors(&descriptor_table_flyteidl_2fservice_2fidentity_2eproto, deps, 1); + ::google::protobuf::internal::AddDescriptors(&descriptor_table_flyteidl_2fservice_2fidentity_2eproto, deps, 2); } // Force running AddDescriptors() at dynamic initialization time. @@ -344,11 +350,24 @@ ::google::protobuf::Metadata UserInfoRequest::GetMetadata() const { // =================================================================== void UserInfoResponse::InitAsDefaultInstance() { + ::flyteidl::service::_UserInfoResponse_default_instance_._instance.get_mutable()->additional_claims_ = const_cast< ::google::protobuf::Struct*>( + ::google::protobuf::Struct::internal_default_instance()); } class UserInfoResponse::HasBitSetters { public: + static const ::google::protobuf::Struct& additional_claims(const UserInfoResponse* msg); }; +const ::google::protobuf::Struct& +UserInfoResponse::HasBitSetters::additional_claims(const UserInfoResponse* msg) { + return *msg->additional_claims_; +} +void UserInfoResponse::clear_additional_claims() { + if (GetArenaNoVirtual() == nullptr && additional_claims_ != nullptr) { + delete additional_claims_; + } + additional_claims_ = nullptr; +} #if !defined(_MSC_VER) || _MSC_VER >= 1900 const int UserInfoResponse::kSubjectFieldNumber; const int UserInfoResponse::kNameFieldNumber; @@ -357,6 +376,7 @@ const int UserInfoResponse::kGivenNameFieldNumber; const int UserInfoResponse::kFamilyNameFieldNumber; const int UserInfoResponse::kEmailFieldNumber; const int UserInfoResponse::kPictureFieldNumber; +const int UserInfoResponse::kAdditionalClaimsFieldNumber; #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 UserInfoResponse::UserInfoResponse() @@ -396,6 +416,11 @@ UserInfoResponse::UserInfoResponse(const UserInfoResponse& from) if (from.picture().size() > 0) { picture_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.picture_); } + if (from.has_additional_claims()) { + additional_claims_ = new ::google::protobuf::Struct(*from.additional_claims_); + } else { + additional_claims_ = nullptr; + } // @@protoc_insertion_point(copy_constructor:flyteidl.service.UserInfoResponse) } @@ -409,6 +434,7 @@ void UserInfoResponse::SharedCtor() { family_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); email_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); picture_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + additional_claims_ = nullptr; } UserInfoResponse::~UserInfoResponse() { @@ -424,6 +450,7 @@ void UserInfoResponse::SharedDtor() { family_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); email_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); picture_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (this != internal_default_instance()) delete additional_claims_; } void UserInfoResponse::SetCachedSize(int size) const { @@ -448,6 +475,10 @@ void UserInfoResponse::Clear() { family_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); email_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); picture_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (GetArenaNoVirtual() == nullptr && additional_claims_ != nullptr) { + delete additional_claims_; + } + additional_claims_ = nullptr; _internal_metadata_.Clear(); } @@ -576,6 +607,19 @@ const char* UserInfoResponse::_InternalParse(const char* begin, const char* end, ptr += size; break; } + // .google.protobuf.Struct additional_claims = 8; + case 8: { + if (static_cast<::google::protobuf::uint8>(tag) != 66) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::google::protobuf::Struct::_InternalParse; + object = msg->mutable_additional_claims(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + break; + } default: { handle_unusual: if ((tag & 7) == 4 || tag == 0) { @@ -715,6 +759,17 @@ bool UserInfoResponse::MergePartialFromCodedStream( break; } + // .google.protobuf.Struct additional_claims = 8; + case 8: { + if (static_cast< ::google::protobuf::uint8>(tag) == (66 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_additional_claims())); + } else { + goto handle_unusual; + } + break; + } + default: { handle_unusual: if (tag == 0) { @@ -812,6 +867,12 @@ void UserInfoResponse::SerializeWithCachedSizes( 7, this->picture(), output); } + // .google.protobuf.Struct additional_claims = 8; + if (this->has_additional_claims()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 8, HasBitSetters::additional_claims(this), output); + } + if (_internal_metadata_.have_unknown_fields()) { ::google::protobuf::internal::WireFormat::SerializeUnknownFields( _internal_metadata_.unknown_fields(), output); @@ -902,6 +963,13 @@ ::google::protobuf::uint8* UserInfoResponse::InternalSerializeWithCachedSizesToA 7, this->picture(), target); } + // .google.protobuf.Struct additional_claims = 8; + if (this->has_additional_claims()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 8, HasBitSetters::additional_claims(this), target); + } + if (_internal_metadata_.have_unknown_fields()) { target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields(), target); @@ -972,6 +1040,13 @@ size_t UserInfoResponse::ByteSizeLong() const { this->picture()); } + // .google.protobuf.Struct additional_claims = 8; + if (this->has_additional_claims()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *additional_claims_); + } + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); SetCachedSize(cached_size); return total_size; @@ -1027,6 +1102,9 @@ void UserInfoResponse::MergeFrom(const UserInfoResponse& from) { picture_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.picture_); } + if (from.has_additional_claims()) { + mutable_additional_claims()->::google::protobuf::Struct::MergeFrom(from.additional_claims()); + } } void UserInfoResponse::CopyFrom(const ::google::protobuf::Message& from) { @@ -1068,6 +1146,7 @@ void UserInfoResponse::InternalSwap(UserInfoResponse* other) { GetArenaNoVirtual()); picture_.Swap(&other->picture_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaNoVirtual()); + swap(additional_claims_, other->additional_claims_); } ::google::protobuf::Metadata UserInfoResponse::GetMetadata() const { diff --git a/gen/pb-cpp/flyteidl/service/identity.pb.h b/gen/pb-cpp/flyteidl/service/identity.pb.h index 1c4c689f7..6e7d6946c 100644 --- a/gen/pb-cpp/flyteidl/service/identity.pb.h +++ b/gen/pb-cpp/flyteidl/service/identity.pb.h @@ -32,6 +32,7 @@ #include // IWYU pragma: export #include #include "google/api/annotations.pb.h" +#include // @@protoc_insertion_point(includes) #include #define PROTOBUF_INTERNAL_EXPORT_flyteidl_2fservice_2fidentity_2eproto @@ -368,6 +369,15 @@ class UserInfoResponse final : ::std::string* release_picture(); void set_allocated_picture(::std::string* picture); + // .google.protobuf.Struct additional_claims = 8; + bool has_additional_claims() const; + void clear_additional_claims(); + static const int kAdditionalClaimsFieldNumber = 8; + const ::google::protobuf::Struct& additional_claims() const; + ::google::protobuf::Struct* release_additional_claims(); + ::google::protobuf::Struct* mutable_additional_claims(); + void set_allocated_additional_claims(::google::protobuf::Struct* additional_claims); + // @@protoc_insertion_point(class_scope:flyteidl.service.UserInfoResponse) private: class HasBitSetters; @@ -380,6 +390,7 @@ class UserInfoResponse final : ::google::protobuf::internal::ArenaStringPtr family_name_; ::google::protobuf::internal::ArenaStringPtr email_; ::google::protobuf::internal::ArenaStringPtr picture_; + ::google::protobuf::Struct* additional_claims_; mutable ::google::protobuf::internal::CachedSize _cached_size_; friend struct ::TableStruct_flyteidl_2fservice_2fidentity_2eproto; }; @@ -769,6 +780,52 @@ inline void UserInfoResponse::set_allocated_picture(::std::string* picture) { // @@protoc_insertion_point(field_set_allocated:flyteidl.service.UserInfoResponse.picture) } +// .google.protobuf.Struct additional_claims = 8; +inline bool UserInfoResponse::has_additional_claims() const { + return this != internal_default_instance() && additional_claims_ != nullptr; +} +inline const ::google::protobuf::Struct& UserInfoResponse::additional_claims() const { + const ::google::protobuf::Struct* p = additional_claims_; + // @@protoc_insertion_point(field_get:flyteidl.service.UserInfoResponse.additional_claims) + return p != nullptr ? *p : *reinterpret_cast( + &::google::protobuf::_Struct_default_instance_); +} +inline ::google::protobuf::Struct* UserInfoResponse::release_additional_claims() { + // @@protoc_insertion_point(field_release:flyteidl.service.UserInfoResponse.additional_claims) + + ::google::protobuf::Struct* temp = additional_claims_; + additional_claims_ = nullptr; + return temp; +} +inline ::google::protobuf::Struct* UserInfoResponse::mutable_additional_claims() { + + if (additional_claims_ == nullptr) { + auto* p = CreateMaybeMessage<::google::protobuf::Struct>(GetArenaNoVirtual()); + additional_claims_ = p; + } + // @@protoc_insertion_point(field_mutable:flyteidl.service.UserInfoResponse.additional_claims) + return additional_claims_; +} +inline void UserInfoResponse::set_allocated_additional_claims(::google::protobuf::Struct* additional_claims) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::google::protobuf::MessageLite*>(additional_claims_); + } + if (additional_claims) { + ::google::protobuf::Arena* submessage_arena = + reinterpret_cast<::google::protobuf::MessageLite*>(additional_claims)->GetArena(); + if (message_arena != submessage_arena) { + additional_claims = ::google::protobuf::internal::GetOwnedMessage( + message_arena, additional_claims, submessage_arena); + } + + } else { + + } + additional_claims_ = additional_claims; + // @@protoc_insertion_point(field_set_allocated:flyteidl.service.UserInfoResponse.additional_claims) +} + #ifdef __GNUC__ #pragma GCC diagnostic pop #endif // __GNUC__ diff --git a/gen/pb-go/flyteidl/service/identity.pb.go b/gen/pb-go/flyteidl/service/identity.pb.go index 0877a2b7e..a240b5fbd 100644 --- a/gen/pb-go/flyteidl/service/identity.pb.go +++ b/gen/pb-go/flyteidl/service/identity.pb.go @@ -7,6 +7,7 @@ import ( context "context" fmt "fmt" proto "github.com/golang/protobuf/proto" + _struct "github.com/golang/protobuf/ptypes/struct" _ "google.golang.org/genproto/googleapis/api/annotations" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" @@ -72,10 +73,12 @@ type UserInfoResponse struct { // Preferred e-mail address Email string `protobuf:"bytes,6,opt,name=email,proto3" json:"email,omitempty"` // Profile picture URL - Picture string `protobuf:"bytes,7,opt,name=picture,proto3" json:"picture,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Picture string `protobuf:"bytes,7,opt,name=picture,proto3" json:"picture,omitempty"` + // Additional claims + AdditionalClaims *_struct.Struct `protobuf:"bytes,8,opt,name=additional_claims,json=additionalClaims,proto3" json:"additional_claims,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *UserInfoResponse) Reset() { *m = UserInfoResponse{} } @@ -152,6 +155,13 @@ func (m *UserInfoResponse) GetPicture() string { return "" } +func (m *UserInfoResponse) GetAdditionalClaims() *_struct.Struct { + if m != nil { + return m.AdditionalClaims + } + return nil +} + func init() { proto.RegisterType((*UserInfoRequest)(nil), "flyteidl.service.UserInfoRequest") proto.RegisterType((*UserInfoResponse)(nil), "flyteidl.service.UserInfoResponse") @@ -160,27 +170,31 @@ func init() { func init() { proto.RegisterFile("flyteidl/service/identity.proto", fileDescriptor_0c3f20efbeb1b3f8) } var fileDescriptor_0c3f20efbeb1b3f8 = []byte{ - // 320 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x91, 0xbf, 0x4e, 0xc3, 0x30, - 0x10, 0xc6, 0xd5, 0xff, 0xf4, 0x3a, 0xb4, 0xb5, 0x18, 0xa2, 0x0a, 0x54, 0xc8, 0xc4, 0xd2, 0x58, - 0x82, 0x01, 0xb1, 0xb2, 0x75, 0x61, 0x28, 0xea, 0xc2, 0x40, 0x95, 0xa4, 0x17, 0x63, 0x94, 0xd8, - 0xa9, 0xed, 0x54, 0xea, 0xca, 0x2b, 0xf0, 0x68, 0x3c, 0x00, 0x0b, 0x0f, 0x82, 0x7a, 0x4e, 0x8b, - 0xd4, 0x81, 0x2d, 0xf7, 0xfd, 0x7e, 0x91, 0xce, 0xdf, 0xc1, 0x34, 0xcb, 0x77, 0x0e, 0xe5, 0x3a, - 0xe7, 0x16, 0xcd, 0x56, 0xa6, 0xc8, 0xe5, 0x1a, 0x95, 0x93, 0x6e, 0x17, 0x95, 0x46, 0x3b, 0xcd, - 0x46, 0x07, 0x21, 0xaa, 0x85, 0xc9, 0x85, 0xd0, 0x5a, 0xe4, 0xc8, 0xe3, 0x52, 0xf2, 0x58, 0x29, - 0xed, 0x62, 0x27, 0xb5, 0xb2, 0xde, 0x0f, 0xc7, 0x30, 0x5c, 0x5a, 0x34, 0x73, 0x95, 0xe9, 0x05, - 0x6e, 0x2a, 0xb4, 0x2e, 0xfc, 0x6e, 0xc0, 0xe8, 0x2f, 0xb3, 0xa5, 0x56, 0x16, 0x59, 0x00, 0x3d, - 0x5b, 0x25, 0xef, 0x98, 0xba, 0xa0, 0x71, 0xd5, 0xb8, 0xe9, 0x2f, 0x0e, 0x23, 0x63, 0xd0, 0x56, - 0x71, 0x81, 0x41, 0x93, 0x62, 0xfa, 0x66, 0x33, 0x60, 0xa5, 0xc1, 0x0c, 0x8d, 0xc1, 0xf5, 0xaa, - 0xb2, 0x68, 0xc8, 0x68, 0x91, 0x31, 0x3e, 0x92, 0x65, 0x0d, 0xd8, 0x25, 0x80, 0x90, 0x5b, 0x54, - 0x2b, 0xd2, 0xda, 0xa4, 0xf5, 0x29, 0x79, 0xda, 0xe3, 0x29, 0x0c, 0xb2, 0xb8, 0x90, 0xf9, 0xce, - 0xf3, 0x0e, 0x71, 0xf0, 0x11, 0x09, 0xe7, 0xd0, 0xc1, 0x22, 0x96, 0x79, 0xd0, 0x25, 0xe4, 0x87, - 0xfd, 0xca, 0xa5, 0x4c, 0x5d, 0x65, 0x30, 0xe8, 0xf9, 0x95, 0xeb, 0xf1, 0x76, 0x03, 0xc3, 0x79, - 0x5d, 0xdb, 0xb3, 0x6f, 0x89, 0xbd, 0xc2, 0xd9, 0xe1, 0xcd, 0xec, 0x3a, 0x3a, 0x2d, 0x31, 0x3a, - 0xe9, 0x68, 0x12, 0xfe, 0xa7, 0xf8, 0xca, 0xc2, 0xc1, 0xc7, 0xd7, 0xcf, 0x67, 0xb3, 0xc3, 0x5a, - 0xbc, 0xc0, 0xc7, 0x87, 0x97, 0x7b, 0x21, 0xdd, 0x5b, 0x95, 0x44, 0xa9, 0x2e, 0x38, 0xfd, 0xac, - 0x8d, 0xe0, 0xc7, 0x73, 0x0a, 0x54, 0xbc, 0x4c, 0x66, 0x42, 0xf3, 0xd3, 0x0b, 0x27, 0x5d, 0xba, - 0xd4, 0xdd, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x30, 0xad, 0x2d, 0x17, 0xfc, 0x01, 0x00, 0x00, + // 372 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x92, 0xbf, 0x6e, 0xfa, 0x30, + 0x10, 0xc7, 0xc5, 0x7f, 0x30, 0x03, 0x60, 0xfd, 0xa4, 0x5f, 0x84, 0x5a, 0x41, 0x33, 0xb1, 0x60, + 0x4b, 0x74, 0xa8, 0xba, 0xb6, 0x5d, 0x58, 0x3a, 0x80, 0x58, 0x3a, 0x14, 0x39, 0xc9, 0x25, 0x75, + 0x95, 0xd8, 0xc1, 0x76, 0x90, 0x58, 0xfb, 0x0a, 0x7d, 0x86, 0x3e, 0x51, 0x5f, 0xa1, 0x0f, 0x52, + 0x61, 0x27, 0x20, 0x31, 0x74, 0xcb, 0xdd, 0xe7, 0x73, 0x92, 0xf3, 0xbd, 0x43, 0x93, 0x38, 0x3d, + 0x18, 0xe0, 0x51, 0x4a, 0x35, 0xa8, 0x3d, 0x0f, 0x81, 0xf2, 0x08, 0x84, 0xe1, 0xe6, 0x40, 0x72, + 0x25, 0x8d, 0xc4, 0xc3, 0x4a, 0x20, 0xa5, 0x30, 0xbe, 0x4a, 0xa4, 0x4c, 0x52, 0xa0, 0x2c, 0xe7, + 0x94, 0x09, 0x21, 0x0d, 0x33, 0x5c, 0x0a, 0xed, 0xfc, 0x13, 0xb5, 0x55, 0x50, 0xc4, 0x54, 0x1b, + 0x55, 0x84, 0xc6, 0x51, 0x7f, 0x84, 0x06, 0x1b, 0x0d, 0x6a, 0x29, 0x62, 0xb9, 0x82, 0x5d, 0x01, + 0xda, 0xf8, 0x5f, 0x75, 0x34, 0x3c, 0xf7, 0x74, 0x2e, 0x85, 0x06, 0xec, 0xa1, 0x8e, 0x2e, 0x82, + 0x77, 0x08, 0x8d, 0x57, 0x9b, 0xd6, 0x66, 0xbd, 0x55, 0x55, 0x62, 0x8c, 0x9a, 0x82, 0x65, 0xe0, + 0xd5, 0x6d, 0xdb, 0x7e, 0xe3, 0x39, 0xc2, 0xb9, 0x82, 0x18, 0x94, 0x82, 0x68, 0x5b, 0x68, 0x50, + 0xd6, 0x68, 0x58, 0x63, 0x74, 0x22, 0x9b, 0x12, 0xe0, 0x6b, 0x84, 0x12, 0xbe, 0x07, 0xb1, 0xb5, + 0x5a, 0xd3, 0x6a, 0x3d, 0xdb, 0x79, 0x3e, 0xe2, 0x09, 0xea, 0xc7, 0x2c, 0xe3, 0xe9, 0xc1, 0xf1, + 0x96, 0xe5, 0xc8, 0xb5, 0xac, 0xf0, 0x0f, 0xb5, 0x20, 0x63, 0x3c, 0xf5, 0xda, 0x16, 0xb9, 0xe2, + 0xf8, 0xe4, 0x9c, 0x87, 0xa6, 0x50, 0xe0, 0x75, 0xdc, 0x93, 0xcb, 0x12, 0x3f, 0xa1, 0x11, 0x8b, + 0x22, 0x7e, 0x4c, 0x89, 0xa5, 0xdb, 0x30, 0x65, 0x3c, 0xd3, 0x5e, 0x77, 0x5a, 0x9b, 0xf5, 0x17, + 0xff, 0x89, 0x8b, 0x8b, 0x54, 0x71, 0x91, 0xb5, 0x8d, 0x6b, 0x35, 0x3c, 0x4f, 0x3c, 0xda, 0x81, + 0xc5, 0x0e, 0x0d, 0x96, 0xe5, 0x6a, 0xd6, 0x6e, 0x13, 0xf8, 0x15, 0x75, 0xab, 0xe4, 0xf0, 0x0d, + 0xb9, 0x5c, 0x14, 0xb9, 0x48, 0x7a, 0xec, 0xff, 0xa5, 0xb8, 0xe0, 0xfd, 0xfe, 0xc7, 0xf7, 0xcf, + 0x67, 0xbd, 0x85, 0x1b, 0x34, 0x83, 0x87, 0xfb, 0x97, 0xbb, 0x84, 0x9b, 0xb7, 0x22, 0x20, 0xa1, + 0xcc, 0xa8, 0x1d, 0x96, 0x2a, 0xa1, 0xa7, 0x93, 0x49, 0x40, 0xd0, 0x3c, 0x98, 0x27, 0x92, 0x5e, + 0x5e, 0x51, 0xd0, 0xb6, 0x3f, 0x74, 0xfb, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x8e, 0x8e, 0x13, 0xed, + 0x60, 0x02, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/gen/pb-go/flyteidl/service/identity.swagger.json b/gen/pb-go/flyteidl/service/identity.swagger.json index b3008b199..62cfc9e10 100644 --- a/gen/pb-go/flyteidl/service/identity.swagger.json +++ b/gen/pb-go/flyteidl/service/identity.swagger.json @@ -34,6 +34,72 @@ } }, "definitions": { + "protobufListValue": { + "type": "object", + "properties": { + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/protobufValue" + }, + "description": "Repeated field of dynamically typed values." + } + }, + "description": "`ListValue` is a wrapper around a repeated field of values.\n\nThe JSON representation for `ListValue` is JSON array." + }, + "protobufNullValue": { + "type": "string", + "enum": [ + "NULL_VALUE" + ], + "default": "NULL_VALUE", + "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\n The JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." + }, + "protobufStruct": { + "type": "object", + "properties": { + "fields": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/protobufValue" + }, + "description": "Unordered map of dynamically typed values." + } + }, + "description": "`Struct` represents a structured data value, consisting of fields\nwhich map to dynamically typed values. In some languages, `Struct`\nmight be supported by a native representation. For example, in\nscripting languages like JS a struct is represented as an\nobject. The details of that representation are described together\nwith the proto support for the language.\n\nThe JSON representation for `Struct` is JSON object." + }, + "protobufValue": { + "type": "object", + "properties": { + "null_value": { + "$ref": "#/definitions/protobufNullValue", + "description": "Represents a null value." + }, + "number_value": { + "type": "number", + "format": "double", + "description": "Represents a double value." + }, + "string_value": { + "type": "string", + "description": "Represents a string value." + }, + "bool_value": { + "type": "boolean", + "format": "boolean", + "description": "Represents a boolean value." + }, + "struct_value": { + "$ref": "#/definitions/protobufStruct", + "description": "Represents a structured value." + }, + "list_value": { + "$ref": "#/definitions/protobufListValue", + "description": "Represents a repeated `Value`." + } + }, + "description": "`Value` represents a dynamically typed value which can be either\nnull, a number, a string, a boolean, a recursive struct value, or a\nlist of values. A producer of value is expected to set one of that\nvariants, absence of any variant indicates an error.\n\nThe JSON representation for `Value` is JSON value." + }, "serviceUserInfoResponse": { "type": "object", "properties": { @@ -64,6 +130,10 @@ "picture": { "type": "string", "title": "Profile picture URL" + }, + "additional_claims": { + "$ref": "#/definitions/protobufStruct", + "title": "Additional claims" } }, "description": "See the OpenID Connect spec at https://openid.net/specs/openid-connect-core-1_0.html#UserInfoResponse for more information." diff --git a/gen/pb-java/flyteidl/service/Identity.java b/gen/pb-java/flyteidl/service/Identity.java index 53d6d17ac..9a56444a5 100644 --- a/gen/pb-java/flyteidl/service/Identity.java +++ b/gen/pb-java/flyteidl/service/Identity.java @@ -556,6 +556,31 @@ public interface UserInfoResponseOrBuilder extends */ com.google.protobuf.ByteString getPictureBytes(); + + /** + *
+     * Additional claims
+     * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + boolean hasAdditionalClaims(); + /** + *
+     * Additional claims
+     * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + com.google.protobuf.Struct getAdditionalClaims(); + /** + *
+     * Additional claims
+     * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + com.google.protobuf.StructOrBuilder getAdditionalClaimsOrBuilder(); } /** *
@@ -649,6 +674,19 @@ private UserInfoResponse(
               picture_ = s;
               break;
             }
+            case 66: {
+              com.google.protobuf.Struct.Builder subBuilder = null;
+              if (additionalClaims_ != null) {
+                subBuilder = additionalClaims_.toBuilder();
+              }
+              additionalClaims_ = input.readMessage(com.google.protobuf.Struct.parser(), extensionRegistry);
+              if (subBuilder != null) {
+                subBuilder.mergeFrom(additionalClaims_);
+                additionalClaims_ = subBuilder.buildPartial();
+              }
+
+              break;
+            }
             default: {
               if (!parseUnknownField(
                   input, unknownFields, extensionRegistry, tag)) {
@@ -977,6 +1015,39 @@ public java.lang.String getPicture() {
       }
     }
 
+    public static final int ADDITIONAL_CLAIMS_FIELD_NUMBER = 8;
+    private com.google.protobuf.Struct additionalClaims_;
+    /**
+     * 
+     * Additional claims
+     * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public boolean hasAdditionalClaims() { + return additionalClaims_ != null; + } + /** + *
+     * Additional claims
+     * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public com.google.protobuf.Struct getAdditionalClaims() { + return additionalClaims_ == null ? com.google.protobuf.Struct.getDefaultInstance() : additionalClaims_; + } + /** + *
+     * Additional claims
+     * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public com.google.protobuf.StructOrBuilder getAdditionalClaimsOrBuilder() { + return getAdditionalClaims(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { @@ -1012,6 +1083,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) if (!getPictureBytes().isEmpty()) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, picture_); } + if (additionalClaims_ != null) { + output.writeMessage(8, getAdditionalClaims()); + } unknownFields.writeTo(output); } @@ -1042,6 +1116,10 @@ public int getSerializedSize() { if (!getPictureBytes().isEmpty()) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, picture_); } + if (additionalClaims_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(8, getAdditionalClaims()); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -1071,6 +1149,11 @@ public boolean equals(final java.lang.Object obj) { .equals(other.getEmail())) return false; if (!getPicture() .equals(other.getPicture())) return false; + if (hasAdditionalClaims() != other.hasAdditionalClaims()) return false; + if (hasAdditionalClaims()) { + if (!getAdditionalClaims() + .equals(other.getAdditionalClaims())) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -1096,6 +1179,10 @@ public int hashCode() { hash = (53 * hash) + getEmail().hashCode(); hash = (37 * hash) + PICTURE_FIELD_NUMBER; hash = (53 * hash) + getPicture().hashCode(); + if (hasAdditionalClaims()) { + hash = (37 * hash) + ADDITIONAL_CLAIMS_FIELD_NUMBER; + hash = (53 * hash) + getAdditionalClaims().hashCode(); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; @@ -1247,6 +1334,12 @@ public Builder clear() { picture_ = ""; + if (additionalClaimsBuilder_ == null) { + additionalClaims_ = null; + } else { + additionalClaims_ = null; + additionalClaimsBuilder_ = null; + } return this; } @@ -1280,6 +1373,11 @@ public flyteidl.service.Identity.UserInfoResponse buildPartial() { result.familyName_ = familyName_; result.email_ = email_; result.picture_ = picture_; + if (additionalClaimsBuilder_ == null) { + result.additionalClaims_ = additionalClaims_; + } else { + result.additionalClaims_ = additionalClaimsBuilder_.build(); + } onBuilt(); return result; } @@ -1356,6 +1454,9 @@ public Builder mergeFrom(flyteidl.service.Identity.UserInfoResponse other) { picture_ = other.picture_; onChanged(); } + if (other.hasAdditionalClaims()) { + mergeAdditionalClaims(other.getAdditionalClaims()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -2012,6 +2113,159 @@ public Builder setPictureBytes( onChanged(); return this; } + + private com.google.protobuf.Struct additionalClaims_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder> additionalClaimsBuilder_; + /** + *
+       * Additional claims
+       * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public boolean hasAdditionalClaims() { + return additionalClaimsBuilder_ != null || additionalClaims_ != null; + } + /** + *
+       * Additional claims
+       * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public com.google.protobuf.Struct getAdditionalClaims() { + if (additionalClaimsBuilder_ == null) { + return additionalClaims_ == null ? com.google.protobuf.Struct.getDefaultInstance() : additionalClaims_; + } else { + return additionalClaimsBuilder_.getMessage(); + } + } + /** + *
+       * Additional claims
+       * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public Builder setAdditionalClaims(com.google.protobuf.Struct value) { + if (additionalClaimsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + additionalClaims_ = value; + onChanged(); + } else { + additionalClaimsBuilder_.setMessage(value); + } + + return this; + } + /** + *
+       * Additional claims
+       * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public Builder setAdditionalClaims( + com.google.protobuf.Struct.Builder builderForValue) { + if (additionalClaimsBuilder_ == null) { + additionalClaims_ = builderForValue.build(); + onChanged(); + } else { + additionalClaimsBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + *
+       * Additional claims
+       * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public Builder mergeAdditionalClaims(com.google.protobuf.Struct value) { + if (additionalClaimsBuilder_ == null) { + if (additionalClaims_ != null) { + additionalClaims_ = + com.google.protobuf.Struct.newBuilder(additionalClaims_).mergeFrom(value).buildPartial(); + } else { + additionalClaims_ = value; + } + onChanged(); + } else { + additionalClaimsBuilder_.mergeFrom(value); + } + + return this; + } + /** + *
+       * Additional claims
+       * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public Builder clearAdditionalClaims() { + if (additionalClaimsBuilder_ == null) { + additionalClaims_ = null; + onChanged(); + } else { + additionalClaims_ = null; + additionalClaimsBuilder_ = null; + } + + return this; + } + /** + *
+       * Additional claims
+       * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public com.google.protobuf.Struct.Builder getAdditionalClaimsBuilder() { + + onChanged(); + return getAdditionalClaimsFieldBuilder().getBuilder(); + } + /** + *
+       * Additional claims
+       * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + public com.google.protobuf.StructOrBuilder getAdditionalClaimsOrBuilder() { + if (additionalClaimsBuilder_ != null) { + return additionalClaimsBuilder_.getMessageOrBuilder(); + } else { + return additionalClaims_ == null ? + com.google.protobuf.Struct.getDefaultInstance() : additionalClaims_; + } + } + /** + *
+       * Additional claims
+       * 
+ * + * .google.protobuf.Struct additional_claims = 8; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder> + getAdditionalClaimsFieldBuilder() { + if (additionalClaimsBuilder_ == null) { + additionalClaimsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Struct, com.google.protobuf.Struct.Builder, com.google.protobuf.StructOrBuilder>( + getAdditionalClaims(), + getParentForChildren(), + isClean()); + additionalClaims_ = null; + } + return additionalClaimsBuilder_; + } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { @@ -2086,15 +2340,17 @@ public flyteidl.service.Identity.UserInfoResponse getDefaultInstanceForType() { java.lang.String[] descriptorData = { "\n\037flyteidl/service/identity.proto\022\020flyte" + "idl.service\032\034google/api/annotations.prot" + - "o\"\021\n\017UserInfoRequest\"\226\001\n\020UserInfoRespons" + - "e\022\017\n\007subject\030\001 \001(\t\022\014\n\004name\030\002 \001(\t\022\032\n\022pref" + - "erred_username\030\003 \001(\t\022\022\n\ngiven_name\030\004 \001(\t" + - "\022\023\n\013family_name\030\005 \001(\t\022\r\n\005email\030\006 \001(\t\022\017\n\007" + - "picture\030\007 \001(\t2q\n\017IdentityService\022^\n\010User" + - "Info\022!.flyteidl.service.UserInfoRequest\032" + - "\".flyteidl.service.UserInfoResponse\"\013\202\323\344" + - "\223\002\005\022\003/meB9Z7github.com/flyteorg/flyteidl" + - "/gen/pb-go/flyteidl/serviceb\006proto3" + "o\032\034google/protobuf/struct.proto\"\021\n\017UserI" + + "nfoRequest\"\312\001\n\020UserInfoResponse\022\017\n\007subje" + + "ct\030\001 \001(\t\022\014\n\004name\030\002 \001(\t\022\032\n\022preferred_user" + + "name\030\003 \001(\t\022\022\n\ngiven_name\030\004 \001(\t\022\023\n\013family" + + "_name\030\005 \001(\t\022\r\n\005email\030\006 \001(\t\022\017\n\007picture\030\007 " + + "\001(\t\0222\n\021additional_claims\030\010 \001(\0132\027.google." + + "protobuf.Struct2q\n\017IdentityService\022^\n\010Us" + + "erInfo\022!.flyteidl.service.UserInfoReques" + + "t\032\".flyteidl.service.UserInfoResponse\"\013\202" + + "\323\344\223\002\005\022\003/meB9Z7github.com/flyteorg/flytei" + + "dl/gen/pb-go/flyteidl/serviceb\006proto3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { @@ -2108,6 +2364,7 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( .internalBuildGeneratedFileFrom(descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { com.google.api.AnnotationsProto.getDescriptor(), + com.google.protobuf.StructProto.getDescriptor(), }, assigner); internal_static_flyteidl_service_UserInfoRequest_descriptor = getDescriptor().getMessageTypes().get(0); @@ -2120,13 +2377,14 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( internal_static_flyteidl_service_UserInfoResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_flyteidl_service_UserInfoResponse_descriptor, - new java.lang.String[] { "Subject", "Name", "PreferredUsername", "GivenName", "FamilyName", "Email", "Picture", }); + new java.lang.String[] { "Subject", "Name", "PreferredUsername", "GivenName", "FamilyName", "Email", "Picture", "AdditionalClaims", }); com.google.protobuf.ExtensionRegistry registry = com.google.protobuf.ExtensionRegistry.newInstance(); registry.add(com.google.api.AnnotationsProto.http); com.google.protobuf.Descriptors.FileDescriptor .internalUpdateFileDescriptor(descriptor, registry); com.google.api.AnnotationsProto.getDescriptor(); + com.google.protobuf.StructProto.getDescriptor(); } // @@protoc_insertion_point(outer_class_scope) diff --git a/gen/pb-js/flyteidl.d.ts b/gen/pb-js/flyteidl.d.ts index 0170d442d..cb649c124 100644 --- a/gen/pb-js/flyteidl.d.ts +++ b/gen/pb-js/flyteidl.d.ts @@ -19160,6 +19160,9 @@ export namespace flyteidl { /** UserInfoResponse picture */ picture?: (string|null); + + /** UserInfoResponse additionalClaims */ + additionalClaims?: (google.protobuf.IStruct|null); } /** Represents a UserInfoResponse. */ @@ -19192,6 +19195,9 @@ export namespace flyteidl { /** UserInfoResponse picture. */ public picture: string; + /** UserInfoResponse additionalClaims. */ + public additionalClaims?: (google.protobuf.IStruct|null); + /** * Creates a new UserInfoResponse instance using the specified properties. * @param [properties] Properties to set diff --git a/gen/pb-js/flyteidl.js b/gen/pb-js/flyteidl.js index 8e68ca8f9..67d96f215 100644 --- a/gen/pb-js/flyteidl.js +++ b/gen/pb-js/flyteidl.js @@ -44528,6 +44528,7 @@ * @property {string|null} [familyName] UserInfoResponse familyName * @property {string|null} [email] UserInfoResponse email * @property {string|null} [picture] UserInfoResponse picture + * @property {google.protobuf.IStruct|null} [additionalClaims] UserInfoResponse additionalClaims */ /** @@ -44601,6 +44602,14 @@ */ UserInfoResponse.prototype.picture = ""; + /** + * UserInfoResponse additionalClaims. + * @member {google.protobuf.IStruct|null|undefined} additionalClaims + * @memberof flyteidl.service.UserInfoResponse + * @instance + */ + UserInfoResponse.prototype.additionalClaims = null; + /** * Creates a new UserInfoResponse instance using the specified properties. * @function create @@ -44639,6 +44648,8 @@ writer.uint32(/* id 6, wireType 2 =*/50).string(message.email); if (message.picture != null && message.hasOwnProperty("picture")) writer.uint32(/* id 7, wireType 2 =*/58).string(message.picture); + if (message.additionalClaims != null && message.hasOwnProperty("additionalClaims")) + $root.google.protobuf.Struct.encode(message.additionalClaims, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); return writer; }; @@ -44681,6 +44692,9 @@ case 7: message.picture = reader.string(); break; + case 8: + message.additionalClaims = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + break; default: reader.skipType(tag & 7); break; @@ -44721,6 +44735,11 @@ if (message.picture != null && message.hasOwnProperty("picture")) if (!$util.isString(message.picture)) return "picture: string expected"; + if (message.additionalClaims != null && message.hasOwnProperty("additionalClaims")) { + var error = $root.google.protobuf.Struct.verify(message.additionalClaims); + if (error) + return "additionalClaims." + error; + } return null; }; diff --git a/gen/pb_python/flyteidl/service/identity_pb2.py b/gen/pb_python/flyteidl/service/identity_pb2.py index 3fc7dcbe1..be885ce5c 100644 --- a/gen/pb_python/flyteidl/service/identity_pb2.py +++ b/gen/pb_python/flyteidl/service/identity_pb2.py @@ -12,9 +12,10 @@ from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1f\x66lyteidl/service/identity.proto\x12\x10\x66lyteidl.service\x1a\x1cgoogle/api/annotations.proto\"\x11\n\x0fUserInfoRequest\"\xdf\x01\n\x10UserInfoResponse\x12\x18\n\x07subject\x18\x01 \x01(\tR\x07subject\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12-\n\x12preferred_username\x18\x03 \x01(\tR\x11preferredUsername\x12\x1d\n\ngiven_name\x18\x04 \x01(\tR\tgivenName\x12\x1f\n\x0b\x66\x61mily_name\x18\x05 \x01(\tR\nfamilyName\x12\x14\n\x05\x65mail\x18\x06 \x01(\tR\x05\x65mail\x12\x18\n\x07picture\x18\x07 \x01(\tR\x07picture2q\n\x0fIdentityService\x12^\n\x08UserInfo\x12!.flyteidl.service.UserInfoRequest\x1a\".flyteidl.service.UserInfoResponse\"\x0b\x82\xd3\xe4\x93\x02\x05\x12\x03/meB\xbf\x01\n\x14\x63om.flyteidl.serviceB\rIdentityProtoP\x01Z7github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/service\xa2\x02\x03\x46SX\xaa\x02\x10\x46lyteidl.Service\xca\x02\x10\x46lyteidl\\Service\xe2\x02\x1c\x46lyteidl\\Service\\GPBMetadata\xea\x02\x11\x46lyteidl::Serviceb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1f\x66lyteidl/service/identity.proto\x12\x10\x66lyteidl.service\x1a\x1cgoogle/api/annotations.proto\x1a\x1cgoogle/protobuf/struct.proto\"\x11\n\x0fUserInfoRequest\"\xa5\x02\n\x10UserInfoResponse\x12\x18\n\x07subject\x18\x01 \x01(\tR\x07subject\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12-\n\x12preferred_username\x18\x03 \x01(\tR\x11preferredUsername\x12\x1d\n\ngiven_name\x18\x04 \x01(\tR\tgivenName\x12\x1f\n\x0b\x66\x61mily_name\x18\x05 \x01(\tR\nfamilyName\x12\x14\n\x05\x65mail\x18\x06 \x01(\tR\x05\x65mail\x12\x18\n\x07picture\x18\x07 \x01(\tR\x07picture\x12\x44\n\x11\x61\x64\x64itional_claims\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\x10\x61\x64\x64itionalClaims2q\n\x0fIdentityService\x12^\n\x08UserInfo\x12!.flyteidl.service.UserInfoRequest\x1a\".flyteidl.service.UserInfoResponse\"\x0b\x82\xd3\xe4\x93\x02\x05\x12\x03/meB\xbf\x01\n\x14\x63om.flyteidl.serviceB\rIdentityProtoP\x01Z7github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/service\xa2\x02\x03\x46SX\xaa\x02\x10\x46lyteidl.Service\xca\x02\x10\x46lyteidl\\Service\xe2\x02\x1c\x46lyteidl\\Service\\GPBMetadata\xea\x02\x11\x46lyteidl::Serviceb\x06proto3') _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals()) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flyteidl.service.identity_pb2', globals()) @@ -24,10 +25,10 @@ DESCRIPTOR._serialized_options = b'\n\024com.flyteidl.serviceB\rIdentityProtoP\001Z7github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/service\242\002\003FSX\252\002\020Flyteidl.Service\312\002\020Flyteidl\\Service\342\002\034Flyteidl\\Service\\GPBMetadata\352\002\021Flyteidl::Service' _IDENTITYSERVICE.methods_by_name['UserInfo']._options = None _IDENTITYSERVICE.methods_by_name['UserInfo']._serialized_options = b'\202\323\344\223\002\005\022\003/me' - _USERINFOREQUEST._serialized_start=83 - _USERINFOREQUEST._serialized_end=100 - _USERINFORESPONSE._serialized_start=103 - _USERINFORESPONSE._serialized_end=326 - _IDENTITYSERVICE._serialized_start=328 - _IDENTITYSERVICE._serialized_end=441 + _USERINFOREQUEST._serialized_start=113 + _USERINFOREQUEST._serialized_end=130 + _USERINFORESPONSE._serialized_start=133 + _USERINFORESPONSE._serialized_end=426 + _IDENTITYSERVICE._serialized_start=428 + _IDENTITYSERVICE._serialized_end=541 # @@protoc_insertion_point(module_scope) diff --git a/gen/pb_python/flyteidl/service/identity_pb2.pyi b/gen/pb_python/flyteidl/service/identity_pb2.pyi index d0470d1ad..0672b4add 100644 --- a/gen/pb_python/flyteidl/service/identity_pb2.pyi +++ b/gen/pb_python/flyteidl/service/identity_pb2.pyi @@ -1,7 +1,8 @@ from google.api import annotations_pb2 as _annotations_pb2 +from google.protobuf import struct_pb2 as _struct_pb2 from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message -from typing import ClassVar as _ClassVar, Optional as _Optional +from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union DESCRIPTOR: _descriptor.FileDescriptor @@ -10,7 +11,8 @@ class UserInfoRequest(_message.Message): def __init__(self) -> None: ... class UserInfoResponse(_message.Message): - __slots__ = ["email", "family_name", "given_name", "name", "picture", "preferred_username", "subject"] + __slots__ = ["additional_claims", "email", "family_name", "given_name", "name", "picture", "preferred_username", "subject"] + ADDITIONAL_CLAIMS_FIELD_NUMBER: _ClassVar[int] EMAIL_FIELD_NUMBER: _ClassVar[int] FAMILY_NAME_FIELD_NUMBER: _ClassVar[int] GIVEN_NAME_FIELD_NUMBER: _ClassVar[int] @@ -18,6 +20,7 @@ class UserInfoResponse(_message.Message): PICTURE_FIELD_NUMBER: _ClassVar[int] PREFERRED_USERNAME_FIELD_NUMBER: _ClassVar[int] SUBJECT_FIELD_NUMBER: _ClassVar[int] + additional_claims: _struct_pb2.Struct email: str family_name: str given_name: str @@ -25,4 +28,4 @@ class UserInfoResponse(_message.Message): picture: str preferred_username: str subject: str - def __init__(self, subject: _Optional[str] = ..., name: _Optional[str] = ..., preferred_username: _Optional[str] = ..., given_name: _Optional[str] = ..., family_name: _Optional[str] = ..., email: _Optional[str] = ..., picture: _Optional[str] = ...) -> None: ... + def __init__(self, subject: _Optional[str] = ..., name: _Optional[str] = ..., preferred_username: _Optional[str] = ..., given_name: _Optional[str] = ..., family_name: _Optional[str] = ..., email: _Optional[str] = ..., picture: _Optional[str] = ..., additional_claims: _Optional[_Union[_struct_pb2.Struct, _Mapping]] = ...) -> None: ... diff --git a/protos/flyteidl/service/identity.proto b/protos/flyteidl/service/identity.proto index 574db512b..e4bc5dcb0 100644 --- a/protos/flyteidl/service/identity.proto +++ b/protos/flyteidl/service/identity.proto @@ -4,6 +4,7 @@ package flyteidl.service; option go_package = "github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/service"; import "google/api/annotations.proto"; +import "google/protobuf/struct.proto"; // import "protoc-gen-swagger/options/annotations.proto"; message UserInfoRequest {} @@ -31,6 +32,9 @@ message UserInfoResponse { // Profile picture URL string picture = 7; + + // Additional claims + google.protobuf.Struct additional_claims = 8; } // IdentityService defines an RPC Service that interacts with user/app identities.