I'm using s3cmd, a python command line tool, with a S3-like provider different from AWS. When I set up the whole system I clearly remember that I search for the endpoint and change the default AWS one with the one I'm using (so endpoint was not a config option), then complete the configuration process and right now I'm still working with s3cmd.
Anyway recently I had to setup s3cmd on another machine and, not remembering where to set the endpoint, I grep the address of the provider on my machine, but without finding any result. Do you have any suggestion on where can it be?
edit: Ok, apparently there's a .s3cfg stored in the home directory and that's where the endpoint is. I still can't understand from where the value come from though
In this config file you should have 2 lines like this :
host_base = s3.amazonaws.com
host_bucket = %(bucket)s.s3.amazonaws.com
You can then change it to point at your ViPR instance:
host_base = s3.mydomain.com
host_bucket = %(bucket)s.s3.mydomain.com
Note: Your ViPR solution has to support aws virtual naming style. Otherwhise, you have to use pathstyle.
To explicitly set configuration file, use -c
option, as:
s3cmd ls --recursive --list-md5 s3://bucket-name -c ~/.s3cfg-profile-2
That way, you are assured that you are reading the configs that are stored into file ~/.s3cfg-profile-2
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With