pub struct OciLayout { /* private fields */ }
Expand description
The oci layout JSON object serves as a marker for the base of an Open Container Image Layout and to provide the version of the image-layout in use. The imageLayoutVersion value will align with the OCI Image Specification version at the time changes to the layout are made, and will pin a given version until changes to the image layout are required.
Implementations§
Source§impl OciLayout
impl OciLayout
Sourcepub fn image_layout_version(&self) -> &String
pub fn image_layout_version(&self) -> &String
This REQUIRED property specifies the image layout version.
Source§impl OciLayout
impl OciLayout
Sourcepub fn set_image_layout_version(&mut self, val: String) -> &mut Self
pub fn set_image_layout_version(&mut self, val: String) -> &mut Self
This REQUIRED property specifies the image layout version.
Source§impl OciLayout
impl OciLayout
Sourcepub fn from_file<P: AsRef<Path>>(path: P) -> Result<OciLayout>
pub fn from_file<P: AsRef<Path>>(path: P) -> Result<OciLayout>
Attempts to load an oci layout from a file.
§Errors
This function will return an OciSpecError::Io if the file does not exist or an OciSpecError::SerDe if the oci layout cannot be deserialized.
§Example
use oci_spec::image::OciLayout;
let oci_layout = OciLayout::from_file("oci-layout").unwrap();
Sourcepub fn from_reader<R: Read>(reader: R) -> Result<OciLayout>
pub fn from_reader<R: Read>(reader: R) -> Result<OciLayout>
Attempts to load an oci layout from a stream.
§Errors
This function will return an OciSpecError::SerDe if the oci layout cannot be deserialized.
§Example
use oci_spec::image::OciLayout;
use std::fs::File;
let reader = File::open("oci-layout").unwrap();
let oci_layout = OciLayout::from_reader(reader).unwrap();
Sourcepub fn to_file<P: AsRef<Path>>(&self, path: P) -> Result<()>
pub fn to_file<P: AsRef<Path>>(&self, path: P) -> Result<()>
Attempts to write an oci layout to a file as JSON. If the file already exists, it will be overwritten.
§Errors
This function will return an OciSpecError::SerDe if the oci layout cannot be serialized.
§Example
use oci_spec::image::OciLayout;
let oci_layout = OciLayout::from_file("oci-layout").unwrap();
oci_layout.to_file("oci-layout").unwrap();
Sourcepub fn to_file_pretty<P: AsRef<Path>>(&self, path: P) -> Result<()>
pub fn to_file_pretty<P: AsRef<Path>>(&self, path: P) -> Result<()>
Attempts to write an oci layout to a file as pretty printed JSON. If the file already exists, it will be overwritten.
§Errors
This function will return an OciSpecError::SerDe if the oci layout cannot be serialized.
§Example
use oci_spec::image::OciLayout;
let oci_layout = OciLayout::from_file("oci-layout").unwrap();
oci_layout.to_file_pretty("my-oci-layout").unwrap();
Sourcepub fn to_writer<W: Write>(&self, writer: &mut W) -> Result<()>
pub fn to_writer<W: Write>(&self, writer: &mut W) -> Result<()>
Attempts to write an oci layout to a stream as JSON.
§Errors
This function will return an OciSpecError::SerDe if the oci layout cannot be serialized.
§Example
use oci_spec::image::OciLayout;
let oci_layout = OciLayout::from_file("oci-layout").unwrap();
let mut writer = Vec::new();
oci_layout.to_writer(&mut writer);
Sourcepub fn to_writer_pretty<W: Write>(&self, writer: &mut W) -> Result<()>
pub fn to_writer_pretty<W: Write>(&self, writer: &mut W) -> Result<()>
Attempts to write an oci layout to a stream as pretty printed JSON.
§Errors
This function will return an OciSpecError::SerDe if the oci layout cannot be serialized.
§Example
use oci_spec::image::OciLayout;
let oci_layout = OciLayout::from_file("oci-layout").unwrap();
let mut writer = Vec::new();
oci_layout.to_writer_pretty(&mut writer);
Sourcepub fn to_string(&self) -> Result<String>
pub fn to_string(&self) -> Result<String>
Attempts to write an oci layout to a string as JSON.
§Errors
This function will return an OciSpecError::SerDe if the oci layout configuration cannot be serialized.
§Example
use oci_spec::image::OciLayout;
let oci_layout = OciLayout::from_file("oci-layout").unwrap();
let json_str = oci_layout.to_string().unwrap();
Sourcepub fn to_string_pretty(&self) -> Result<String>
pub fn to_string_pretty(&self) -> Result<String>
Attempts to write an oci layout to a string as pretty printed JSON.
§Errors
This function will return an OciSpecError::SerDe if the oci layout configuration cannot be serialized.
§Example
use oci_spec::image::OciLayout;
let oci_layout = OciLayout::from_file("oci-layout").unwrap();
let json_str = oci_layout.to_string_pretty().unwrap();