# Create an S3 bucket for PDI-CLI

You must create an S3 bucket to deploy the PDI-CLI image on AWS.

1. Create an S3 bucket .

   To create an S3 bucket, see [Creating a bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html).

   To upload a file to S3, see [Uploading objects](https://docs.aws.amazon.com/AmazonS3/latest/userguide/upload-objects.html).
2. Record the newly created S3 bucket name in the [Worksheet for AWS hyperscaler](/install/10.2-install/pentaho-installation-overview-cp/hyperscalers-landing-page/installing-pentaho-on-aws/running-pdi-cli-on-aws/worksheet-for-aws-hyperscaler-common.md).
3. Upload files into the S3 bucket.

   After the S3 bucket is created, manually create any needed directories as shown in the following table and upload the relevant files to an appropriate directory location by using the AWS Management Console.

   The following table lists the relevant Pentaho directories and actions related to each directory.

| Directory    | Actions                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| /root        | <p>All the files in the S3 bucket are copied to the <code>/home/pentaho/data-integration/data</code> directory.</p><p>If you must copy a file to the <code>/home/pentaho/data-integration/data</code> directory, drop the file in the <code>root</code> directory of the S3 bucket.</p>                                                                                                                                                                                                                                                    |
| Jdbc-drivers | <p>If the Pentaho installation needs JDBC drivers, do the following:</p><ol><li>Add the <code>jdbc-drivers</code> directory to the S3 bucket.</li><li>Place the drivers in this directory.<br>Any files within this directory will be copied to Pentaho’s <code>lib</code> directory.</li></ol>                                                                                                                                                                                                                                            |
| plugins      | <p>If the Pentaho installation needs additional plugins installed, do the following:</p><ol><li>Add the <code>plugins</code> directory to the S3 bucket.</li><li>Copy the plugins to the <code>plugins</code> directory.<br>Any files within this directory are copied to Pentaho’s <code>plugins</code> directory. For this reason, the plugins should be organized in their own directories as expected by Pentaho.</li></ol>                                                                                                            |
| metastore    | <p>Pentaho can execute jobs and transformations. Some of these require additional information that is usually stored in the Pentaho metastore.</p><p>If you must provide the Pentaho metastore to Pentaho, copy the local <code>.pentaho</code> directory to the <code>metastore</code> directory (you can name it something else by passing a variable) of the S3 storage bucket. From there, the content of the <code>.pentaho</code> directory is copied to the <code>/home/pentaho/.pentaho</code> folder within the Docker image.</p> |

The following table lists the relevant Pentaho files and the actions related to each file.

| File                      | Actions                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| content-config.properties | <p>The <code>content-config.properties</code> file is used by the Pentaho Docker image to provide instructions on, which S3 files to copy over and their location.</p><p>The instructions are populated as multiple lines in the following format:</p><p><code>${KETTLE\_HOME\_DIR}/\<some-dir-or-file>=${APP\_DIR}/\<some-dir></code>A template for this file can be found in the templates project directory.</p><p>The template has an entry where the file <code>context.xml</code> is copied to the required location within the Docker image:</p><p><code>${KETTLE\_HOME\_DIR}/context.xml=${APP\_DIR}/context.xml</code></p> |
| content-config.sh         | <p>A bash script that can be used to configure files, change file and directory ownership, move files around, install missing apps, and so on.</p><p>You can add it to the S3 bucket.</p><p>The script is executed in the Docker image after the other files are processed.</p>                                                                                                                                                                                                                                                                                                                                                     |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.pentaho.com/install/10.2-install/pentaho-installation-overview-cp/hyperscalers-landing-page/installing-pentaho-on-aws/running-pdi-cli-on-aws/create-an-s3-bucket-for-pdi-cli.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
