pub struct Index {
    pub client: Client,
}
Expand description

Index Service

The index service is responsible for indexing tasks. The service ensures that tasks can be located by user-defined names.

As described in the service documentation, tasks are typically indexed via Pulse messages, so the most common use of API methods is to read from the index.

Slashes (/) aren’t allowed in index paths.

Fields

client: Client

The underlying client used to make API calls for this service.

Implementations

Create a new Index instance, based on the given client builder

Ping Server

Respond without doing anything. This endpoint is used to check that the service is up.

Generate an unsigned URL for the ping endpoint

Generate a signed URL for the ping endpoint

Load Balancer Heartbeat

Respond without doing anything. This endpoint is used to check that the service is up.

Generate an unsigned URL for the lbheartbeat endpoint

Generate a signed URL for the lbheartbeat endpoint

Taskcluster Version

Respond with the JSON version object. https://github.com/mozilla-services/Dockerflow/blob/main/docs/version_object.md

Generate an unsigned URL for the version endpoint

Generate a signed URL for the version endpoint

Find Indexed Task

Find a task by index path, returning the highest-rank task with that path. If no task exists for the given path, this API end-point will respond with a 404 status.

Generate an unsigned URL for the findTask endpoint

Generate a signed URL for the findTask endpoint

List Namespaces

List the namespaces immediately under a given namespace.

This endpoint lists up to 1000 namespaces. If more namespaces are present, a continuationToken will be returned, which can be given in the next request. For the initial request, the payload should be an empty JSON object.

Generate an unsigned URL for the listNamespaces endpoint

Generate a signed URL for the listNamespaces endpoint

List Tasks

List the tasks immediately under a given namespace.

This endpoint lists up to 1000 tasks. If more tasks are present, a continuationToken will be returned, which can be given in the next request. For the initial request, the payload should be an empty JSON object.

Remark, this end-point is designed for humans browsing for tasks, not services, as that makes little sense.

Generate an unsigned URL for the listTasks endpoint

Generate a signed URL for the listTasks endpoint

Insert Task into Index

Insert a task into the index. If the new rank is less than the existing rank at the given index path, the task is not indexed but the response is still 200 OK.

Please see the introduction above for information about indexing successfully completed tasks automatically using custom routes.

Remove Task from Index

Remove a task from the index. This is intended for administrative use, where an index entry is no longer appropriate. The parent namespace is not automatically deleted. Index entries with lower rank that were previously inserted will not re-appear, as they were never stored.

Get Artifact From Indexed Task

Find a task by index path and redirect to the artifact on the most recent run with the given name.

Note that multiple calls to this endpoint may return artifacts from differen tasks if a new task is inserted into the index between calls. Avoid using this method as a stable link to multiple, connected files if the index path does not contain a unique identifier. For example, the following two links may return unrelated files:

  • https://tc.example.com/api/index/v1/task/some-app.win64.latest.installer/artifacts/public/installer.exe`
  • https://tc.example.com/api/index/v1/task/some-app.win64.latest.installer/artifacts/public/debug-symbols.zip`

This problem be remedied by including the revision in the index path or by bundling both installer and debug symbols into a single artifact.

If no task exists for the given index path, this API end-point responds with 404.

Generate an unsigned URL for the findArtifactFromTask endpoint

Generate a signed URL for the findArtifactFromTask endpoint

Heartbeat

Respond with a service heartbeat.

This endpoint is used to check on backing services this service depends on.

Generate an unsigned URL for the heartbeat endpoint

Generate a signed URL for the heartbeat endpoint

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more