mirror of
https://github.com/opentofu/opentofu.git
synced 2025-01-09 23:54:17 -06:00
6fe2703665
* Remove `make updatedeps` from Travis build. We'll follow up with more specific plans around dependency updating in subsequent PRs. * Update all `make` targets to set `GO15VENDOREXPERIMENT=1` and to filter out `/vendor/` from `./...` where appropriate. * Temporarily remove `vet` from the `make test` target until we can figure out how to get it to not vet `vendor/`. (Initial experimentation failed to yield the proper incantation.) Everything is pinned to current master, with the exception of: * Azure/azure-sdk-for-go which is pinned before the breaking change today * aws/aws-sdk-go which is pinned to the most recent tag The documentation still needs to be updated, which we can do in a follow up PR. The goal here is to unblock release.
53 lines
1.5 KiB
Go
53 lines
1.5 KiB
Go
package packngo
|
|
|
|
const userBasePath = "/users"
|
|
|
|
// UserService interface defines available user methods
|
|
type UserService interface {
|
|
Get(string) (*User, *Response, error)
|
|
}
|
|
|
|
// User represents a Packet user
|
|
type User struct {
|
|
ID string `json:"id"`
|
|
FirstName string `json:"first_name,omitempty"`
|
|
LastName string `json:"last_name,omitempty"`
|
|
FullName string `json:"full_name,omitempty"`
|
|
Email string `json:"email,omitempty"`
|
|
TwoFactor string `json:"two_factor_auth,omitempty"`
|
|
AvatarURL string `json:"avatar_url,omitempty"`
|
|
Facebook string `json:"twitter,omitempty"`
|
|
Twitter string `json:"facebook,omitempty"`
|
|
LinkedIn string `json:"linkedin,omitempty"`
|
|
Created string `json:"created_at,omitempty"`
|
|
Updated string `json:"updated_at,omitempty"`
|
|
TimeZone string `json:"timezone,omitempty"`
|
|
Emails []Email `json:"email,omitempty"`
|
|
PhoneNumber string `json:"phone_number,omitempty"`
|
|
URL string `json:"href,omitempty"`
|
|
}
|
|
func (u User) String() string {
|
|
return Stringify(u)
|
|
}
|
|
|
|
// UserServiceOp implements UserService
|
|
type UserServiceOp struct {
|
|
client *Client
|
|
}
|
|
|
|
// Get method gets a user by userID
|
|
func (s *UserServiceOp) Get(userID string) (*User, *Response, error) {
|
|
req, err := s.client.NewRequest("GET", userBasePath, nil)
|
|
if err != nil {
|
|
return nil, nil, err
|
|
}
|
|
|
|
user := new(User)
|
|
resp, err := s.client.Do(req, user)
|
|
if err != nil {
|
|
return nil, resp, err
|
|
}
|
|
|
|
return user, resp, err
|
|
}
|