Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sam0x17/s3cmd-shim

Drop-in docker-based CLI replacement for s3cmd for systems (like macos) where s3cmd doesn't work properly
https://github.com/sam0x17/s3cmd-shim

aws development-tools docker docker-image docker-images s3 s3cmd shim

Last synced: about 2 months ago
JSON representation

Drop-in docker-based CLI replacement for s3cmd for systems (like macos) where s3cmd doesn't work properly

Awesome Lists containing this project

README

        

# s3cmd shim
This docker image provides a working s3cmd CLI tool that can be used as a drop-in replacement
for a local s3cmd installation on systems where certain features of s3cmd are not currently
functioning. In particular, I created this to get around the fact that
[support for the cf-invalidate option on macos has been broken since 2018](https://github.com/s3tools/s3cmd/issues/1046). I have also written
a [medium article](https://medium.com/@DuroSoft/s3cmd-is-still-broken-on-macos-a-docker-based-solution-db6a1bca6299) on the subject.

Linux and Macos are supported. Windows will work but you will need to write your own `s3cmd` script as a .bat file.

## Prerequisites
1. docker must be installed and enabled for non-root users
2. your system must have curl installed (basically every system does)

## Installation
Simply run this in a terminal:

```
curl -o- https://raw.githubusercontent.com/sam0x17/s3cmd-shim/master/install.sh | bash
```
Now re-open your terminal and you'll be all set.

You can now use `s3cmd` on your host system as you normally would, and integration should
be fully seamless.

The script will set up your environment so that the latest
s3cmd shell script is located at `~/.s3cmd_shim/s3cmd` and will add this to your PATH. If you use ash or zsh or fish or something
weird you may have to manually add `~/.s3cmd_shim/` to your PATH.

## Updating / Uninstalling
* To uninstall, clone the repo, `cd` into it and run `./uninstall.sh`. If you care enough, you can also manually remove the PATH entries from the usual locations.
* To update, just re-run the installation one-liner and you should be good to go.

## Status
- [X] tested and working, even on macos
- [X] working with absolute paths
- [ ] tested with current directory based paths
- [ ] tested with relative paths (should work fine)