Help us shape the future of Go! Take the 2026 Go Developer Survey

securityscanprofiles

package
v2.7.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 27, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Overview

Package securityscanprofiles implements MCP tools for GitLab security scan profiles through the GraphQL API.

Security scan profiles bundle a security scanning configuration (for example the built-in dependency_scanning profile) that can be attached to, or detached from, projects and groups. The package attaches and detaches profiles, lists the per-project scan profile statuses, and renders the results as Markdown.

The package wraps the GitLab GraphQL security scan profile mutations and queries:

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ActionSpecs

func ActionSpecs(client *gitlabclient.Client) []toolutil.ActionSpec

ActionSpecs returns canonical specs for security scan profile actions.

func FormatListProjectStatusesMarkdown

func FormatListProjectStatusesMarkdown(out ListProjectStatusesOutput) string

FormatListProjectStatusesMarkdown renders per-project scan profile statuses as a Markdown table.

func FormatMutationMarkdown

func FormatMutationMarkdown(out MutationOutput) string

FormatMutationMarkdown renders an attach or detach confirmation as Markdown.

Types

type AttachInput

type AttachInput struct {
	SecurityScanProfileID string  `` /* 337-byte string literal not displayed */
	ProjectIDs            []int64 `json:"project_ids,omitempty" jsonschema:"Numeric IDs of the projects to attach the profile to"`
	GroupIDs              []int64 `json:"group_ids,omitempty" jsonschema:"Numeric IDs of the groups to attach the profile to"`
}

AttachInput holds parameters for attaching a security scan profile to projects and/or groups.

type DetachInput

type DetachInput struct {
	SecurityScanProfileID string  `` /* 284-byte string literal not displayed */
	ProjectIDs            []int64 `json:"project_ids,omitempty" jsonschema:"Numeric IDs of the projects to detach the profile from"`
	GroupIDs              []int64 `json:"group_ids,omitempty" jsonschema:"Numeric IDs of the groups to detach the profile from"`
}

DetachInput holds parameters for detaching a security scan profile from projects and/or groups.

type ListProjectStatusesInput

type ListProjectStatusesInput struct {
	ProjectFullPath string `` /* 162-byte string literal not displayed */
}

ListProjectStatusesInput holds parameters for listing the scan profile statuses of a project.

type ListProjectStatusesOutput

type ListProjectStatusesOutput struct {
	toolutil.HintableOutput
	ProjectFullPath string              `json:"project_full_path"`
	Statuses        []ScanProfileStatus `json:"statuses"`
}

ListProjectStatusesOutput contains the scan profile statuses for a project.

func ListProjectStatuses

ListProjectStatuses returns the scan profile statuses for a project.

type MutationOutput

type MutationOutput struct {
	toolutil.HintableOutput
	Status                string  `json:"status"`
	Message               string  `json:"message"`
	SecurityScanProfileID string  `json:"security_scan_profile_id"`
	ProjectIDs            []int64 `json:"project_ids,omitempty"`
	GroupIDs              []int64 `json:"group_ids,omitempty"`
}

MutationOutput confirms a security scan profile attach or detach operation and echoes the resolved targets.

func Attach

func Attach(ctx context.Context, client *gitlabclient.Client, input AttachInput) (MutationOutput, error)

Attach attaches a security scan profile to the given projects and/or groups.

func Detach

func Detach(ctx context.Context, client *gitlabclient.Client, input DetachInput) (MutationOutput, error)

Detach detaches a security scan profile from the given projects and/or groups.

type ScanProfile

type ScanProfile struct {
	ID       string `json:"id"`
	Name     string `json:"name"`
	ScanType string `json:"scan_type"`
}

ScanProfile represents a security scan profile.

type ScanProfileStatus

type ScanProfileStatus struct {
	Status      string      `json:"status"`
	ScanProfile ScanProfile `json:"scan_profile"`
}

ScanProfileStatus represents the status of a scan profile for a project.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL