# Object Storage Use Cases Part 2: Storing your reveal.js presentation in Object Storage

DevFeed: [Object Storage Use Cases Part 2: Storing your reveal.js presentation in Object Storage](<https://devfeed.tech/articles/object-storage-use-cases-part-2-storing-your-reveal-js-presentation-in-object-storage-19763.md>)

Original publisher: [Read original article](<https://cloud.blog.csc.fi/2018/05/object-storage-use-cases-part-2-storing.html>)

Author: Unknown (noreply@blogger.com)

Published: 2018-05-09T11:00:00Z

Content type: tutorial

Language: en

Sources: [CSC - IT Center For Science - Cloud Team](<https://devfeed.tech/sources/csc-it-center-for-science-cloud-team.md>)

Topics: [Command-line interface](<https://devfeed.tech/topics/cli.md>), [ceph](<https://devfeed.tech/topics/ceph.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>)

Tags: [aws](<https://devfeed.tech/tags/aws.md>), [ceph](<https://devfeed.tech/tags/ceph.md>), [cli](<https://devfeed.tech/tags/cli.md>), [demo](<https://devfeed.tech/tags/demo.md>), [installation](<https://devfeed.tech/tags/installation.md>), [object-storage](<https://devfeed.tech/tags/object-storage.md>), [openstack](<https://devfeed.tech/tags/openstack.md>), [presentation](<https://devfeed.tech/tags/presentation.md>), [python](<https://devfeed.tech/tags/python.md>), [radosgw](<https://devfeed.tech/tags/radosgw.md>), [s3](<https://devfeed.tech/tags/s3.md>), [storage](<https://devfeed.tech/tags/storage.md>)

## AI overview

A technical tutorial in the CSC Pouta Cloud Team series explains how to upload a reveal.js presentation to Pouta Object Storage using the awscli tool with Ceph RadosGW's S3-like implementation. It covers URL requirements, credentials, virtual-environment setup, installation, and configuration.

## Source excerpt

This is part of a technical series of blog post where the CSC Pouta Cloud Team illustrates with words and sometimes figures how to do things with our object storage. The pevious installation in this series was the magnificent NFS + ZFS + Encryption blog post Topic for this post: we will experiment with Pouta Object Storage, the aws tool and reveal.js to upload a presentation at a nice https://mypresentation20180423.object.pouta.csc.fi/index.html URL. At the time of writing we have not enabled any automatic redirection to index.html with HAProxy if there is no filename specified, so "index.html" is needed or you will see the S3 XML details about the bucket (or AccessDenied). Also https:// at the beginning is needed as we do not yet redirect from TCP 80 to TCP 443. This blog post has two tracks, either you continue with the content on this blog post or you read the content in a reveal.js format on https://mypresentation20180423.object.pouta.csc.fi/index.html Step 1: Configure aws-cli We need something to write files to object storage. We will try the "industry standard" awscli tool to illustrate that it does work even though we are using Ceph's RadosGW which has an s3-like implementation. There are many clients one can use with S3. awscli comes with an s3 client inside which is working with our version for Ceph RadosGW. For some clients we have rudimentary documentation how to use them. You will need OpenStack ec2 credentials to use S3. You get those with this command: $ openstack ec2 credentials create Setting up a python virtual environment and install awscli inside it (so we don't mess with system libraries): $ virtualenv venv_aws $ source venv_aws/bin/activate $ pip install -U setuptools # this was needed on my CentOS7 laptop $ pip install awscli # don't confuse this with "aws" in pip Configuring it: $ aws configure AWS Access Key ID [None]: Enteryouraccesskeyidhere AWS Secret Access Key [None]: Enteryoursecretaccesskeyhere Default region name [None]: # press ENTE