68 lines
1.5 KiB
Bash
Executable File
68 lines
1.5 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
function generate {
|
|
PARAMS=$1
|
|
TEMPLATE_PATH=$2
|
|
RESULT_PATH=$3
|
|
|
|
echo $PARAMS > data.yml
|
|
mustache data.yml $TEMPLATE_PATH > $RESULT_PATH
|
|
rm data.yml
|
|
}
|
|
|
|
PROJECT_NAME=$1
|
|
PROJECTS_PATH=$2
|
|
COMMON_REPO_NAME=$3
|
|
DEPLOYMENT_TARGET="10.0"
|
|
|
|
CURRENT_DIR=$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)
|
|
TEMPLATES=$CURRENT_DIR/templates
|
|
RESOURCES=$CURRENT_DIR/resources
|
|
|
|
cd $PROJECTS_PATH
|
|
|
|
# main project folder
|
|
# check for folder existence
|
|
mkdir $PROJECT_NAME
|
|
cd $PROJECT_NAME
|
|
|
|
echo "Clean up folders and files..."
|
|
rm -rf $PROJECT_NAME
|
|
rm -rf $(ls)
|
|
|
|
# TEST, REMOVE THIS LINE
|
|
git init
|
|
|
|
# source code project folder
|
|
echo "Recreate sources folders..."
|
|
mkdir $PROJECT_NAME
|
|
|
|
# copy files
|
|
cp -R $RESOURCES/. $PROJECT_NAME
|
|
|
|
generate "{ project_name: $PROJECT_NAME, deployment_target: $DEPLOYMENT_TARGET }" $TEMPLATES/project.mustache project.yml
|
|
generate "{ project_name: $PROJECT_NAME }" $TEMPLATES/Info.mustache $PROJECT_NAME/Info.plist
|
|
|
|
# generate xcode project file
|
|
echo "Generate xcodeproj file..."
|
|
xcodegen # default to `project.yml`
|
|
|
|
|
|
# install pods
|
|
generate "{ project_name: $PROJECT_NAME, deployment_target: $DEPLOYMENT_TARGET }" $TEMPLATES/Podfile.mustache Podfile
|
|
pod install
|
|
|
|
# configure submodules
|
|
git submodule add --name common git@github.com:TouchInstinct/$COMMON_REPO_NAME.git
|
|
git submodule add --name build-scripts git@github.com:TouchInstinct/BuildScripts.git
|
|
|
|
git submodule update --init
|
|
|
|
# enable shared scheme
|
|
|
|
# final clean up
|
|
rm "project.yml"
|
|
|
|
# commit state
|
|
#### git commit -m "Setup project configuration"
|