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

Function convertWorkspaceAgentMetadata

coderd/workspaceagents.go:1917–1946  ·  view source on GitHub ↗
(db []database.WorkspaceAgentMetadatum)

Source from the content-addressed store, hash-verified

1915}
1916
1917func convertWorkspaceAgentMetadata(db []database.WorkspaceAgentMetadatum) []codersdk.WorkspaceAgentMetadata {
1918 // Sort the input database slice by DisplayOrder and then by Key before processing
1919 sort.Slice(db, func(i, j int) bool {
1920 if db[i].DisplayOrder == db[j].DisplayOrder {
1921 return db[i].Key < db[j].Key
1922 }
1923 return db[i].DisplayOrder < db[j].DisplayOrder
1924 })
1925
1926 // An empty array is easier for clients to handle than a null.
1927 result := make([]codersdk.WorkspaceAgentMetadata, len(db))
1928 for i, datum := range db {
1929 result[i] = codersdk.WorkspaceAgentMetadata{
1930 Result: codersdk.WorkspaceAgentMetadataResult{
1931 Value: datum.Value,
1932 Error: datum.Error,
1933 CollectedAt: datum.CollectedAt.UTC(),
1934 Age: int64(time.Since(datum.CollectedAt).Seconds()),
1935 },
1936 Description: codersdk.WorkspaceAgentMetadataDescription{
1937 DisplayName: datum.DisplayName,
1938 Key: datum.Key,
1939 Script: datum.Script,
1940 Interval: datum.Interval,
1941 Timeout: datum.Timeout,
1942 },
1943 }
1944 }
1945 return result
1946}
1947
1948// workspaceAgentsExternalAuth returns an access token for a given URL
1949// or finds a provider by ID.

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected