github.com/StackPointCloud/packer@v0.10.2-0.20180716202532-b28098e0f79b/examples/alicloud/chef/chef.sh (about) 1 #!/bin/sh 2 #if the related deb pkg not found, please replace with it other available repository url 3 HOSTNAME=`ifconfig eth1|grep 'inet addr'|cut -d ":" -f2|cut -d " " -f1` 4 if [ not $HOSTNAME ] ; then 5 HOSTNAME=`ifconfig eth0|grep 'inet addr'|cut -d ":" -f2|cut -d " " -f1` 6 fi 7 CHEF_SERVER_URL='http://dubbo.oss-cn-shenzhen.aliyuncs.com/chef-server-core_12.8.0-1_amd64.deb' 8 CHEF_CONSOLE_URL='http://dubbo.oss-cn-shenzhen.aliyuncs.com/chef-manage_2.4.3-1_amd64.deb' 9 CHEF_SERVER_ADMIN='admin' 10 CHEF_SERVER_ADMIN_PASSWORD='vmADMIN123' 11 ORGANIZATION='aliyun' 12 ORGANIZATION_FULL_NAME='Aliyun, Inc' 13 #specify hostname 14 hostname $HOSTNAME 15 16 mkdir ~/.pemfile 17 #install chef server 18 wget $CHEF_SERVER_URL 19 sudo dpkg -i chef-server-core_*.deb 20 sudo chef-server-ctl reconfigure 21 22 #create admin user 23 sudo chef-server-ctl user-create $CHEF_SERVER_ADMIN $CHEF_SERVER_ADMIN $CHEF_SERVER_ADMIN 641002259@qq.com $CHEF_SERVER_ADMIN_PASSWORD -f ~/.pemfile/admin.pem 24 25 #create aliyun organization 26 sudo chef-server-ctl org-create $ORGANIZATION $ORGANIZATION_FULL_NAME --association_user $CHEF_SERVER_ADMIN -f ~/.pemfile/aliyun-validator.pem 27 28 #install chef management console 29 wget $CHEF_CONSOLE_URL 30 sudo dpkg -i chef-manage_*.deb 31 sudo chef-server-ctl reconfigure 32 33 type expect >/dev/null 2>&1 || { echo >&2 "Install Expect..."; apt-get -y install expect; } 34 echo "spawn sudo chef-manage-ctl reconfigure" >> chef-manage-confirm.exp 35 echo "expect \"*Press any key to continue\"" >> chef-manage-confirm.exp 36 echo "send \"a\\\n\"" >> chef-manage-confirm.exp 37 echo "expect \".*chef-manage 2.4.3 license: \\\"Chef-MLSA\\\".*\"" >> chef-manage-confirm.exp 38 echo "send \"q\"" >> chef-manage-confirm.exp 39 echo "expect \".*Type 'yes' to accept the software license agreement, or anything else to cancel.\"" >> chef-manage-confirm.exp 40 echo "send \"yes\\\n\"" >> chef-manage-confirm.exp 41 echo "interact" >> chef-manage-confirm.exp 42 expect chef-manage-confirm.exp 43 rm -f chef-manage-confirm.exp 44 45 #clean 46 rm -rf chef-manage_2.4.3-1_amd64.deb 47 rm -rf chef-server-core_12.8.0-1_amd64.deb