LoginSignup
0
0

More than 5 years have passed since last update.

vccw構築するバッチファイル的なやつ

Last updated at Posted at 2017-03-13

mac にWP-CLIがインストールされている前提で・・
オプションでIPを指定できることを知ってIPをカウントして構築するように変更

#!/bin/bash
# set -ex
# Generate vccw
tput setaf 6 && echo "vccwのディレクトリ名を入力してください..."
read DIRNAME

tput setaf 6 && echo -e "\nTASK [ wp scaffold vccw vccw-${DIRNAME} ]******************************************************"
if [ -x "`which wp `" ]; then
    VCCW_IP_COUNT=$(grep "ip:" ~/.lafcre8/laf_vccw_setting | sed -e s/ip://g | sed -n 1p)
    VCCW_IP_COUNT_UP=$(expr $VCCW_IP_COUNT + 1)
    IP="ip:"
    echo "$IP$VCCW_IP_COUNT_UP" > ~/.lafcre8/laf_vccw_setting
    wp scaffold vccw vccw-$DIRNAME --host=$DIRNAME.dev --lang=ja --ip=192.168.33.$VCCW_IP_COUNT_UP
    cd vccw-$DIRNAME
    THEMEDIR=wordpress/wp-content/themes/
    mkdir wordpress
    tput setaf 6 && echo "gitリポジトリを登録してください..."
    read -p '追加しましたか?(y/n)' _key
    if [ "${_key}" = "y" ] ;then
        tput setaf 6 && echo "site.ymlを編集してください..."
        read -p '編集しましたか?(y/n)' _key
        if [ "${_key}" = "y" ] ;then
            tput setaf 6 && echo -e '\nTASK [ vagrant up ]******************************************************'
            vagrant up
            # Generate theme based on _s
            cd wordpress
            tput setaf 6 && echo -e '\nTASK [ sudo cat ~/.lafcre8/.gitignore >> .gitignore ]********************'
            sudo cat ~/.lafcre8/.gitignore >> .gitignore
            tput setaf 6 && echo -e '\nTASK [ moc ディレクトリを作成しています... ]*****************************'
            sudo cp -r ~/.lafcre8/moc/ moc
            cd $HTDOCS
            if [ -e $THEMEDIR ];then
                tput setaf 6 && echo "themeを入力してください..."
                read THEMENAME
                cd $THEMEDIR
                tput setaf 6 && echo -e '\nTASK [ wp scaffold _s ]**************************************************'
                if [ ! -e $THEMENAME ];then
                    vagrant ssh -c "wp scaffold _s $THEMENAME --theme_name=\"$THEMENAME\" --sassify"
                    tput setaf 6 && echo -e "\nTASK [ wp theme activate {$THEMENAME} ]**********************************"
                    vagrant ssh -c "wp theme activate $THEMENAME"
                else
                    tput setaf 2 && echo 'そのthemeはすでに使用されています。'
                    vagrant ssh -c "wp theme activate $THEMENAME"
                    cd $THEMENAME
                    sudo cp ~/.lafcre8/__vccw_gulp_set.command .
                    exit
                fi

                # Gulp setting
                cd $THEMENAME
                tput setaf 6 && echo -e '\nTASK [ npm install ]*****************************************************'
                if [ -e package.json  ]; then
                    tput setaf 2 && echo '[OK] package.jsonがセットされています。'
                else
                    sudo cp ~/.lafcre8/package.json .
                    tput setaf 2 && echo '[OK] package.jsonをセットしました。'
                fi
                # npm init
                npm install

                tput setaf 6 && echo -e "\nTASK [ cp ~/.lafcre8/gulpfile.js ]***************************************"

                if [ -e gulpfile.js  ]; then
                    tput setaf 2 && echo '[OK] gulpfile.jsがセットされています。'
                else
                    cp ~/.lafcre8/gulpfile.js .
                    tput setaf 2 && echo '[OK] gulpfile.jsをセットしました。'
                fi
                tput setaf 6 && echo -e "gulpfile.js の proxy を設定してください... [http://xxxx.dev]"

                read -p '設定は終わりましたか?(y/n)' _key
                if [ "${_key}" = "y" ] ;then
                    gulp
                else
                    tput setaf 6 && echo -e 'proxy [http://xxxx.dev] を指定してください...'
                fi
            else
                echo 'themeディレクトリが存在していません。[ vagrant up ]して下さい。'
            fi
        else
            echo 'site.ymlを編集してから起動しなおしてください。'
            exit
        fi

    else
        echo 'gitリポジトリを追加してから起動しなおしてください...'
    fi
else
    echo 'wp-cliをインストールしてください...'
fi

exit

[ which wp ] のところ試してないのですがコマンドなかったら[wp-cliをインストールしてください]ってでるつもりで書いてます。

~/.lafcre8にオレオレセットが配置してあってそこからもってきています。
※[ vccw_first_set_up.command ]をセットするようにしたのは実行すると[vagrant up]から[gulp watch]までする予定。
別ファイルをセットしてgulpfailを設置することをしてたけどひとつのファイルにまとめました。[20171021:追記]
今後はgulpfail.jsのproxyの指定も書き換えるようにするのとgitのリポジトリに登録かcloneをするようにしていきたい。
クリックで実行できないときは実行権限を付与する

chmod +x fail_name.sh
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0