generated from Templates/html-nginx-deployment
105 lines
3.7 KiB
Bash
Executable File
105 lines
3.7 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
#./setup.sh 3000 192.168.195.195:30000/nginx:latest cicd/Jenkinsfile
|
|
|
|
folderName=${PWD##*/}
|
|
folderName=${folderName:-/}
|
|
|
|
echo "Hello, lets get your project set up. Please follow the prompts attentively."
|
|
|
|
read -p "Do you want to run this project locally? [Yn] " localProject
|
|
|
|
if [ $localProject == 'Y' ] || [ $localProject == 'y' ]
|
|
then
|
|
echo "Configuring local settings"
|
|
read -p " Local port to expose server on? [eg 3000] " localPort
|
|
read -p " NGINX container to use? [eg nginx/nginx:latest] " localContainer
|
|
|
|
echo " Creating start script"
|
|
cp template/start.sh start.sh
|
|
sed -ie "s|{{localPort}}|$localPort|g" start.sh
|
|
sed -ie "s|{{localContainer}}|$localContainer|g" start.sh
|
|
chmod +x start.sh
|
|
rm start.she
|
|
fi
|
|
|
|
read -p "Are you deploying this with the Sciocatti Jenkins pipeline? [Yn] " useJenkins
|
|
|
|
if [ $useJenkins == 'Y' ] || [ $useJenkins == 'y' ]
|
|
then
|
|
echo "Configuring deployment settings. See the Readme for info on deployable branches."
|
|
read -p " K3S App name: " k3sApp
|
|
read -p " K3S namespace: [eg apps] " k3sNamespace
|
|
read -p " K3S base container: [eg nginx:nginx:latest] " k3sContainerBase
|
|
read -p " K3S prod NodePort: " k3sport
|
|
|
|
k3sportMain=$((k3sport+1))
|
|
k3sportStage=$((k3sport+2))
|
|
|
|
echo "Creating Folders"
|
|
echo " Creating cicd/"
|
|
mkdir cicd
|
|
echo " Creating cicd/prod"
|
|
mkdir cicd/prod
|
|
echo " Creating cicd/main"
|
|
mkdir cicd/main
|
|
echo " Creating cicd/stage"
|
|
mkdir cicd/stage
|
|
|
|
echo "Loading files"
|
|
echo " Loading cicd/Jenkinsfile"
|
|
cp template/Jenkinsfile cicd/Jenkinsfile
|
|
sed -ie "s|{{k3sApp}}|$k3sApp|g" cicd/Jenkinsfile
|
|
rm cicd/Jenkinsfilee
|
|
|
|
echo " Loading main"
|
|
k3sEnv=main
|
|
echo " Loading cicd/main/Dockerfile"
|
|
cp template/Dockerfile cicd/main/Dockerfile
|
|
sed -ie "s|{{k3sContainerBase}}|$k3sContainerBase|g" cicd/main/Dockerfile
|
|
rm cicd/main/Dockerfilee
|
|
|
|
echo " Loading cicd/main/deployment.yaml"
|
|
cp template/deployment.yaml cicd/main/deployment.yaml
|
|
sed -ie "s|{{k3sApp}}|$k3sApp|g" cicd/main/deployment.yaml
|
|
sed -ie "s|{{k3sport}}|$k3sportMain|g" cicd/main/deployment.yaml
|
|
sed -ie "s|{{k3sNamespace}}|$k3sNamespace|g" cicd/main/deployment.yaml
|
|
sed -ie "s|{{k3sEnv}}|$k3sEnv|g" cicd/main/deployment.yaml
|
|
rm cicd/main/deployment.yamle
|
|
|
|
echo " Loading stage"
|
|
k3sEnv=stage
|
|
echo " Loading cicd/stage/Dockerfile"
|
|
cp template/Dockerfile cicd/stage/Dockerfile
|
|
sed -ie "s|{{k3sContainerBase}}|$k3sContainerBase|g" cicd/stage/Dockerfile
|
|
rm cicd/stage/Dockerfilee
|
|
|
|
echo " Loading cicd/stage/deployment.yaml"
|
|
cp template/deployment.yaml cicd/stage/deployment.yaml
|
|
sed -ie "s|{{k3sApp}}|$k3sApp|g" cicd/stage/deployment.yaml
|
|
sed -ie "s|{{k3sport}}|$k3sportStage|g" cicd/stage/deployment.yaml
|
|
sed -ie "s|{{k3sNamespace}}|$k3sNamespace|g" cicd/stage/deployment.yaml
|
|
sed -ie "s|{{k3sEnv}}|$k3sEnv|g" cicd/stage/deployment.yaml
|
|
rm cicd/stage/deployment.yamle
|
|
|
|
echo " Loading prod"
|
|
k3sEnv=prod
|
|
echo " Loading cicd/prod/Dockerfile"
|
|
cp template/Dockerfile cicd/prod/Dockerfile
|
|
sed -ie "s|{{k3sContainerBase}}|$k3sContainerBase|g" cicd/prod/Dockerfile
|
|
rm cicd/prod/Dockerfilee
|
|
|
|
echo " Loading cicd/prod/deployment.yaml"
|
|
cp template/deployment.yaml cicd/prod/deployment.yaml
|
|
sed -ie "s|{{k3sApp}}|$k3sApp|g" cicd/prod/deployment.yaml
|
|
sed -ie "s|{{k3sport}}|$k3sport|g" cicd/prod/deployment.yaml
|
|
sed -ie "s|{{k3sNamespace}}|$k3sNamespace|g" cicd/prod/deployment.yaml
|
|
sed -ie "s|{{k3sEnv}}|$k3sEnv|g" cicd/prod/deployment.yaml
|
|
rm cicd/prod/deployment.yamle
|
|
|
|
fi
|
|
|
|
echo "Removing template folder"
|
|
rm -rf template
|
|
|
|
echo "Thank you! Happy building..." |