<?xml version="1.0" encoding="UTF-8"?>
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0"
  xml:id="dashboard_manage_containers">
    <title>Create and manage object containers</title>
    <?dbhtml stop-chunking?>
  <para>OpenStack Object Storage provides a distributed,
    API-accessible storage platform that can be integrated directly
    into an application or used to store any type of file, including
    VM images, backups, archives, or media files. In the OpenStack
    Dashboard, you can only manage containers and objects.</para>
      <para>In OpenStack Object Storage, containers provide storage
    for objects in a manner similar to a Windows folder or Linux file
    directory, though they cannot be nested. An object in OpenStack
    consists of the file to be stored in the container and any
    accompanying metadata.</para>
    <section xml:id="create_container">
      <title>Create a container</title>
      <procedure>
        <step>
          <para>Log in to the dashboard, choose a project, and click
            <guilabel>Containers</guilabel>.</para>
        </step>
        <step>
          <para>Click <guibutton>Create Container</guibutton>.</para>
        </step>
        <step>
          <para>In the Create Container dialog box, enter a name for
          the container, and then click<guibutton>Create
            Container</guibutton>.</para>
        </step>
      </procedure>
    <para>You have successfully created a container.</para>
    <note><para>To delete a container, click the <guibutton>More</guibutton>
        button and select <guilabel>Delete
        Container</guilabel>.</para>
    </note>
  </section>
  <section xml:id="upload_object">
    <title>Upload an object</title>
    <procedure>
      <step>
        <para>Log in to the dashboard, choose a project, and click
            <guilabel>Containers</guilabel>.</para>
        </step>
        <step>
          <para>Select the container in which you want to store your object.</para>
        </step>
        <step>
          <para>Click <guibutton>Upload Object</guibutton>.</para>
        <para>The Upload Object To Container:
            <replaceable>&lt;name></replaceable> dialog box is
          displayed. <replaceable>&lt;name></replaceable> is the name
          of the container to which you are uploading the
          object.</para>
        </step>
        <step>
          <para>Enter a name for the object.</para>
        </step>
        <step>
          <para>Browse to and select the file that you want to
          upload.</para>
        </step>
        <step>
          <para>Click <guibutton>Upload Object</guibutton>.</para>
        </step>
    </procedure>
    <para>You have successfully uploaded an object to the container.</para>
    <note><para>To delete an object, click the <guibutton>More</guibutton>
        button and select <guilabel>Delete Object</guilabel>.</para>
    </note>
  </section>
  <section xml:id="manage_object">
    <title>Manage an object</title>
    <procedure xml:id="edit_object">
      <title>To edit an object</title>
      <step>
        <para>Log in to the dashboard, choose a project, and click
            <guilabel>Containers</guilabel>.</para>
      </step>
      <step>
        <para>Select the container in which you want to store your object.</para>
      </step>
      <step>
        <para>Click <guibutton>More</guibutton> and choose <guilabel>Edit</guilabel> from the dropdown list.</para>
        <para>The Edit Object dialog box is displayed.</para>
      </step>
      <step>
        <para>Browse to and select the file that you want to upload.</para>
      </step>
      <step>
        <para>Click <guibutton>Update Object</guibutton>.</para>
      </step>
    </procedure>
    <note>
      <para>To delete an object, click the <guibutton>More</guibutton>
        button and select <guilabel>Delete Object</guilabel>.</para>
    </note>
    <procedure xml:id="copy_object">
      <title>To copy an object from one container to another</title>
      <step>
        <para>Log in to the dashboard, choose a project, and click
            <guilabel>Containers</guilabel>.</para>
      </step>
      <step>
        <para>Select the container in which you want to store your object.</para>
      </step>
      <step>
        <para>Click <guibutton>More</guibutton> and choose
          <guilabel>Copy</guilabel> from the dropdown list.</para>
      </step>
      <step>
        <para>In the Copy Object: launch dialog box, enter the
          following values:</para>
        <para>
          <itemizedlist>
            <listitem>
              <para><guilabel>Destination Container</guilabel>: Choose
                the destination container from the list.</para>
            </listitem>
            <listitem>
              <para><guilabel>Path</guilabel>: Specify a path in which
                the new copy should be stored inside of the selected
                container.</para>
            </listitem>
            <listitem>
              <para><guilabel>Destination object name</guilabel>:
                Enter a name for the object in the new
                container.</para>
            </listitem>
          </itemizedlist>
        </para>
      </step>
      <step>
        <para>Click <guibutton>Copy Object</guibutton>.</para>
      </step>
    </procedure>
    <procedure xml:id="create_empty_object">
      <title>To create a metadata-only object without a file</title>
      <para>
        You can create a new object in container without a file available and can upload the file later when it is ready. This temporary object acts a place-holder for a new object, and enables the user to share object metadata and URL info in advance.</para>
      <step>
        <para>Log in to the dashboard, choose a project, and click
            <guilabel>Containers</guilabel>.</para>
      </step>
      <step>
        <para>Select the container in which you want to store your object.</para>
      </step>
      <step>
        <para>Click <guibutton>Upload Object</guibutton>.</para>
        <para>The Upload Object To Container:
            <replaceable>&lt;name></replaceable> dialog box is
          displayed. <replaceable>&lt;name></replaceable> is the name
          of the container to which you are uploading the
          object.</para>
      </step>
      <step>
        <para>Enter a name for the object.</para>
      </step>
      <step>
        <para>Click <guibutton>Update Object</guibutton>.</para>
      </step>
    </procedure>
    <procedure xml:id="create_pseudo_folder">
      <title>To create a pseudo-folder</title>
      <para>Pseudo-folders are similar to folders in your desktop
        operating system. They are virtual collections defined by a
        common prefix on the object's name.</para>
      <step>
        <para>Log in to the dashboard, choose a project, and click
            <guilabel>Containers</guilabel>.</para>
      </step>
      <step>
        <para>Select the container in which you want to store your object.</para>
      </step>
      <step>
        <para>Click <guibutton>Create
          Pseudo-folder</guibutton>.</para>
        <para>The Create Pseudo-Folder in Container
            <replaceable>&lt;name> </replaceable> dialog box is
          displayed. <replaceable>&lt;name> </replaceable> is the name
          of the container to which you are uploading the
          object.</para>
      </step>
      <step>
        <para>Enter a name for the pseudo-folder.</para>

        <para>A slash (/) character is used as the delimiter for
          pseudo-folders in the Object Store.</para>
      </step>
      <step>
        <para>Click <guibutton>Create</guibutton>.</para>
      </step>
    </procedure>
  </section>

</section>