{"id":18023587,"url":"https://github.com/jeffotoni/s3goamz","last_synced_at":"2025-04-04T18:21:30.051Z","repository":{"id":134047490,"uuid":"94147888","full_name":"jeffotoni/s3goamz","owner":"jeffotoni","description":" Loads files to s3 aws using the goamz library, a file encryption library","archived":false,"fork":false,"pushed_at":"2017-06-17T15:47:06.000Z","size":3969,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-10T03:29:06.757Z","etag":null,"topics":["aws-s3","cryptography","go","gocry","golang","s3","s3-bucket","upload"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jeffotoni.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-06-12T22:58:35.000Z","updated_at":"2021-08-03T23:36:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"2da8f992-ae7e-44d0-96d5-ca5e58d1823b","html_url":"https://github.com/jeffotoni/s3goamz","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeffotoni%2Fs3goamz","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeffotoni%2Fs3goamz/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeffotoni%2Fs3goamz/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeffotoni%2Fs3goamz/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jeffotoni","download_url":"https://codeload.github.com/jeffotoni/s3goamz/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247226271,"owners_count":20904478,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws-s3","cryptography","go","gocry","golang","s3","s3-bucket","upload"],"created_at":"2024-10-30T07:09:58.030Z","updated_at":"2025-04-04T18:21:30.029Z","avatar_url":"https://github.com/jeffotoni.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# s3goamz\n\nLoads files to s3 aws using the goamz library.\n\nWe implemented the multi.PutPart method, it will allow us to send chunks of the file to s3 aws, and in the end it joins all the parts.\n\nThe cool thing is that we will send everything cryptographed, but we may choose to encrypt the content before sending or not.\n\nThe authentication method is done right in the code we will encapsulate to get the access keys from the default location of aws ~/.aws/credentials, and also allow the keys coming straight from the code, the latter option is very dangerous and can cause a tremendous If the keys fall into the wrong hands, we strongly suggest keeping the keys on disk.\n\n\n# Example of operation\n\n![image](https://github.com/jeffotoni/s3goamz/blob/master/img/s3goamz.gif)\n\n# Packages\n\ngo get launchpad.net/goamz/aws\n\ngo get launchpad.net/goamz/s3\n\ngo get github.com/fatih/color\n\ngot get github.com/jeffotoni/gocry\n\ngo get github.com/jeffotoni/s3goamz\n\n# Install\n\n$ go build s3goamz.go\n\n$ sudo cp s3goamz /usr/bin\n\n# help\n\n```go\n\t\n$ s3goamz --help\n\n  Use: \n   s3goamz [OPTION]...\n   or: s3goamz --put file.pdf --bucket name-bucket [options]\n   or: s3goamz --put file.pdf --bucket name-bucket --acl read [options]\n   or: s3goamz --put file.pdf --bucket name-bucket --acl read --crypt\n\n   Put and bucket arguments are required.\n   -put,     --put      \u003cfile\u003e    The file and its respective path\n   -bucket,  --bucket   \u003cname\u003e    Bucket name s3\n   -acl,     --acl      \u003coptions\u003e read, write, all\n   -crypt,   --crypt    has no parameter\n   -help,    --help     -h\n   -version, --version, -v\n\n```\n\n# Example 1\n\n```go\n\n$ s3goamz --put ~/Downloads/ex2.pdf --bucket name-bucket\n\n```\n\n# Example 2 Encrypting file\n\n```go\n\n$ s3goamz -put ~/Downloads/ex2.pdf -bucket name-bucket --crypt\n\nWill encrypt... ~/Downloads/ex2.pdf.crypt\nUsed key:  DKYPENJXW43SMOJCU6F5TMFVOUANMJNL\n\n```\n\n# Example 3\n\n```go\n\n$ s3goamz --version\n\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjeffotoni%2Fs3goamz","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjeffotoni%2Fs3goamz","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjeffotoni%2Fs3goamz/lists"}