Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetGithubConfig ¶
Types ¶
type AccessTokenResponse ¶
type AccessTokenResponse struct {
AccessToken string `json:"access_token"`
RefreshToken string `json:"refresh_token"`
TokenType string `json:"token_type"`
Scope string `json:"scope"`
}
func Wait ¶
func Wait(ctx context.Context, uri string, opts WaitOptions) (*AccessTokenResponse, error)
Wait polls the server at uri until authorization completes.
type ApiError ¶
type ApiError struct {
Code string `json:"code"`
ResponseCode int `json:"response_code"`
RequestURI string `json:"request_uri"`
Message string `json:"message"`
}
Error is the result of an unexpected HTTP response from the server.
type CodeResponse ¶
type CodeResponse struct {
// The user verification code is displayed on the device so the user can enter the code in a browser.
UserCode string
// The verification URL where users need to enter the UserCode.
VerificationURI string
// The optional verification URL that includes the UserCode.
VerificationURIComplete string
// The device verification code is 40 characters and used to verify the device.
DeviceCode string
// The number of seconds before the DeviceCode and UserCode expire.
ExpiresIn int
// The minimum number of seconds that must pass before you can make a new access token request to
// complete the device authorization.
Interval int
}
CodeResponse holds information about the authorization-in-progress.
type GitHubUser ¶
type GitHubUser struct {
Login string `json:"login"`
ID int `json:"id"`
NodeID string `json:"node_id"`
AvatarURL string `json:"avatar_url"`
GravatarID string `json:"gravatar_id"`
URL string `json:"url"`
HTMLURL string `json:"html_url"`
FollowersURL string `json:"followers_url"`
FollowingURL string `json:"following_url"`
GistsURL string `json:"gists_url"`
StarredURL string `json:"starred_url"`
SubscriptionsURL string `json:"subscriptions_url"`
OrganizationsURL string `json:"organizations_url"`
ReposURL string `json:"repos_url"`
EventsURL string `json:"events_url"`
ReceivedEventsURL string `json:"received_events_url"`
Type string `json:"type"`
SiteAdmin bool `json:"site_admin"`
Name string `json:"name"`
Company any `json:"company"`
Blog string `json:"blog"`
Location any `json:"location"`
Email any `json:"email"`
Hireable any `json:"hireable"`
Bio string `json:"bio"`
TwitterUsername any `json:"twitter_username"`
PublicRepos int `json:"public_repos"`
PublicGists int `json:"public_gists"`
Followers int `json:"followers"`
Following int `json:"following"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
func GetGitHubUser ¶
func GetGitHubUser(accessToken string) (GitHubUser, error)
type GithubUserProvider ¶
type GithubUserProvider func(accessToken string) (GitHubUser, error)
type WaitOptions ¶
type WaitOptions struct {
// ClientID is the app client ID value.
ClientID string
// ClientSecret is the app client secret value. Optional: only pass if the server requires it.
ClientSecret string
// DeviceCode is the value obtained from RequestCode.
DeviceCode *CodeResponse
// GrantType overrides the default value specified by OAuth 2.0 Device Code. Optional.
GrantType string
// contains filtered or unexported fields
}
WaitOptions specifies parameters to poll the server with until authentication completes.
Click to show internal directories.
Click to hide internal directories.