rancher/rancher · error
parsing GitHub App ID: %w
Error message
parsing GitHub App ID: %w
What it means
Same misconfiguration as the client-side 'parsing AppID' error, but thrown from the provider path (getAppDataWithConfig) when Rancher tries to fetch GitHub App data: config.AppID is not parseable as a base-10 int64. The saved GithubAppConfig contains a non-numeric app ID.
Source
Thrown at pkg/auth/providers/githubapp/githubapp_provider.go:444
privateKeyName, err := common.CreateOrUpdateSecrets(g.secrets, privateKeyInfo, privateKeyField, strings.ToLower(config.Type))
if err != nil {
return err
}
config.PrivateKey = privateKeyName
_, err = g.authConfigs.ObjectClient().Update(config.ObjectMeta.Name, config)
if err != nil {
return err
}
return nil
}
func getAppDataWithConfig(ctx context.Context, config *apiv3.GithubAppConfig) (*gitHubAppData, error) {
appID, err := strconv.ParseInt(config.AppID, 10, 64)
if err != nil {
return nil, fmt.Errorf("parsing GitHub App ID: %w", err)
}
var installationID int64
if config.InstallationID != "" {
i, err := strconv.ParseInt(config.InstallationID, 10, 64)
if err != nil {
return nil, fmt.Errorf("parsing GitHub installation ID: %w", err)
}
installationID = i
}
return getDataForApp(ctx, appID, []byte(config.PrivateKey), installationID, getAPIURL("", config))
}
func chooseClientID(host string, sourceConfig *apiv3.GithubAppConfig) *apiv3.GithubAppConfig {
if host == "" {
return sourceConfig
}View on GitHub (pinned to 932558d4e6)
Solutions
- Copy the numeric App ID from GitHub Settings > Developer settings > GitHub Apps
- Update spec.appID in the GithubAppConfig and save (this also triggers a data refetch)
- Add upstream UI/client-side numeric validation so it cannot be saved again
Example fix
# before appID: my-rancher-app # after appID: "401234"
Defensive patterns
Strategy: validation
Validate before calling
if _, err := strconv.ParseInt(strings.TrimSpace(config.AppID), 10, 64); err != nil {
return fmt.Errorf("refusing to fetch app data: appID %q is not the numeric GitHub App ID: %w", config.AppID, err)
} Prevention
- Validate appID at config-save time so the provider never sees it
- Copy IDs from Developer settings, never retype them
- Add UI numeric validation for the GitHub App form
When it happens
Trigger: AppID empty, set to the app name, or set to the client ID (Iv1./Ov23 prefix) instead of the numeric App ID; copy-paste artifacts (spaces, quotes) in the field.
Common situations: Config saved through kubectl/helm bypassing UI validation; confusion between App ID and Client ID in GitHub Developer settings.
Related errors
- parsing AppID: %w
- parsing InstallationID: %w
- parsing GitHub installation ID: %w
- could not create token authority url: %w
- creating MS Graph client: %w
AI-assisted analysis of rancher/rancher@932558d4e6 (2026-08-16).
Data as JSON: /api/errors/b75234ad81bd0744.
Report an issue: GitHub.