Struct PackagePublished

Source
pub struct PackagePublished {
    pub action: PackagePublishedAction,
    pub installation: Option<InstallationLite>,
    pub organization: Option<Organization>,
    pub package: PackagePublishedPackage,
    pub repository: Repository,
    pub sender: User,
}
Expand description

PackagePublished

JSON schema
{
 "title": "package published event",
 "type": "object",
 "required": [
   "action",
   "package",
   "repository",
   "sender"
 ],
 "properties": {
   "action": {
     "type": "string",
     "enum": [
       "published"
     ]
   },
   "installation": {
     "$ref": "#/definitions/installation-lite"
   },
   "organization": {
     "$ref": "#/definitions/organization"
   },
   "package": {
     "description": "Information about the package.",
     "type": "object",
     "required": [
       "created_at",
       "description",
       "ecosystem",
       "html_url",
       "id",
       "name",
       "namespace",
       "owner",
       "package_type",
       "package_version",
       "registry",
       "updated_at"
     ],
     "properties": {
       "created_at": {
         "type": "string",
         "format": "date-time"
       },
       "description": {
         "type": [
           "string",
           "null"
         ]
       },
       "ecosystem": {
         "type": "string"
       },
       "html_url": {
         "type": "string",
         "format": "uri"
       },
       "id": {
         "description": "Unique identifier of the package.",
         "type": "integer"
       },
       "name": {
         "description": "The name of the package.",
         "type": "string"
       },
       "namespace": {
         "type": "string"
       },
       "owner": {
         "$ref": "#/definitions/user"
       },
       "package_type": {
         "description": "The type of supported package. Packages in GitHub's Gradle registry have the type `maven`. Docker images pushed to GitHub's Container registry (`ghcr.io`) have the type `container`. You can use the type `docker` to find images that were pushed to GitHub's Docker registry (`docker.pkg.github.com`), even if these have now been migrated to the Container registry.",
         "type": "string",
         "enum": [
           "npm",
           "maven",
           "rubygems",
           "docker",
           "nuget",
           "CONTAINER"
         ]
       },
       "package_version": {
         "description": "A version of a software package",
         "oneOf": [
           {
             "type": "object",
             "required": [
               "description",
               "html_url",
               "id",
               "installation_command",
               "metadata",
               "name",
               "package_files",
               "summary",
               "version"
             ],
             "properties": {
               "author": {
                 "$ref": "#/definitions/user"
               },
               "body": {
                 "oneOf": [
                   {
                     "type": "string"
                   },
                   {
                     "type": "object",
                     "required": [
                       "_formatted",
                       "attributes",
                       "info",
                       "repository"
                     ],
                     "properties": {
                       "_formatted": {
                         "type": "boolean"
                       },
                       "attributes": {
                         "type": "object",
                         "additionalProperties": false
                       },
                       "info": {
                         "type": "object",
                         "required": [
                           "collection",
                           "mode",
                           "name",
                           "oid",
                           "path",
                           "size",
                           "type"
                         ],
                         "properties": {
                           "collection": {
                             "type": "boolean"
                           },
                           "mode": {
                             "type": "integer"
                           },
                           "name": {
                             "type": "string"
                           },
                           "oid": {
                             "type": "string"
                           },
                           "path": {
                             "type": "string"
                           },
                           "size": {
                             "type": [
                               "integer",
                               "null"
                             ]
                           },
                           "type": {
                             "type": "string"
                           }
                         },
                         "additionalProperties": false
                       },
                       "repository": {
                         "type": "object",
                         "required": [
                           "repository"
                         ],
                         "properties": {
                           "repository": {
                             "$ref": "#/definitions/repository"
                           }
                         },
                         "additionalProperties": false
                       }
                     },
                     "additionalProperties": false
                   }
                 ]
               },
               "body_html": {
                 "type": "string"
               },
               "container_metadata": {
                 "oneOf": [
                   {
                     "type": "object",
                     "properties": {
                       "labels": {
                         "type": [
                           "object",
                           "null"
                         ]
                       },
                       "manifest": {
                         "type": [
                           "object",
                           "null"
                         ]
                       },
                       "tag": {
                         "type": "object",
                         "properties": {
                           "digest": {
                             "type": "string"
                           },
                           "name": {
                             "type": "string"
                           }
                         },
                         "additionalProperties": false
                       }
                     },
                     "additionalProperties": false
                   },
                   {
                     "type": "null"
                   }
                 ]
               },
               "created_at": {
                 "type": "string",
                 "format": "date-time"
               },
               "description": {
                 "type": "string"
               },
               "docker_metadata": {
                 "type": "array",
                 "items": {}
               },
               "draft": {
                 "type": "boolean"
               },
               "html_url": {
                 "type": "string",
                 "format": "uri"
               },
               "id": {
                 "description": "Unique identifier of the package version.",
                 "type": "integer"
               },
               "installation_command": {
                 "type": "string"
               },
               "manifest": {
                 "type": "string"
               },
               "metadata": {
                 "description": "Package Version Metadata",
                 "type": "array",
                 "items": {}
               },
               "name": {
                 "description": "The name of the package version.",
                 "type": "string"
               },
               "npm_metadata": {
                 "oneOf": [
                   {
                     "$ref": "#/definitions/package-npm-metadata"
                   },
                   {
                     "type": "null"
                   }
                 ]
               },
               "nuget_metadata": {
                 "oneOf": [
                   {
                     "type": "array",
                     "items": {
                       "$ref": "#/definitions/package-nuget-metadata"
                     }
                   },
                   {
                     "type": "null"
                   }
                 ]
               },
               "package_files": {
                 "type": "array",
                 "items": {
                   "type": "object",
                   "required": [
                     "content_type",
                     "created_at",
                     "download_url",
                     "id",
                     "md5",
                     "name",
                     "sha1",
                     "sha256",
                     "size",
                     "state",
                     "updated_at"
                   ],
                   "properties": {
                     "content_type": {
                       "type": "string"
                     },
                     "created_at": {
                       "type": "string",
                       "format": "date-time"
                     },
                     "download_url": {
                       "type": "string",
                       "format": "uri"
                     },
                     "id": {
                       "type": "integer"
                     },
                     "md5": {
                       "type": "string"
                     },
                     "name": {
                       "type": "string"
                     },
                     "sha1": {
                       "type": "string"
                     },
                     "sha256": {
                       "type": "string"
                     },
                     "size": {
                       "type": "integer"
                     },
                     "state": {
                       "type": "string"
                     },
                     "updated_at": {
                       "type": "string",
                       "format": "date-time"
                     }
                   },
                   "additionalProperties": false
                 }
               },
               "package_url": {
                 "type": "string"
               },
               "prerelease": {
                 "type": "boolean"
               },
               "release": {
                 "type": "object",
                 "required": [
                   "author",
                   "created_at",
                   "draft",
                   "html_url",
                   "id",
                   "name",
                   "prerelease",
                   "published_at",
                   "tag_name",
                   "target_commitish",
                   "url"
                 ],
                 "properties": {
                   "author": {
                     "$ref": "#/definitions/user"
                   },
                   "created_at": {
                     "type": "string",
                     "format": "date-time"
                   },
                   "draft": {
                     "type": "boolean"
                   },
                   "html_url": {
                     "type": "string",
                     "format": "uri"
                   },
                   "id": {
                     "type": "integer"
                   },
                   "name": {
                     "type": "string"
                   },
                   "prerelease": {
                     "type": "boolean"
                   },
                   "published_at": {
                     "type": "string",
                     "format": "date-time"
                   },
                   "tag_name": {
                     "type": "string"
                   },
                   "target_commitish": {
                     "type": "string"
                   },
                   "url": {
                     "type": "string",
                     "format": "uri"
                   }
                 },
                 "additionalProperties": false
               },
               "rubygems_metadata": {
                 "type": "array",
                 "items": {}
               },
               "source_url": {
                 "type": "string"
               },
               "summary": {
                 "type": "string"
               },
               "tag_name": {
                 "type": "string"
               },
               "target_commitish": {
                 "type": "string"
               },
               "target_oid": {
                 "type": "string"
               },
               "updated_at": {
                 "type": "string",
                 "format": "date-time"
               },
               "version": {
                 "type": "string"
               }
             },
             "additionalProperties": false
           },
           {
             "type": "null"
           }
         ]
       },
       "registry": {
         "type": "object",
         "required": [
           "about_url",
           "name",
           "type",
           "url",
           "vendor"
         ],
         "properties": {
           "about_url": {
             "type": "string",
             "format": "uri"
           },
           "name": {
             "type": "string"
           },
           "type": {
             "type": "string"
           },
           "url": {
             "type": "string",
             "format": "uri"
           },
           "vendor": {
             "type": "string"
           }
         },
         "additionalProperties": false
       },
       "updated_at": {
         "type": "string",
         "format": "date-time"
       }
     },
     "additionalProperties": false
   },
   "repository": {
     "$ref": "#/definitions/repository"
   },
   "sender": {
     "$ref": "#/definitions/user"
   }
 },
 "additionalProperties": false,
 "$schema": "http://json-schema.org/draft-07/schema"
}

Fields§

§action: PackagePublishedAction§installation: Option<InstallationLite>§organization: Option<Organization>§package: PackagePublishedPackage§repository: Repository§sender: User

Implementations§

Trait Implementations§

Source§

impl Clone for PackagePublished

Source§

fn clone(&self) -> PackagePublished

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for PackagePublished

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for PackagePublished

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl From<&PackagePublished> for PackagePublished

Source§

fn from(value: &PackagePublished) -> Self

Converts to this type from the input type.
Source§

impl From<PackagePublished> for PackageEvent

Source§

fn from(value: PackagePublished) -> Self

Converts to this type from the input type.
Source§

impl From<PackagePublished> for PackagePublished

Source§

fn from(value: PackagePublished) -> Self

Converts to this type from the input type.
Source§

impl Serialize for PackagePublished

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl TryFrom<PackagePublished> for PackagePublished

Source§

type Error = String

The type returned in the event of a conversion error.
Source§

fn try_from(value: PackagePublished) -> Result<Self, String>

Performs the conversion.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,