Bump github.com/xanzy/go-gitlab from 0.96.0 to 0.98.0 (#391)

Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.96.0 to 0.98.0.
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.96.0...v0.98.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
dependabot[bot]
2024-03-02 07:58:49 -08:00
committed by GitHub
parent cbd9505e21
commit d8654ce7ed
15 changed files with 284 additions and 136 deletions

2
go.mod
View File

@@ -14,7 +14,7 @@ require (
github.com/mitchellh/go-homedir v1.1.0
github.com/spf13/cobra v1.8.0
github.com/spf13/viper v1.18.2
github.com/xanzy/go-gitlab v0.96.0
github.com/xanzy/go-gitlab v0.98.0
golang.org/x/oauth2 v0.16.0
gopkg.in/yaml.v2 v2.4.0
)

4
go.sum
View File

@@ -964,8 +964,8 @@ github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcU
github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8=
github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU=
github.com/xanzy/go-gitlab v0.96.0 h1:LGkZ+wSNMRtHIBaYE4Hq3dZVjprwHv3Y1+rhKU3WETs=
github.com/xanzy/go-gitlab v0.96.0/go.mod h1:ETg8tcj4OhrB84UEgeE8dSuV/0h4BBL1uOV/qK0vlyI=
github.com/xanzy/go-gitlab v0.98.0 h1:psTMbnA0vSo512M8WUpM5YIFPxrdQ/11V0y/5SdzIIg=
github.com/xanzy/go-gitlab v0.98.0/go.mod h1:ETg8tcj4OhrB84UEgeE8dSuV/0h4BBL1uOV/qK0vlyI=
github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=

View File

@@ -16,6 +16,7 @@ type AuditEvent struct {
EntityType string `json:"entity_type"`
Details AuditEventDetails `json:"details"`
CreatedAt *time.Time `json:"created_at"`
EventType string `json:"event_type"`
}
// AuditEventDetails represents the details portion of an audit event for
@@ -33,6 +34,8 @@ type AuditEventDetails struct {
Remove string `json:"remove"`
CustomMessage string `json:"custom_message"`
AuthorName string `json:"author_name"`
AuthorEmail string `json:"author_email"`
AuthorClass string `json:"author_class"`
TargetID interface{} `json:"target_id"`
TargetType string `json:"target_type"`
TargetDetails string `json:"target_details"`

View File

@@ -126,9 +126,10 @@ func (s *GroupsService) ListAllGroupMembers(gid interface{}, opt *ListGroupMembe
// GitLab API docs:
// https://docs.gitlab.com/ee/api/members.html#add-a-member-to-a-group-or-project
type AddGroupMemberOptions struct {
UserID *int `url:"user_id,omitempty" json:"user_id,omitempty"`
AccessLevel *AccessLevelValue `url:"access_level,omitempty" json:"access_level,omitempty"`
ExpiresAt *string `url:"expires_at,omitempty" json:"expires_at"`
UserID *int `url:"user_id,omitempty" json:"user_id,omitempty"`
AccessLevel *AccessLevelValue `url:"access_level,omitempty" json:"access_level,omitempty"`
ExpiresAt *string `url:"expires_at,omitempty" json:"expires_at"`
MemberRoleID *int `url:"member_role_id,omitempty" json:"member_role_id,omitempty"`
}
// GetGroupMember gets a member of a group.
@@ -305,8 +306,9 @@ func (s *GroupMembersService) DeleteShareWithGroup(gid interface{}, groupID int,
// GitLab API docs:
// https://docs.gitlab.com/ee/api/members.html#edit-a-member-of-a-group-or-project
type EditGroupMemberOptions struct {
AccessLevel *AccessLevelValue `url:"access_level,omitempty" json:"access_level,omitempty"`
ExpiresAt *string `url:"expires_at,omitempty" json:"expires_at,omitempty"`
AccessLevel *AccessLevelValue `url:"access_level,omitempty" json:"access_level,omitempty"`
ExpiresAt *string `url:"expires_at,omitempty" json:"expires_at,omitempty"`
MemberRoleID *int `url:"member_role_id,omitempty" json:"member_role_id,omitempty"`
}
// EditGroupMember updates a member of a group.

View File

@@ -43,6 +43,7 @@ type GroupVariable struct {
Masked bool `json:"masked"`
Raw bool `json:"raw"`
EnvironmentScope string `json:"environment_scope"`
Description string `json:"description"`
}
func (v GroupVariable) String() string {
@@ -114,11 +115,12 @@ func (s *GroupVariablesService) GetVariable(gid interface{}, key string, options
type CreateGroupVariableOptions struct {
Key *string `url:"key,omitempty" json:"key,omitempty"`
Value *string `url:"value,omitempty" json:"value,omitempty"`
VariableType *VariableTypeValue `url:"variable_type,omitempty" json:"variable_type,omitempty"`
Protected *bool `url:"protected,omitempty" json:"protected,omitempty"`
Masked *bool `url:"masked,omitempty" json:"masked,omitempty"`
Raw *bool `url:"raw,omitempty" json:"raw,omitempty"`
Description *string `url:"description,omitempty" json:"description,omitempty"`
EnvironmentScope *string `url:"environment_scope,omitempty" json:"environment_scope,omitempty"`
Masked *bool `url:"masked,omitempty" json:"masked,omitempty"`
Protected *bool `url:"protected,omitempty" json:"protected,omitempty"`
Raw *bool `url:"raw,omitempty" json:"raw,omitempty"`
VariableType *VariableTypeValue `url:"variable_type,omitempty" json:"variable_type,omitempty"`
}
// CreateVariable creates a new group variable.
@@ -153,11 +155,12 @@ func (s *GroupVariablesService) CreateVariable(gid interface{}, opt *CreateGroup
// https://docs.gitlab.com/ee/api/group_level_variables.html#update-variable
type UpdateGroupVariableOptions struct {
Value *string `url:"value,omitempty" json:"value,omitempty"`
VariableType *VariableTypeValue `url:"variable_type,omitempty" json:"variable_type,omitempty"`
Protected *bool `url:"protected,omitempty" json:"protected,omitempty"`
Masked *bool `url:"masked,omitempty" json:"masked,omitempty"`
Raw *bool `url:"raw,omitempty" json:"raw,omitempty"`
Description *string `url:"description,omitempty" json:"description,omitempty"`
EnvironmentScope *string `url:"environment_scope,omitempty" json:"environment_scope,omitempty"`
Masked *bool `url:"masked,omitempty" json:"masked,omitempty"`
Protected *bool `url:"protected,omitempty" json:"protected,omitempty"`
Raw *bool `url:"raw,omitempty" json:"raw,omitempty"`
VariableType *VariableTypeValue `url:"variable_type,omitempty" json:"variable_type,omitempty"`
}
// UpdateVariable updates the position of an existing

View File

@@ -42,6 +42,7 @@ type InstanceVariable struct {
Protected bool `json:"protected"`
Masked bool `json:"masked"`
Raw bool `json:"raw"`
Description string `json:"description"`
}
func (v InstanceVariable) String() string {
@@ -105,10 +106,11 @@ func (s *InstanceVariablesService) GetVariable(key string, options ...RequestOpt
type CreateInstanceVariableOptions struct {
Key *string `url:"key,omitempty" json:"key,omitempty"`
Value *string `url:"value,omitempty" json:"value,omitempty"`
VariableType *VariableTypeValue `url:"variable_type,omitempty" json:"variable_type,omitempty"`
Protected *bool `url:"protected,omitempty" json:"protected,omitempty"`
Description *string `url:"description,omitempty" json:"description,omitempty"`
Masked *bool `url:"masked,omitempty" json:"masked,omitempty"`
Protected *bool `url:"protected,omitempty" json:"protected,omitempty"`
Raw *bool `url:"raw,omitempty" json:"raw,omitempty"`
VariableType *VariableTypeValue `url:"variable_type,omitempty" json:"variable_type,omitempty"`
}
// CreateVariable creates a new instance level CI variable.
@@ -139,10 +141,11 @@ func (s *InstanceVariablesService) CreateVariable(opt *CreateInstanceVariableOpt
// https://docs.gitlab.com/ee/api/instance_level_ci_variables.html#update-instance-variable
type UpdateInstanceVariableOptions struct {
Value *string `url:"value,omitempty" json:"value,omitempty"`
VariableType *VariableTypeValue `url:"variable_type,omitempty" json:"variable_type,omitempty"`
Protected *bool `url:"protected,omitempty" json:"protected,omitempty"`
Description *string `url:"description,omitempty" json:"description,omitempty"`
Masked *bool `url:"masked,omitempty" json:"masked,omitempty"`
Protected *bool `url:"protected,omitempty" json:"protected,omitempty"`
Raw *bool `url:"raw,omitempty" json:"raw,omitempty"`
VariableType *VariableTypeValue `url:"variable_type,omitempty" json:"variable_type,omitempty"`
}
// UpdateVariable updates the position of an existing

View File

@@ -149,9 +149,10 @@ func (s *ProjectMembersService) GetInheritedProjectMember(pid interface{}, user
// GitLab API docs:
// https://docs.gitlab.com/ee/api/members.html#add-a-member-to-a-group-or-project
type AddProjectMemberOptions struct {
UserID interface{} `url:"user_id,omitempty" json:"user_id,omitempty"`
AccessLevel *AccessLevelValue `url:"access_level,omitempty" json:"access_level,omitempty"`
ExpiresAt *string `url:"expires_at,omitempty" json:"expires_at"`
UserID interface{} `url:"user_id,omitempty" json:"user_id,omitempty"`
AccessLevel *AccessLevelValue `url:"access_level,omitempty" json:"access_level,omitempty"`
ExpiresAt *string `url:"expires_at,omitempty" json:"expires_at"`
MemberRoleID *int `url:"member_role_id,omitempty" json:"member_role_id,omitempty"`
}
// AddProjectMember adds a user to a project team. This is an idempotent
@@ -187,8 +188,9 @@ func (s *ProjectMembersService) AddProjectMember(pid interface{}, opt *AddProjec
// GitLab API docs:
// https://docs.gitlab.com/ee/api/members.html#edit-a-member-of-a-group-or-project
type EditProjectMemberOptions struct {
AccessLevel *AccessLevelValue `url:"access_level,omitempty" json:"access_level,omitempty"`
ExpiresAt *string `url:"expires_at,omitempty" json:"expires_at,omitempty"`
AccessLevel *AccessLevelValue `url:"access_level,omitempty" json:"access_level,omitempty"`
ExpiresAt *string `url:"expires_at,omitempty" json:"expires_at,omitempty"`
MemberRoleID *int `url:"member_role_id,omitempty" json:"member_role_id,omitempty"`
}
// EditProjectMember updates a project team member to a specified access level..

View File

@@ -135,10 +135,12 @@ type Project struct {
ImportError string `json:"import_error"`
CIDefaultGitDepth int `json:"ci_default_git_depth"`
CIForwardDeploymentEnabled bool `json:"ci_forward_deployment_enabled"`
CIForwardDeploymentRollbackAllowed bool `json:"ci_forward_deployment_rollback_allowed"`
CISeperateCache bool `json:"ci_separated_caches"`
CIJobTokenScopeEnabled bool `json:"ci_job_token_scope_enabled"`
CIOptInJWT bool `json:"ci_opt_in_jwt"`
CIAllowForkPipelinesToRunInParentProject bool `json:"ci_allow_fork_pipelines_to_run_in_parent_project"`
CIRestrictPipelineCancellationRole AccessControlValue `json:"ci_restrict_pipeline_cancellation_role"`
PublicJobs bool `json:"public_jobs"`
BuildTimeout int `json:"build_timeout"`
AutoCancelPendingPipelines string `json:"auto_cancel_pending_pipelines"`
@@ -841,7 +843,9 @@ type EditProjectOptions struct {
CIConfigPath *string `url:"ci_config_path,omitempty" json:"ci_config_path,omitempty"`
CIDefaultGitDepth *int `url:"ci_default_git_depth,omitempty" json:"ci_default_git_depth,omitempty"`
CIForwardDeploymentEnabled *bool `url:"ci_forward_deployment_enabled,omitempty" json:"ci_forward_deployment_enabled,omitempty"`
CIForwardDeploymentRollbackAllowed *bool `url:"ci_forward_deployment_rollback_allowed,omitempty" json:"ci_forward_deployment_rollback_allowed,omitempty"`
CISeperateCache *bool `url:"ci_separated_caches,omitempty" json:"ci_separated_caches,omitempty"`
CIRestrictPipelineCancellationRole *AccessControlValue `url:"ci_restrict_pipeline_cancellation_role,omitempty" json:"ci_restrict_pipeline_cancellation_role,omitempty"`
ContainerExpirationPolicyAttributes *ContainerExpirationPolicyAttributes `url:"container_expiration_policy_attributes,omitempty" json:"container_expiration_policy_attributes,omitempty"`
ContainerRegistryAccessLevel *AccessControlValue `url:"container_registry_access_level,omitempty" json:"container_registry_access_level,omitempty"`
DefaultBranch *string `url:"default_branch,omitempty" json:"default_branch,omitempty"`

View File

@@ -242,7 +242,7 @@ func (s *ProtectedEnvironmentsService) UpdateProtectedEnvironments(pid interface
if err != nil {
return nil, nil, err
}
u := fmt.Sprintf("projects/%s/protected_environments/%s", PathEscape(project), environment)
u := fmt.Sprintf("projects/%s/protected_environments/%s", PathEscape(project), PathEscape(environment))
req, err := s.client.NewRequest(http.MethodPut, u, opt, options)
if err != nil {

View File

@@ -174,7 +174,9 @@ func (b FileBlameRange) String() string {
// GitLab API docs:
// https://docs.gitlab.com/ee/api/repository_files.html#get-file-blame-from-repository
type GetFileBlameOptions struct {
Ref *string `url:"ref,omitempty" json:"ref,omitempty"`
Ref *string `url:"ref,omitempty" json:"ref,omitempty"`
RangeStart *int `url:"range[start],omitempty" json:"range[start],omitempty"`
RangeEnd *int `url:"range[end],omitempty" json:"range[end],omitempty"`
}
// GetFileBlame allows you to receive blame information. Each blame range

View File

@@ -27,14 +27,14 @@ import (
// ServicesService handles communication with the services related methods of
// the GitLab API.
//
// GitLab API docs: https://docs.gitlab.com/ee/api/services.html
// GitLab API docs: https://docs.gitlab.com/ee/api/integrations.html
type ServicesService struct {
client *Client
}
// Service represents a GitLab service.
//
// GitLab API docs: https://docs.gitlab.com/ee/api/services.html
// GitLab API docs: https://docs.gitlab.com/ee/api/integrations.html
type Service struct {
ID int `json:"id"`
Title string `json:"title"`
@@ -61,7 +61,7 @@ type Service struct {
// ListServices gets a list of all active services.
//
// GitLab API docs: https://docs.gitlab.com/ee/api/services.html#list-all-active-services
// GitLab API docs: https://docs.gitlab.com/ee/api/integrations.html#list-all-active-services
func (s *ServicesService) ListServices(pid interface{}, options ...RequestOptionFunc) ([]*Service, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -86,7 +86,7 @@ func (s *ServicesService) ListServices(pid interface{}, options ...RequestOption
// CustomIssueTrackerService represents Custom Issue Tracker service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#custom-issue-tracker
// https://docs.gitlab.com/ee/api/integrations.html#custom-issue-tracker
type CustomIssueTrackerService struct {
Service
Properties *CustomIssueTrackerServiceProperties `json:"properties"`
@@ -95,7 +95,7 @@ type CustomIssueTrackerService struct {
// CustomIssueTrackerServiceProperties represents Custom Issue Tracker specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#custom-issue-tracker
// https://docs.gitlab.com/ee/api/integrations.html#custom-issue-tracker
type CustomIssueTrackerServiceProperties struct {
ProjectURL string `json:"project_url,omitempty"`
IssuesURL string `json:"issues_url,omitempty"`
@@ -105,7 +105,7 @@ type CustomIssueTrackerServiceProperties struct {
// GetCustomIssueTrackerService gets Custom Issue Tracker service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-custom-issue-tracker-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-custom-issue-tracker-service-settings
func (s *ServicesService) GetCustomIssueTrackerService(pid interface{}, options ...RequestOptionFunc) (*CustomIssueTrackerService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -131,7 +131,7 @@ func (s *ServicesService) GetCustomIssueTrackerService(pid interface{}, options
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-custom-issue-tracker-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-custom-issue-tracker-service
type SetCustomIssueTrackerServiceOptions struct {
NewIssueURL *string `url:"new_issue_url,omitempty" json:"new_issue_url,omitempty"`
IssuesURL *string `url:"issues_url,omitempty" json:"issues_url,omitempty"`
@@ -144,7 +144,7 @@ type SetCustomIssueTrackerServiceOptions struct {
// SetCustomIssueTrackerService sets Custom Issue Tracker service for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-custom-issue-tracker-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-custom-issue-tracker-service
func (s *ServicesService) SetCustomIssueTrackerService(pid interface{}, opt *SetCustomIssueTrackerServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -163,7 +163,7 @@ func (s *ServicesService) SetCustomIssueTrackerService(pid interface{}, opt *Set
// DeleteCustomIssueTrackerService deletes Custom Issue Tracker service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-custom-issue-tracker-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-custom-issue-tracker-service
func (s *ServicesService) DeleteCustomIssueTrackerService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -182,7 +182,7 @@ func (s *ServicesService) DeleteCustomIssueTrackerService(pid interface{}, optio
// DataDogService represents DataDog service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#datadog
// https://docs.gitlab.com/ee/api/integrations.html#datadog
type DataDogService struct {
Service
Properties *DataDogServiceProperties `json:"properties"`
@@ -191,7 +191,7 @@ type DataDogService struct {
// DataDogServiceProperties represents DataDog specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#datadog
// https://docs.gitlab.com/ee/api/integrations.html#datadog
type DataDogServiceProperties struct {
APIURL string `url:"api_url,omitempty" json:"api_url,omitempty"`
DataDogEnv string `url:"datadog_env,omitempty" json:"datadog_env,omitempty"`
@@ -204,7 +204,7 @@ type DataDogServiceProperties struct {
// GetDataDogService gets DataDog service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-datadog-integration-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-datadog-integration-settings
func (s *ServicesService) GetDataDogService(pid interface{}, options ...RequestOptionFunc) (*DataDogService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -230,7 +230,7 @@ func (s *ServicesService) GetDataDogService(pid interface{}, options ...RequestO
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-datadog-integration
// https://docs.gitlab.com/ee/api/integrations.html#createedit-datadog-integration
type SetDataDogServiceOptions struct {
APIKey *string `url:"api_key,omitempty" json:"api_key,omitempty"`
APIURL *string `url:"api_url,omitempty" json:"api_url,omitempty"`
@@ -244,7 +244,7 @@ type SetDataDogServiceOptions struct {
// SetDataDogService sets DataDog service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-datadog-integration
// https://docs.gitlab.com/ee/api/integrations.html#createedit-datadog-integration
func (s *ServicesService) SetDataDogService(pid interface{}, opt *SetDataDogServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -263,7 +263,7 @@ func (s *ServicesService) SetDataDogService(pid interface{}, opt *SetDataDogServ
// DeleteDataDogService deletes the DataDog service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#disable-datadog-integration
// https://docs.gitlab.com/ee/api/integrations.html#disable-datadog-integration
func (s *ServicesService) DeleteDataDogService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -282,7 +282,7 @@ func (s *ServicesService) DeleteDataDogService(pid interface{}, options ...Reque
// DiscordService represents Discord service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#discord
// https://docs.gitlab.com/ee/api/integrations.html#discord
type DiscordService struct {
Service
Properties *DiscordServiceProperties `json:"properties"`
@@ -291,7 +291,7 @@ type DiscordService struct {
// DiscordServiceProperties represents Discord specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#discord
// https://docs.gitlab.com/ee/api/integrations.html#discord
type DiscordServiceProperties struct {
BranchesToBeNotified string `url:"branches_to_be_notified,omitempty" json:"branches_to_be_notified,omitempty"`
NotifyOnlyBrokenPipelines bool `url:"notify_only_broken_pipelines,omitempty" json:"notify_only_broken_pipelines,omitempty"`
@@ -300,7 +300,7 @@ type DiscordServiceProperties struct {
// GetDiscordService gets Discord service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-discord-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-discord-service-settings
func (s *ServicesService) GetDiscordService(pid interface{}, options ...RequestOptionFunc) (*DiscordService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -326,7 +326,7 @@ func (s *ServicesService) GetDiscordService(pid interface{}, options ...RequestO
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-discord-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-discord-service
type SetDiscordServiceOptions struct {
WebHook *string `url:"webhook,omitempty" json:"webhook,omitempty"`
BranchesToBeNotified *string `url:"branches_to_be_notified,omitempty" json:"branches_to_be_notified,omitempty"`
@@ -345,7 +345,7 @@ type SetDiscordServiceOptions struct {
// SetDiscordService sets Discord service for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-discord-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-discord-service
func (s *ServicesService) SetDiscordService(pid interface{}, opt *SetDiscordServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -364,7 +364,7 @@ func (s *ServicesService) SetDiscordService(pid interface{}, opt *SetDiscordServ
// DeleteDiscordService deletes Discord service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-discord-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-discord-service
func (s *ServicesService) DeleteDiscordService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -383,7 +383,7 @@ func (s *ServicesService) DeleteDiscordService(pid interface{}, options ...Reque
// DroneCIService represents Drone CI service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#drone-ci
// https://docs.gitlab.com/ee/api/integrations.html#drone-ci
type DroneCIService struct {
Service
Properties *DroneCIServiceProperties `json:"properties"`
@@ -392,7 +392,7 @@ type DroneCIService struct {
// DroneCIServiceProperties represents Drone CI specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#drone-ci
// https://docs.gitlab.com/ee/api/integrations.html#drone-ci
type DroneCIServiceProperties struct {
Token string `json:"token"`
DroneURL string `json:"drone_url"`
@@ -402,7 +402,7 @@ type DroneCIServiceProperties struct {
// GetDroneCIService gets Drone CI service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-drone-ci-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-drone-ci-service-settings
func (s *ServicesService) GetDroneCIService(pid interface{}, options ...RequestOptionFunc) (*DroneCIService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -428,17 +428,20 @@ func (s *ServicesService) GetDroneCIService(pid interface{}, options ...RequestO
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-drone-ci-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-drone-ci-service
type SetDroneCIServiceOptions struct {
Token *string `url:"token,omitempty" json:"token,omitempty"`
DroneURL *string `url:"drone_url,omitempty" json:"drone_url,omitempty"`
EnableSSLVerification *bool `url:"enable_ssl_verification,omitempty" json:"enable_ssl_verification,omitempty"`
PushEvents *bool `url:"push_events,omitempty" json:"push_events,omitempty"`
MergeRequestsEvents *bool `url:"merge_requests_events,omitempty" json:"merge_requests_events,omitempty"`
TagPushEvents *bool `url:"tag_push_events,omitempty" json:"tag_push_events,omitempty"`
}
// SetDroneCIService sets Drone CI service for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-drone-ci-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-drone-ci-service
func (s *ServicesService) SetDroneCIService(pid interface{}, opt *SetDroneCIServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -457,7 +460,7 @@ func (s *ServicesService) SetDroneCIService(pid interface{}, opt *SetDroneCIServ
// DeleteDroneCIService deletes Drone CI service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-drone-ci-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-drone-ci-service
func (s *ServicesService) DeleteDroneCIService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -575,7 +578,7 @@ func (s *ServicesService) DeleteEmailsOnPushService(pid interface{}, options ...
// ExternalWikiService represents External Wiki service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#external-wiki
// https://docs.gitlab.com/ee/api/integrations.html#external-wiki
type ExternalWikiService struct {
Service
Properties *ExternalWikiServiceProperties `json:"properties"`
@@ -584,7 +587,7 @@ type ExternalWikiService struct {
// ExternalWikiServiceProperties represents External Wiki specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#external-wiki
// https://docs.gitlab.com/ee/api/integrations.html#external-wiki
type ExternalWikiServiceProperties struct {
ExternalWikiURL string `json:"external_wiki_url"`
}
@@ -592,7 +595,7 @@ type ExternalWikiServiceProperties struct {
// GetExternalWikiService gets External Wiki service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-external-wiki-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-external-wiki-service-settings
func (s *ServicesService) GetExternalWikiService(pid interface{}, options ...RequestOptionFunc) (*ExternalWikiService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -618,7 +621,7 @@ func (s *ServicesService) GetExternalWikiService(pid interface{}, options ...Req
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-external-wiki-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-external-wiki-service
type SetExternalWikiServiceOptions struct {
ExternalWikiURL *string `url:"external_wiki_url,omitempty" json:"external_wiki_url,omitempty"`
}
@@ -626,7 +629,7 @@ type SetExternalWikiServiceOptions struct {
// SetExternalWikiService sets External Wiki service for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-external-wiki-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-external-wiki-service
func (s *ServicesService) SetExternalWikiService(pid interface{}, opt *SetExternalWikiServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -645,7 +648,7 @@ func (s *ServicesService) SetExternalWikiService(pid interface{}, opt *SetExtern
// DeleteExternalWikiService deletes External Wiki service for project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-external-wiki-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-external-wiki-service
func (s *ServicesService) DeleteExternalWikiService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -664,7 +667,7 @@ func (s *ServicesService) DeleteExternalWikiService(pid interface{}, options ...
// GithubService represents Github service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#github-premium
// https://docs.gitlab.com/ee/api/integrations.html#github-premium
type GithubService struct {
Service
Properties *GithubServiceProperties `json:"properties"`
@@ -673,7 +676,7 @@ type GithubService struct {
// GithubServiceProperties represents Github specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#github-premium
// https://docs.gitlab.com/ee/api/integrations.html#github-premium
type GithubServiceProperties struct {
RepositoryURL string `json:"repository_url"`
StaticContext bool `json:"static_context"`
@@ -682,7 +685,7 @@ type GithubServiceProperties struct {
// GetGithubService gets Github service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-github-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-github-service-settings
func (s *ServicesService) GetGithubService(pid interface{}, options ...RequestOptionFunc) (*GithubService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -708,7 +711,7 @@ func (s *ServicesService) GetGithubService(pid interface{}, options ...RequestOp
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-github-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-github-service
type SetGithubServiceOptions struct {
Token *string `url:"token,omitempty" json:"token,omitempty"`
RepositoryURL *string `url:"repository_url,omitempty" json:"repository_url,omitempty"`
@@ -718,7 +721,7 @@ type SetGithubServiceOptions struct {
// SetGithubService sets Github service for a project
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-github-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-github-service
func (s *ServicesService) SetGithubService(pid interface{}, opt *SetGithubServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -737,7 +740,7 @@ func (s *ServicesService) SetGithubService(pid interface{}, opt *SetGithubServic
// DeleteGithubService deletes Github service for a project
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-github-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-github-service
func (s *ServicesService) DeleteGithubService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -753,11 +756,137 @@ func (s *ServicesService) DeleteGithubService(pid interface{}, options ...Reques
return s.client.Do(req, nil)
}
// SlackApplication represents GitLab for slack application settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/integrations.html#gitlab-for-slack-app
type SlackApplication struct {
Service
Properties *SlackApplicationProperties `json:"properties"`
}
// SlackApplicationProperties represents GitLab for slack application specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/integrations.html#gitlab-for-slack-app
type SlackApplicationProperties struct {
Channel string `json:"channel"`
NotifyOnlyBrokenPipelines bool `json:"notify_only_broken_pipelines"`
BranchesToBeNotified string `json:"branches_to_be_notified"`
AlertEvents bool `json:"alert_events"`
IssuesEvents bool `json:"issues_events"`
ConfidentialIssuesEvents bool `json:"confidential_issues_events"`
MergeRequestsEvents bool `json:"merge_requests_events"`
NoteEvents bool `json:"note_events"`
ConfidentialNoteEvents bool `json:"confidential_note_events"`
DeploymentEvents bool `json:"deployment_events"`
IncidentsEvents bool `json:"incidents_events"`
PipelineEvents bool `json:"pipeline_events"`
PushEvents bool `json:"push_events"`
TagPushEvents bool `json:"tag_push_events"`
VulnerabilityEvents bool `json:"vulnerability_events"`
WikiPageEvents bool `json:"wiki_page_events"`
// Deprecated: This parameter has been replaced with BranchesToBeNotified.
NotifyOnlyDefaultBranch bool `json:"notify_only_default_branch"`
}
// GetSlackApplication gets the GitLab for Slack app integration settings for a
// project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/integrations.html#get-gitlab-for-slack-app-settings
func (s *ServicesService) GetSlackApplication(pid interface{}, options ...RequestOptionFunc) (*SlackApplication, *Response, error) {
project, err := parseID(pid)
if err != nil {
return nil, nil, err
}
u := fmt.Sprintf("projects/%s/integrations/gitlab-slack-application", PathEscape(project))
req, err := s.client.NewRequest(http.MethodGet, u, nil, options)
if err != nil {
return nil, nil, err
}
svc := new(SlackApplication)
resp, err := s.client.Do(req, svc)
if err != nil {
return nil, resp, err
}
return svc, resp, nil
}
// SetSlackApplicationOptions represents the available SetSlackApplication()
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/integrations.html#set-up-gitlab-for-slack-app
type SetSlackApplicationOptions struct {
Channel *string `url:"channel,omitempty" json:"channel,omitempty"`
NotifyOnlyBrokenPipelines *bool `url:"notify_only_broken_pipelines,omitempty" json:"notify_only_broken_pipelines,omitempty"`
BranchesToBeNotified *string `url:"branches_to_be_notified,omitempty" json:"branches_to_be_notified,omitempty"`
AlertEvents *bool `url:"alert_events,omitempty" json:"alert_events,omitempty"`
IssuesEvents *bool `url:"issues_events,omitempty" json:"issues_events,omitempty"`
ConfidentialIssuesEvents *bool `url:"confidential_issues_events,omitempty" json:"confidential_issues_events,omitempty"`
MergeRequestsEvents *bool `url:"merge_requests_events,omitempty" json:"merge_requests_events,omitempty"`
NoteEvents *bool `url:"note_events,omitempty" json:"note_events,omitempty"`
ConfidentialNoteEvents *bool `url:"confidential_note_events,omitempty" json:"confidential_note_events,omitempty"`
DeploymentEvents *bool `url:"deployment_events,omitempty" json:"deployment_events,omitempty"`
IncidentsEvents *bool `url:"incidents_events,omitempty" json:"incidents_events,omitempty"`
PipelineEvents *bool `url:"pipeline_events,omitempty" json:"pipeline_events,omitempty"`
PushEvents *bool `url:"push_events,omitempty" json:"push_events,omitempty"`
TagPushEvents *bool `url:"tag_push_events,omitempty" json:"tag_push_events,omitempty"`
VulnerabilityEvents *bool `url:"vulnerability_events,omitempty" json:"vulnerability_events,omitempty"`
WikiPageEvents *bool `url:"wiki_page_events,omitempty" json:"wiki_page_events,omitempty"`
// Deprecated: This parameter has been replaced with BranchesToBeNotified.
NotifyOnlyDefaultBranch *bool `url:"notify_only_default_branch,omitempty" json:"notify_only_default_branch,omitempty"`
}
// SetSlackApplication update the GitLab for Slack app integration for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/integrations.html#set-up-gitlab-for-slack-app
func (s *ServicesService) SetSlackApplication(pid interface{}, opt *SetSlackApplicationOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
return nil, err
}
u := fmt.Sprintf("projects/%s/integrations/gitlab-slack-application", PathEscape(project))
req, err := s.client.NewRequest(http.MethodPut, u, opt, options)
if err != nil {
return nil, err
}
return s.client.Do(req, nil)
}
// DisableSlackApplication disable the GitLab for Slack app integration for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/integrations.html#disable-gitlab-for-slack-app
func (s *ServicesService) DisableSlackApplication(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
return nil, err
}
u := fmt.Sprintf("projects/%s/integrations/gitlab-slack-application", PathEscape(project))
req, err := s.client.NewRequest(http.MethodDelete, u, nil, options)
if err != nil {
return nil, err
}
return s.client.Do(req, nil)
}
// SetGitLabCIServiceOptions represents the available SetGitLabCIService()
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#edit-gitlab-ci-service
// https://docs.gitlab.com/ee/api/integrations.html#edit-gitlab-ci-service
type SetGitLabCIServiceOptions struct {
Token *string `url:"token,omitempty" json:"token,omitempty"`
ProjectURL *string `url:"project_url,omitempty" json:"project_url,omitempty"`
@@ -766,7 +895,7 @@ type SetGitLabCIServiceOptions struct {
// SetGitLabCIService sets GitLab CI service for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#edit-gitlab-ci-service
// https://docs.gitlab.com/ee/api/integrations.html#edit-gitlab-ci-service
func (s *ServicesService) SetGitLabCIService(pid interface{}, opt *SetGitLabCIServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -785,7 +914,7 @@ func (s *ServicesService) SetGitLabCIService(pid interface{}, opt *SetGitLabCISe
// DeleteGitLabCIService deletes GitLab CI service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-gitlab-ci-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-gitlab-ci-service
func (s *ServicesService) DeleteGitLabCIService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -805,7 +934,7 @@ func (s *ServicesService) DeleteGitLabCIService(pid interface{}, options ...Requ
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#edit-hipchat-service
// https://docs.gitlab.com/ee/api/integrations.html#edit-hipchat-service
type SetHipChatServiceOptions struct {
Token *string `url:"token,omitempty" json:"token,omitempty" `
Room *string `url:"room,omitempty" json:"room,omitempty"`
@@ -814,7 +943,7 @@ type SetHipChatServiceOptions struct {
// SetHipChatService sets HipChat service for a project
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#edit-hipchat-service
// https://docs.gitlab.com/ee/api/integrations.html#edit-hipchat-service
func (s *ServicesService) SetHipChatService(pid interface{}, opt *SetHipChatServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -833,7 +962,7 @@ func (s *ServicesService) SetHipChatService(pid interface{}, opt *SetHipChatServ
// DeleteHipChatService deletes HipChat service for project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-hipchat-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-hipchat-service
func (s *ServicesService) DeleteHipChatService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -852,7 +981,7 @@ func (s *ServicesService) DeleteHipChatService(pid interface{}, options ...Reque
// JenkinsCIService represents Jenkins CI service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#jenkins-ci
// https://docs.gitlab.com/ee/api/integrations.html#jenkins-ci
type JenkinsCIService struct {
Service
Properties *JenkinsCIServiceProperties `json:"properties"`
@@ -861,7 +990,7 @@ type JenkinsCIService struct {
// JenkinsCIServiceProperties represents Jenkins CI specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#jenkins-ci
// https://docs.gitlab.com/ee/api/integrations.html#jenkins-ci
type JenkinsCIServiceProperties struct {
URL string `json:"jenkins_url"`
ProjectName string `json:"project_name"`
@@ -871,7 +1000,7 @@ type JenkinsCIServiceProperties struct {
// GetJenkinsCIService gets Jenkins CI service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-jenkins-ci-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-jenkins-ci-service-settings
func (s *ServicesService) GetJenkinsCIService(pid interface{}, options ...RequestOptionFunc) (*JenkinsCIService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -897,21 +1026,22 @@ func (s *ServicesService) GetJenkinsCIService(pid interface{}, options ...Reques
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#jenkins-ci
// https://docs.gitlab.com/ee/api/integrations.html#jenkins-ci
type SetJenkinsCIServiceOptions struct {
URL *string `url:"jenkins_url,omitempty" json:"jenkins_url,omitempty"`
ProjectName *string `url:"project_name,omitempty" json:"project_name,omitempty"`
Username *string `url:"username,omitempty" json:"username,omitempty"`
Password *string `url:"password,omitempty" json:"password,omitempty"`
PushEvents *bool `url:"push_events,omitempty" json:"push_events,omitempty"`
MergeRequestsEvents *bool `url:"merge_requests_events,omitempty" json:"merge_requests_events,omitempty"`
TagPushEvents *bool `url:"tag_push_events,omitempty" json:"tag_push_events,omitempty"`
URL *string `url:"jenkins_url,omitempty" json:"jenkins_url,omitempty"`
EnableSSLVerification *bool `url:"enable_ssl_verification,omitempty" json:"enable_ssl_verification,omitempty"`
ProjectName *string `url:"project_name,omitempty" json:"project_name,omitempty"`
Username *string `url:"username,omitempty" json:"username,omitempty"`
Password *string `url:"password,omitempty" json:"password,omitempty"`
PushEvents *bool `url:"push_events,omitempty" json:"push_events,omitempty"`
MergeRequestsEvents *bool `url:"merge_requests_events,omitempty" json:"merge_requests_events,omitempty"`
TagPushEvents *bool `url:"tag_push_events,omitempty" json:"tag_push_events,omitempty"`
}
// SetJenkinsCIService sets Jenkins service for a project
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#create-edit-jenkins-ci-service
// https://docs.gitlab.com/ee/api/integrations.html#create-edit-jenkins-ci-service
func (s *ServicesService) SetJenkinsCIService(pid interface{}, opt *SetJenkinsCIServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -930,7 +1060,7 @@ func (s *ServicesService) SetJenkinsCIService(pid interface{}, opt *SetJenkinsCI
// DeleteJenkinsCIService deletes Jenkins CI service for project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-jira-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-jira-service
func (s *ServicesService) DeleteJenkinsCIService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -949,7 +1079,7 @@ func (s *ServicesService) DeleteJenkinsCIService(pid interface{}, options ...Req
// JiraService represents Jira service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#jira
// https://docs.gitlab.com/ee/api/integrations.html#jira
type JiraService struct {
Service
Properties *JiraServiceProperties `json:"properties"`
@@ -958,7 +1088,7 @@ type JiraService struct {
// JiraServiceProperties represents Jira specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#jira
// https://docs.gitlab.com/ee/api/integrations.html#jira
type JiraServiceProperties struct {
URL string `json:"url"`
APIURL string `json:"api_url"`
@@ -1001,7 +1131,7 @@ func (p *JiraServiceProperties) UnmarshalJSON(b []byte) error {
// GetJiraService gets Jira service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-jira-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-jira-service-settings
func (s *ServicesService) GetJiraService(pid interface{}, options ...RequestOptionFunc) (*JiraService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1027,7 +1157,7 @@ func (s *ServicesService) GetJiraService(pid interface{}, options ...RequestOpti
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#edit-jira-service
// https://docs.gitlab.com/ee/api/integrations.html#edit-jira-service
type SetJiraServiceOptions struct {
URL *string `url:"url,omitempty" json:"url,omitempty"`
APIURL *string `url:"api_url,omitempty" json:"api_url,omitempty"`
@@ -1044,7 +1174,7 @@ type SetJiraServiceOptions struct {
// SetJiraService sets Jira service for a project
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#edit-jira-service
// https://docs.gitlab.com/ee/api/integrations.html#edit-jira-service
func (s *ServicesService) SetJiraService(pid interface{}, opt *SetJiraServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1063,7 +1193,7 @@ func (s *ServicesService) SetJiraService(pid interface{}, opt *SetJiraServiceOpt
// DeleteJiraService deletes Jira service for project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-jira-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-jira-service
func (s *ServicesService) DeleteJiraService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1082,7 +1212,7 @@ func (s *ServicesService) DeleteJiraService(pid interface{}, options ...RequestO
// MattermostService represents Mattermost service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#mattermost-notifications
// https://docs.gitlab.com/ee/api/integrations.html#mattermost-notifications
type MattermostService struct {
Service
Properties *MattermostServiceProperties `json:"properties"`
@@ -1091,7 +1221,7 @@ type MattermostService struct {
// MattermostServiceProperties represents Mattermost specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#mattermost-notifications
// https://docs.gitlab.com/ee/api/integrations.html#mattermost-notifications
type MattermostServiceProperties struct {
WebHook string `json:"webhook"`
Username string `json:"username"`
@@ -1113,7 +1243,7 @@ type MattermostServiceProperties struct {
// GetMattermostService gets Mattermost service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-slack-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-slack-service-settings
func (s *ServicesService) GetMattermostService(pid interface{}, options ...RequestOptionFunc) (*MattermostService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1139,7 +1269,7 @@ func (s *ServicesService) GetMattermostService(pid interface{}, options ...Reque
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-mattermost-notifications-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-mattermost-notifications-service
type SetMattermostServiceOptions struct {
WebHook *string `url:"webhook,omitempty" json:"webhook,omitempty"`
Username *string `url:"username,omitempty" json:"username,omitempty"`
@@ -1260,7 +1390,7 @@ func (s *ServicesService) DeleteMattermostSlashCommandsService(pid interface{},
// SetMattermostService sets Mattermost service for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-mattermost-notifications-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-mattermost-notifications-service
func (s *ServicesService) SetMattermostService(pid interface{}, opt *SetMattermostServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1279,7 +1409,7 @@ func (s *ServicesService) SetMattermostService(pid interface{}, opt *SetMattermo
// DeleteMattermostService deletes Mattermost service for project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-mattermost-notifications-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-mattermost-notifications-service
func (s *ServicesService) DeleteMattermostService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1298,7 +1428,7 @@ func (s *ServicesService) DeleteMattermostService(pid interface{}, options ...Re
// MicrosoftTeamsService represents Microsoft Teams service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#microsoft-teams
// https://docs.gitlab.com/ee/api/integrations.html#microsoft-teams
type MicrosoftTeamsService struct {
Service
Properties *MicrosoftTeamsServiceProperties `json:"properties"`
@@ -1307,7 +1437,7 @@ type MicrosoftTeamsService struct {
// MicrosoftTeamsServiceProperties represents Microsoft Teams specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#microsoft-teams
// https://docs.gitlab.com/ee/api/integrations.html#microsoft-teams
type MicrosoftTeamsServiceProperties struct {
WebHook string `json:"webhook"`
NotifyOnlyBrokenPipelines BoolValue `json:"notify_only_broken_pipelines"`
@@ -1325,7 +1455,7 @@ type MicrosoftTeamsServiceProperties struct {
// GetMicrosoftTeamsService gets MicrosoftTeams service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-microsoft-teams-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-microsoft-teams-service-settings
func (s *ServicesService) GetMicrosoftTeamsService(pid interface{}, options ...RequestOptionFunc) (*MicrosoftTeamsService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1351,7 +1481,7 @@ func (s *ServicesService) GetMicrosoftTeamsService(pid interface{}, options ...R
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#create-edit-microsoft-teams-service
// https://docs.gitlab.com/ee/api/integrations.html#create-edit-microsoft-teams-service
type SetMicrosoftTeamsServiceOptions struct {
WebHook *string `url:"webhook,omitempty" json:"webhook,omitempty"`
NotifyOnlyBrokenPipelines *bool `url:"notify_only_broken_pipelines,omitempty" json:"notify_only_broken_pipelines,omitempty"`
@@ -1370,7 +1500,7 @@ type SetMicrosoftTeamsServiceOptions struct {
// SetMicrosoftTeamsService sets Microsoft Teams service for a project
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#create-edit-microsoft-teams-service
// https://docs.gitlab.com/ee/api/integrations.html#create-edit-microsoft-teams-service
func (s *ServicesService) SetMicrosoftTeamsService(pid interface{}, opt *SetMicrosoftTeamsServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1388,7 +1518,7 @@ func (s *ServicesService) SetMicrosoftTeamsService(pid interface{}, opt *SetMicr
// DeleteMicrosoftTeamsService deletes Microsoft Teams service for project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-microsoft-teams-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-microsoft-teams-service
func (s *ServicesService) DeleteMicrosoftTeamsService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1407,7 +1537,7 @@ func (s *ServicesService) DeleteMicrosoftTeamsService(pid interface{}, options .
// PipelinesEmailService represents Pipelines Email service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#pipeline-emails
// https://docs.gitlab.com/ee/api/integrations.html#pipeline-emails
type PipelinesEmailService struct {
Service
Properties *PipelinesEmailProperties `json:"properties"`
@@ -1416,7 +1546,7 @@ type PipelinesEmailService struct {
// PipelinesEmailProperties represents PipelinesEmail specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#pipeline-emails
// https://docs.gitlab.com/ee/api/integrations.html#pipeline-emails
type PipelinesEmailProperties struct {
Recipients string `json:"recipients"`
NotifyOnlyBrokenPipelines BoolValue `json:"notify_only_broken_pipelines"`
@@ -1427,7 +1557,7 @@ type PipelinesEmailProperties struct {
// GetPipelinesEmailService gets Pipelines Email service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-pipeline-emails-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-pipeline-emails-service-settings
func (s *ServicesService) GetPipelinesEmailService(pid interface{}, options ...RequestOptionFunc) (*PipelinesEmailService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1453,7 +1583,7 @@ func (s *ServicesService) GetPipelinesEmailService(pid interface{}, options ...R
// SetPipelinesEmailService() options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#pipeline-emails
// https://docs.gitlab.com/ee/api/integrations.html#pipeline-emails
type SetPipelinesEmailServiceOptions struct {
Recipients *string `url:"recipients,omitempty" json:"recipients,omitempty"`
NotifyOnlyBrokenPipelines *bool `url:"notify_only_broken_pipelines,omitempty" json:"notify_only_broken_pipelines,omitempty"`
@@ -1466,7 +1596,7 @@ type SetPipelinesEmailServiceOptions struct {
// SetPipelinesEmailService sets Pipelines Email service for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#pipeline-emails
// https://docs.gitlab.com/ee/api/integrations.html#pipeline-emails
func (s *ServicesService) SetPipelinesEmailService(pid interface{}, opt *SetPipelinesEmailServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1485,7 +1615,7 @@ func (s *ServicesService) SetPipelinesEmailService(pid interface{}, opt *SetPipe
// DeletePipelinesEmailService deletes Pipelines Email service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-pipeline-emails-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-pipeline-emails-service
func (s *ServicesService) DeletePipelinesEmailService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1504,7 +1634,7 @@ func (s *ServicesService) DeletePipelinesEmailService(pid interface{}, options .
// PrometheusService represents Prometheus service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#prometheus
// https://docs.gitlab.com/ee/api/integrations.html#prometheus
type PrometheusService struct {
Service
Properties *PrometheusServiceProperties `json:"properties"`
@@ -1513,7 +1643,7 @@ type PrometheusService struct {
// PrometheusServiceProperties represents Prometheus specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#prometheus
// https://docs.gitlab.com/ee/api/integrations.html#prometheus
type PrometheusServiceProperties struct {
APIURL string `json:"api_url"`
GoogleIAPAudienceClientID string `json:"google_iap_audience_client_id"`
@@ -1523,7 +1653,7 @@ type PrometheusServiceProperties struct {
// GetPrometheusService gets Prometheus service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-prometheus-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-prometheus-service-settings
func (s *ServicesService) GetPrometheusService(pid interface{}, options ...RequestOptionFunc) (*PrometheusService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1549,7 +1679,7 @@ func (s *ServicesService) GetPrometheusService(pid interface{}, options ...Reque
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-prometheus-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-prometheus-service
type SetPrometheusServiceOptions struct {
APIURL *string `url:"api_url,omitempty" json:"api_url,omitempty"`
GoogleIAPAudienceClientID *string `url:"google_iap_audience_client_id,omitempty" json:"google_iap_audience_client_id,omitempty"`
@@ -1559,7 +1689,7 @@ type SetPrometheusServiceOptions struct {
// SetPrometheusService sets Prometheus service for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-prometheus-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-prometheus-service
func (s *ServicesService) SetPrometheusService(pid interface{}, opt *SetPrometheusServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1578,7 +1708,7 @@ func (s *ServicesService) SetPrometheusService(pid interface{}, opt *SetPromethe
// DeletePrometheusService deletes Prometheus service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-prometheus-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-prometheus-service
func (s *ServicesService) DeletePrometheusService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1597,7 +1727,7 @@ func (s *ServicesService) DeletePrometheusService(pid interface{}, options ...Re
// SlackService represents Slack service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#slack
// https://docs.gitlab.com/ee/api/integrations.html#slack
type SlackService struct {
Service
Properties *SlackServiceProperties `json:"properties"`
@@ -1606,7 +1736,7 @@ type SlackService struct {
// SlackServiceProperties represents Slack specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#slack
// https://docs.gitlab.com/ee/api/integrations.html#slack
type SlackServiceProperties struct {
WebHook string `json:"webhook"`
Username string `json:"username"`
@@ -1631,7 +1761,7 @@ type SlackServiceProperties struct {
// GetSlackService gets Slack service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-slack-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-slack-service-settings
func (s *ServicesService) GetSlackService(pid interface{}, options ...RequestOptionFunc) (*SlackService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1657,7 +1787,7 @@ func (s *ServicesService) GetSlackService(pid interface{}, options ...RequestOpt
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#edit-slack-service
// https://docs.gitlab.com/ee/api/integrations.html#edit-slack-service
type SetSlackServiceOptions struct {
WebHook *string `url:"webhook,omitempty" json:"webhook,omitempty"`
Username *string `url:"username,omitempty" json:"username,omitempty"`
@@ -1692,7 +1822,7 @@ type SetSlackServiceOptions struct {
// SetSlackService sets Slack service for a project
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#edit-slack-service
// https://docs.gitlab.com/ee/api/integrations.html#edit-slack-service
func (s *ServicesService) SetSlackService(pid interface{}, opt *SetSlackServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1711,7 +1841,7 @@ func (s *ServicesService) SetSlackService(pid interface{}, opt *SetSlackServiceO
// DeleteSlackService deletes Slack service for project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-slack-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-slack-service
func (s *ServicesService) DeleteSlackService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1773,7 +1903,7 @@ func (s *ServicesService) GetSlackSlashCommandsService(pid interface{}, options
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-slack-slash-command-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-slack-slash-command-service
type SetSlackSlashCommandsServiceOptions struct {
Token *string `url:"token,omitempty" json:"token,omitempty"`
}
@@ -1781,7 +1911,7 @@ type SetSlackSlashCommandsServiceOptions struct {
// SetSlackSlashCommandsService sets Slack slash commands service for a project
//
// GitLab API docs:
// https://docs.gitlab.com/13.12/ee/api/services.html#createedit-slack-slash-command-service
// https://docs.gitlab.com/13.12/ee/api/integrations.html#createedit-slack-slash-command-service
func (s *ServicesService) SetSlackSlashCommandsService(pid interface{}, opt *SetSlackSlashCommandsServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1800,7 +1930,7 @@ func (s *ServicesService) SetSlackSlashCommandsService(pid interface{}, opt *Set
// DeleteSlackSlashCommandsService deletes Slack slash commands service for project.
//
// GitLab API docs:
// https://docs.gitlab.com/13.12/ee/api/services.html#delete-slack-slash-command-service
// https://docs.gitlab.com/13.12/ee/api/integrations.html#delete-slack-slash-command-service
func (s *ServicesService) DeleteSlackSlashCommandsService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1922,7 +2052,7 @@ func (s *ServicesService) DeleteTelegramService(pid interface{}, options ...Requ
// YouTrackService represents YouTrack service settings.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#youtrack
// https://docs.gitlab.com/ee/api/integrations.html#youtrack
type YouTrackService struct {
Service
Properties *YouTrackServiceProperties `json:"properties"`
@@ -1931,7 +2061,7 @@ type YouTrackService struct {
// YouTrackServiceProperties represents YouTrack specific properties.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#youtrack
// https://docs.gitlab.com/ee/api/integrations.html#youtrack
type YouTrackServiceProperties struct {
IssuesURL string `json:"issues_url"`
ProjectURL string `json:"project_url"`
@@ -1942,7 +2072,7 @@ type YouTrackServiceProperties struct {
// GetYouTrackService gets YouTrack service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#get-youtrack-service-settings
// https://docs.gitlab.com/ee/api/integrations.html#get-youtrack-service-settings
func (s *ServicesService) GetYouTrackService(pid interface{}, options ...RequestOptionFunc) (*YouTrackService, *Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1968,7 +2098,7 @@ func (s *ServicesService) GetYouTrackService(pid interface{}, options ...Request
// options.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-youtrack-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-youtrack-service
type SetYouTrackServiceOptions struct {
IssuesURL *string `url:"issues_url,omitempty" json:"issues_url,omitempty"`
ProjectURL *string `url:"project_url,omitempty" json:"project_url,omitempty"`
@@ -1979,7 +2109,7 @@ type SetYouTrackServiceOptions struct {
// SetYouTrackService sets YouTrack service for a project
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#createedit-youtrack-service
// https://docs.gitlab.com/ee/api/integrations.html#createedit-youtrack-service
func (s *ServicesService) SetYouTrackService(pid interface{}, opt *SetYouTrackServiceOptions, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {
@@ -1998,7 +2128,7 @@ func (s *ServicesService) SetYouTrackService(pid interface{}, opt *SetYouTrackSe
// DeleteYouTrackService deletes YouTrack service settings for a project.
//
// GitLab API docs:
// https://docs.gitlab.com/ee/api/services.html#delete-youtrack-service
// https://docs.gitlab.com/ee/api/integrations.html#delete-youtrack-service
func (s *ServicesService) DeleteYouTrackService(pid interface{}, options ...RequestOptionFunc) (*Response, error) {
project, err := parseID(pid)
if err != nil {

View File

@@ -20,7 +20,6 @@ import (
"bytes"
"fmt"
"net/http"
"net/url"
"time"
)
@@ -136,7 +135,7 @@ func (s *SnippetsService) SnippetContent(snippet int, options ...RequestOptionFu
// GitLab API docs:
// https://docs.gitlab.com/ee/api/snippets.html#snippet-repository-file-content
func (s *SnippetsService) SnippetFileContent(snippet int, ref, filename string, options ...RequestOptionFunc) ([]byte, *Response, error) {
filepath := url.QueryEscape(filename)
filepath := PathEscape(filename)
u := fmt.Sprintf("snippets/%d/files/%s/%s/raw", snippet, ref, filepath)
req, err := s.client.NewRequest(http.MethodGet, u, nil, options)

View File

@@ -58,8 +58,8 @@ type TodoTarget struct {
CreatedAt *time.Time `json:"created_at"`
Description string `json:"description"`
Downvotes int `json:"downvotes"`
ID int `json:"id"`
IID interface{} `json:"iid"`
ID interface{} `json:"id"`
IID int `json:"iid"`
Labels []string `json:"labels"`
Milestone *Milestone `json:"milestone"`
ProjectID int `json:"project_id"`

View File

@@ -28,7 +28,7 @@ import (
"time"
)
// Ptr is a helper returns a pointer to v.
// Ptr is a helper that returns a pointer to v.
func Ptr[T any](v T) *T {
return &v
}

2
vendor/modules.txt vendored
View File

@@ -199,7 +199,7 @@ github.com/spf13/viper/internal/features
# github.com/subosito/gotenv v1.6.0
## explicit; go 1.18
github.com/subosito/gotenv
# github.com/xanzy/go-gitlab v0.96.0
# github.com/xanzy/go-gitlab v0.98.0
## explicit; go 1.19
github.com/xanzy/go-gitlab
# go.uber.org/atomic v1.9.0