aboutsummaryrefslogtreecommitdiff
path: root/sandbox
blob: a2495629e22e0102fd7d1be768214dcdeb15460b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/bin/bash
#
# Setup a new code project.
#
# TODO: should work for more use cases.

# Parameters
BASENAME="`basename $0`"
CODE="$HOME/code"
PROJECT="$1"
REPO="$2"
BOOTSTRAP="git://git.sarava.org/puppet-bootstrap.git"

# Syntax check
if [ -z "$PROJECT" ]; then
  echo "usage: $BASENAME <path> [url]"
  exit 1
fi

# Clone or initialize
if [ ! -z "$REPO" ]; then
  git clone $URL $CODE/$PROJECT
else
  echo "Initializing $PROJECT..."
  mkdir -p $CODE/$PROJECT

  (
    cd $CODE/$PROJECT
    touch .gitignore
    git init
    git add .
    git commit -m "Initial import"
  )
fi

# Vagrant integration
(
  cd $CODE/$PROJECT
  git branch dev
  git checkout dev
  echo '.vagrant' >> .gitignore
  git commit -a -m "Dev branch with vagrant support"

  # Use the best approach
  #git clone $BOOSTRAP $CODE/$PROJECT/puppet
  #git submodule add $BOOSTRAP puppet
  git subtree add --prefix puppet $BOOTSTRAP master --squash
)

# Teardown
echo "Please review and commit your new project :)"