#[non_exhaustive]pub struct Artifact {
pub artifact_type: String,
pub device_id: Option<Uuid>,
pub download_url: String,
pub id: Uuid,
pub platform: String,
pub version_id: Option<Uuid>,
pub version_range_pattern: Option<String>,
}Expand description
A downloadable artifact belonging to a release version: an installer, package, or other file published for a given type and platform.
JSON schema
{
"description": "A downloadable artifact belonging to a release version: an installer,\npackage, or other file published for a given type and platform.",
"type": "object",
"required": [
"artifact_type",
"download_url",
"id",
"platform"
],
"properties": {
"artifact_type": {
"description": "What kind of artifact this is (e.g. an installer or package name).",
"type": "string"
},
"device_id": {
"description": "The device that registered this artifact, if it was registered by a\nreleaser device rather than created by an operator.",
"type": [
"string",
"null"
],
"format": "uuid"
},
"download_url": {
"description": "URL the artifact can be downloaded from.",
"type": "string"
},
"id": {
"description": "Unique identifier of the artifact.",
"type": "string",
"format": "uuid"
},
"platform": {
"description": "The platform the artifact targets (e.g. an OS or architecture name).",
"type": "string"
},
"version_id": {
"description": "The exact version this artifact belongs to. `null` for range\nartifacts, which apply to every version matching\n`version_range_pattern` instead.",
"type": [
"string",
"null"
],
"format": "uuid"
},
"version_range_pattern": {
"description": "Semver range this artifact applies to (e.g. `^2.10.0`), for artifacts\nshared across a range of versions rather than pinned to one. `null`\nfor exact-version artifacts.",
"type": [
"string",
"null"
]
}
}
}Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.artifact_type: StringWhat kind of artifact this is (e.g. an installer or package name).
device_id: Option<Uuid>The device that registered this artifact, if it was registered by a releaser device rather than created by an operator.
download_url: StringURL the artifact can be downloaded from.
id: UuidUnique identifier of the artifact.
platform: StringThe platform the artifact targets (e.g. an OS or architecture name).
version_id: Option<Uuid>The exact version this artifact belongs to. null for range
artifacts, which apply to every version matching
version_range_pattern instead.
version_range_pattern: Option<String>Semver range this artifact applies to (e.g. ^2.10.0), for artifacts
shared across a range of versions rather than pinned to one. null
for exact-version artifacts.