+ ADD s3 sync
This commit is contained in:
59
.dev/ops/s3-sync.sh
Executable file
59
.dev/ops/s3-sync.sh
Executable file
@@ -0,0 +1,59 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
USAGE="sync-s3-uploads.sh <source env> <target env>"
|
||||
|
||||
MY_PATH="`dirname \"$0\"`"
|
||||
UPLOADS_DIR="$(cd "$MY_PATH" && cd "../../web/app/uploads" && pwd)"
|
||||
|
||||
AWS_ACCESS_KEY_ID=$(heroku config:get AWS_ACCESS_KEY_ID)
|
||||
export AWS_ACCESS_KEY_ID
|
||||
AWS_SECRET_ACCESS_KEY=$(heroku config:get AWS_SECRET_ACCESS_KEY)
|
||||
export AWS_SECRET_ACCESS_KEY
|
||||
AWS_REGION=$(heroku config:get AWS_REGION)
|
||||
export AWS_REGION
|
||||
|
||||
USE_CDN=$(heroku config:get USE_CDN)
|
||||
USE_CDN=${USE_CDN-false}
|
||||
|
||||
BLOG_SLUG=$(heroku config:get BLOG_SLUG)
|
||||
BLOG_SLUG=${BLOG_SLUG-hvg-blog}
|
||||
|
||||
if [[ $USE_CDN == true ]]; then
|
||||
FOLDER="$BLOG_SLUG/uploads"
|
||||
else
|
||||
FOLDER="uploads"
|
||||
fi
|
||||
|
||||
# Check args
|
||||
if [ -z "$1" ] || [ -z "$2" ]; then
|
||||
echo $USAGE >&2;
|
||||
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1;
|
||||
fi
|
||||
|
||||
# Get bucket urls
|
||||
if [[ $1 == 'local' ]]; then
|
||||
SOURCE_URL=$UPLOADS_DIR
|
||||
else
|
||||
SOURCE_URL=s3://`heroku config:get BUCKET_NAME -r $1`/$FOLDER;
|
||||
fi;
|
||||
|
||||
if [[ $2 == 'local' ]]; then
|
||||
TARGET_URL=$UPLOADS_DIR
|
||||
else
|
||||
TARGET_URL=s3://`heroku config:get BUCKET_NAME -r $2`/$FOLDER;
|
||||
fi;
|
||||
|
||||
echo "You are about to copy all files from $SOURCE_URL to $TARGET_URL";
|
||||
read -p "Are you sure you want to do this? (y/n)
|
||||
";
|
||||
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
|
||||
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1;
|
||||
fi
|
||||
|
||||
# Use aws-cli to synchronize buckets
|
||||
aws s3 sync $SOURCE_URL $TARGET_URL
|
||||
|
||||
echo "Success!"
|
||||
exit 0
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
alias d-composer="docker-compose run --rm wordpress composer"
|
||||
alias d-wp="docker-compose run --rm wordpress wp"
|
||||
alias d-s3-sync="docker-compose run --rm wordpress .dev/ops/s3-sync.sh"
|
||||
alias d-heroku="docker-compose run --rm --entrypoint=heroku wordpress"
|
||||
alias d-bash="docker-compose run --rm --entrypoint=bash wordpress -l"
|
||||
alias dc-build="docker-compose build --pull --no-cache"
|
||||
|
||||
@@ -10,6 +10,10 @@ function d-wp {
|
||||
dc run --rm wordpress wp $args
|
||||
}
|
||||
|
||||
function d-s3-sync {
|
||||
dc run --rm wordpress .dev/ops/s3-sync.sh $args
|
||||
}
|
||||
|
||||
function d-heroku {
|
||||
dc run --rm --entrypoint=heroku wordpress $args
|
||||
}
|
||||
|
||||
737
composer.lock
generated
737
composer.lock
generated
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user