(ctx context.Context, hook *github.Hook)
| 102 | } |
| 103 | |
| 104 | func (g *githubClient) createGithubEntityHook(ctx context.Context, hook *github.Hook) (ret *github.Hook, err error) { |
| 105 | metrics.GithubOperationCount.WithLabelValues( |
| 106 | "CreateHook", // label: operation |
| 107 | g.entity.LabelScope(), // label: scope |
| 108 | ).Inc() |
| 109 | defer func() { |
| 110 | if err != nil { |
| 111 | metrics.GithubOperationFailedCount.WithLabelValues( |
| 112 | "CreateHook", // label: operation |
| 113 | g.entity.LabelScope(), // label: scope |
| 114 | ).Inc() |
| 115 | } |
| 116 | }() |
| 117 | var response *github.Response |
| 118 | switch g.entity.EntityType { |
| 119 | case params.ForgeEntityTypeRepository: |
| 120 | ret, response, err = g.repo.CreateHook(ctx, g.entity.Owner, g.entity.Name, hook) |
| 121 | case params.ForgeEntityTypeOrganization: |
| 122 | ret, response, err = g.org.CreateHook(ctx, g.entity.Owner, hook) |
| 123 | default: |
| 124 | return nil, errors.New("invalid entity type") |
| 125 | } |
| 126 | if err == nil && response != nil { |
| 127 | g.recordLimits(response.Rate) |
| 128 | } |
| 129 | return ret, err |
| 130 | } |
| 131 | |
| 132 | func (g *githubClient) CreateEntityHook(ctx context.Context, hook *github.Hook) (ret *github.Hook, err error) { |
| 133 | switch g.entity.Credentials.ForgeType { |
no test coverage detected