| #!/usr/bin/env bash |
| |
| REMOTE=$(pwd)/demo_repo |
| |
| unset GIT_DIR |
| |
| # Helper functions |
| set_user() { |
| export GIT_AUTHOR_EMAIL="$1@chromium.org" |
| export GIT_AUTHOR_NAME="$1" |
| export GIT_COMMITTER_EMAIL="$1@chromium.org" |
| export GIT_COMMITTER_NAME="$1" |
| } |
| set_user 'local' |
| |
| |
| # increment time by X seconds |
| TIME=1397119976 |
| tick() { |
| TIME=$[$TIME + $1] |
| export GIT_COMMITTER_DATE="$TIME +0000" |
| export GIT_AUTHOR_DATE="$TIME +0000" |
| } |
| tick 0 |
| |
| # a commit |
| c() { |
| silent git commit --allow-empty -m "$1" |
| tick 10 |
| } |
| |
| praw() { |
| echo -e "\x1B[37;1m$ $@\x1B[m" |
| } |
| |
| # print a visible command (but don't run it) |
| pcommand() { |
| praw "$(python -c '\ |
| import sys, pipes; \ |
| print " ".join(map(pipes.quote, sys.argv[1:]))' "$@")" |
| } |
| |
| # run a visible command |
| run() { |
| pcommand "$@" |
| "$@" |
| } |
| |
| comment() { |
| echo "###COMMENT### $@" |
| } |
| |
| # run a silent command |
| silent() { |
| if [[ $DEBUG ]] |
| then |
| "$@" |
| else |
| "$@" > /dev/null 2> /dev/null |
| fi |
| } |
| |
| # add a file with optionally content |
| add() { |
| local CONTENT=$2 |
| if [[ ! $CONTENT ]] |
| then |
| CONTENT=$(python -c 'import random, string; \ |
| print "".join(random.sample(string.lowercase, 16))') |
| fi |
| echo "$CONTENT" > $1 |
| silent git add $1 |
| } |
| |
| # Add a special callout marker at the given line offset to indicate to |
| # filter_demo_output.py to add a callout at that offset. |
| callout() { |
| echo -e "\x1b[${1}c" |
| } |