breeze配置K8S deploy机的shell自动化脚本

由于按照睿云智和的breeze图形化部署K8S仍然需要准备配置deploy机,所以细化了一下脚本直接完成deploy机器的自动化配置:

使用cobbler或者kickstart安装一台纯净的minimal的deploy机器步骤省略,直接贴deploy机器的配置;

个人懒得写注释了,这是一个母版雏形,可以直接使用,但是不含任何变量,东西都是写死的,所以可以适当扩展增加变量使脚本变得更灵活,例如把版本或者ansible配置都变成传参,在此就不再深入些了,亲测有效:

#!/bin/sh

#Firewall & selinux preparation
#Pdf provides
setenforce 0
sed -ri '/SELINUX=/c\SELINUX=disabled' /etc/selinux/config
firewall-cmd --set-default-zone=trusted
firewall-cmd --complete-reload


#Install docker-compose
if [ -e /usr/local/bin/docker-compose ];then
    echo "docker-compose exists~"
else
curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose
fi

#Install docker
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine -y

yum install -y yum-utils device-mapper-persistent-data lvm2 && yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo && yum install docker-ce docker-ce-cli containerd.io -y

systemctl enable docker && systemctl start docker

#Config Daocloud accelarate
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io && systemctl restart docker

#Install ansible
ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
yum -y install epel-release && yum -y install ansible

cat >> /etc/ansible/hosts <<-EOF
[k8s]           #change into the name you wanna change
192.168.25.10 ansible_ssh_user="root" ansible_ssh_pass="root" ansible_ssh_port=22
192.168.25.11 ansible_ssh_user="root" ansible_ssh_pass="root" ansible_ssh_port=22 
192.168.25.12 ansible_ssh_user="root" ansible_ssh_pass="root" ansible_ssh_port=22 
192.168.25.20 ansible_ssh_user="root" ansible_ssh_pass="root" ansible_ssh_port=22
EOF

sed -ri '/^#host/c\host_key_checking = False' /etc/ansible/ansible.cfg

ansible k8s -m authorized_key -a "user=root key='{
  { lookup('file','/root/.ssh/id_rsa.pub') }}'"

#Download breeze and install
yum -y install wget && wget -nc https://github.com/wise2c-devops/breeze/archive/v1.13.4.tar.gz && tar -xf v1.13.4.tar.gz &&a
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是创建依赖 CocoaPods 的 Xcode 模板工程并自动打包的脚本: ```bash #!/bin/bash # 工程名称 PROJECT_NAME="MyApp" # 模板文件夹路径 TEMPLATE_DIR_PATH="./Templates" # 模板文件夹名称 TEMPLATE_DIR_NAME="iOS App.xctemplate" # 文件夹路径 FILE_PATH="./${PROJECT_NAME}" # 导出 ipa 的路径 EXPORT_PATH="./${PROJECT_NAME}_IPA" # 创建项目文件夹 mkdir -p "${FILE_PATH}" # 复制模板到项目文件夹 cp -R "${TEMPLATE_DIR_PATH}/${TEMPLATE_DIR_NAME}" "${FILE_PATH}" # 重命名模板文件夹 mv "${FILE_PATH}/${TEMPLATE_DIR_NAME}" "${FILE_PATH}/${PROJECT_NAME}.xctemplate" # 创建临时目录 TMP_DIR=$(mktemp -d) cd "${TMP_DIR}" # 创建 Podfile echo "platform :ios, '9.0'" >> Podfile echo "use_frameworks!" >> Podfile echo "target '${PROJECT_NAME}' do" >> Podfile echo " pod 'Alamofire'" >> Podfile echo "end" >> Podfile # 安装依赖 pod install # 复制 Podfile 和 Pods 文件夹到模板工程 cp -R Podfile "${FILE_PATH}/${PROJECT_NAME}.xctemplate" cp -R Pods "${FILE_PATH}/${PROJECT_NAME}.xctemplate" # 替换模板中的名称 sed -i '' "s/\${PRODUCT_NAME}/${PROJECT_NAME}/g" "${FILE_PATH}/${PROJECT_NAME}.xctemplate/___FILEBASENAME___.swift" # 删除临时目录 rm -rf "${TMP_DIR}" # 打包 ipa xcodebuild clean archive -workspace "${FILE_PATH}/${PROJECT_NAME}.xcworkspace" -scheme "${PROJECT_NAME}" -archivePath "${EXPORT_PATH}/${PROJECT_NAME}.xcarchive" -configuration Release -quiet CODE_SIGN_STYLE=Manual CODE_SIGN_IDENTITY="iPhone Distribution: Your Company Name (XXXXXXXXXX)" PROVISIONING_PROFILE_SPECIFIER="Your Provisioning Profile Name" xcodebuild -exportArchive -archivePath "${EXPORT_PATH}/${PROJECT_NAME}.xcarchive" -exportOptionsPlist "ExportOptions.plist" -exportPath "${EXPORT_PATH}" -quiet # 删除 xcarchive 文件 rm -rf "${EXPORT_PATH}/${PROJECT_NAME}.xcarchive" echo "Done!" ``` 你需要将以上脚本复制到一个名为 `create_pod_template_and_package.sh` 的文件中,并在终端中运行以下命令: ```bash chmod +x create_pod_template_and_package.sh ./create_pod_template_and_package.sh ``` 这将创建一个名为 `MyApp` 的文件夹,其中包含一个名为 `MyApp.xctemplate` 的 iOS 应用程序模板,该模板包含了一个依赖 CocoaPods 的 Alamofire 库。然后,脚本将使用 Xcode 打包 `MyApp` 并将其导出为 ipa 文件,最终将 ipa 文件保存在 `MyApp_IPA` 文件夹中。请注意,你需要根据自己的证书和配置文件更新脚本中的代码签名信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值