Skip to main content

S3 proxy plugin for AWS CLI

Project description

awscli-plugin-s3-proxy
=============

This awscli plugin allows usage of proxy for S3 service stored in profile configuration.

------------
Installation
------------

The easiest way to install awscli-plugin-s3-proxy is to use `pip`:

$ pip install awscli-plugin-s3-proxy

You can also install the latest package from GitHub source which can contain changes not yet pushed to PyPI:

$ pip install git+https://github.com/nowak-ninja/awscli-plugin-s3-proxy.git

or, if you install `awscli` via Homebrew, which bundles its own python, install as following:

$ /usr/local/opt/awscli/libexec/bin/pip install awscli-plugin-s3-proxy


---------------
Getting Started
---------------

Before using awscli-plugin-s3-proxy plugin, you need to [configure awscli](http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) first.

**MUST**: Once that's done, to enable `awscli-plugin-s3-proxy` plugin, you can run:

$ aws configure set plugins.s3-proxy awscli_plugin_s3_proxy

The above command adds below section to your aws config file. You can also directly edit your `~/.aws/config` with below configuration.

[plugins]
s3-proxy = awscli_plugin_s3_proxy

To add proxy configure to a profile (assuming you have a **test** profile), you can run:

$ aws configure --profile test set s3.proxy http://proxy-host.com:8080

The above command adds below section to your profile:

[profile test]
s3 =
proxy = http://proxy-host.com:8080

Now you can access S3 using proxy with profile:

$ aws s3 ls --profile test

If You want to use profile without passing it every time as parameter, use environment variable, ex:

export AWS_PROFILE=test

Alternative (classic) method
------------------
You can follow the [guide by AWS](https://docs.aws.amazon.com/cli/latest/userguide/cli-http-proxy.html) which describes how to use proxy using system environment variables. Here is the example:

export http_proxy=http://proxy-host.com:8080
export https_proxy=http://proxy-host.com:8080
export HTTPS_PROXY=http://proxy-host.com:8080
export HTTP_PROXY=http://proxy-host.com:8080

Remember that after setting these variables, `ALL` awscli requests will be going through proxy!

Additionally, if You are using awscli on EC2 host, add `NO_PROXY` variable to allow awscli communicate with metadata endpoint:

NO_PROXY=169.254.169.254


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

awscli-plugin-s3-proxy-0.4.tar.gz (2.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

awscli_plugin_s3_proxy-0.4-py2-none-any.whl (2.8 kB view details)

Uploaded Python 2

File details

Details for the file awscli-plugin-s3-proxy-0.4.tar.gz.

File metadata

File hashes

Hashes for awscli-plugin-s3-proxy-0.4.tar.gz
Algorithm Hash digest
SHA256 6d7c147a00d37a665ea7cfbc98d25fdfdffff775837128e0f19ab416df75b1b2
MD5 8c9c7e36c7b09d413e29f3077e07fce1
BLAKE2b-256 de883f3f1f16ccba243b084bc67ff276d5ab2654ee88c44d6c3ece7434dec872

See more details on using hashes here.

File details

Details for the file awscli_plugin_s3_proxy-0.4-py2-none-any.whl.

File metadata

File hashes

Hashes for awscli_plugin_s3_proxy-0.4-py2-none-any.whl
Algorithm Hash digest
SHA256 e8af4ea7c890784fb10549d2c0f7741dc57d3439c83f8cfeff1c6cd0ba4ab2ec
MD5 723e99c388ebc83c9627f409ad5ae3c8
BLAKE2b-256 a2384f19e6e9913803ab91e372bf246e81c68e6bb461eb912e704085ce18a53e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page