MCPcopy Index your code
hub / github.com/coder/coder / Tasks

Function Tasks

coderd/searchquery/search.go:515–544  ·  view source on GitHub ↗

Tasks parses a search query for tasks. Supported query parameters: - owner: string (username, UUID, or 'me' for current user) - organization: string (organization UUID or name) - status: string (pending, initializing, active, paused, error, unknown)

(ctx context.Context, db database.Store, query string, actorID uuid.UUID)

Source from the content-addressed store, hash-verified

513// - organization: string (organization UUID or name)
514// - status: string (pending, initializing, active, paused, error, unknown)
515func Tasks(ctx context.Context, db database.Store, query string, actorID uuid.UUID) (database.ListTasksParams, []codersdk.ValidationError) {
516 filter := database.ListTasksParams{
517 OwnerID: uuid.Nil,
518 OrganizationID: uuid.Nil,
519 Status: "",
520 }
521
522 if query == "" {
523 return filter, nil
524 }
525
526 // Always lowercase for all searches.
527 query = strings.ToLower(query)
528 values, errors := searchTerms(query, func(term string, values url.Values) error {
529 // Default unqualified terms to owner
530 values.Add("owner", term)
531 return nil
532 })
533 if len(errors) > 0 {
534 return filter, errors
535 }
536
537 parser := httpapi.NewQueryParamParser()
538 filter.OwnerID = parseUser(ctx, db, parser, values, "owner", actorID)
539 filter.OrganizationID = parseOrganization(ctx, db, parser, values, "organization")
540 filter.Status = parser.String(values, "", "status")
541
542 parser.ErrorExcessParams(values)
543 return filter, parser.Errors
544}
545
546// Chats parses a search query for chats.
547//

Callers 2

tasksListMethod · 0.92
TestSearchTasksFunction · 0.92

Calls 7

StringMethod · 0.95
ErrorExcessParamsMethod · 0.95
NewQueryParamParserFunction · 0.92
searchTermsFunction · 0.85
parseUserFunction · 0.85
parseOrganizationFunction · 0.85
AddMethod · 0.65

Tested by 1

TestSearchTasksFunction · 0.74