in internal/gitlab/release.go [158:175]
func (gc *Client) CreateRelease(ctx context.Context, createReleaseReq *CreateReleaseRequest) (*ReleaseResponse, error) {
body, err := json.Marshal(createReleaseReq)
if err != nil {
return nil, fmt.Errorf("failed to marshal request body: %w", err)
}
req, err := gc.request(ctx, http.MethodPost, fmt.Sprintf("/projects/%s/releases", gc.projectID), bytes.NewBuffer(body))
if err != nil {
return nil, fmt.Errorf("failed to create request: %w", err)
}
var response ReleaseResponse
if err := gc.makeRequest(req, &response); err != nil {
return nil, err
}
return &response, nil
}