Skip to content

Instantly share code, notes, and snippets.

@namnh68
Last active September 18, 2019 14:50
Show Gist options
  • Save namnh68/8fa6e7404d8f378f011532155ae6d4e9 to your computer and use it in GitHub Desktop.
Save namnh68/8fa6e7404d8f378f011532155ae6d4e9 to your computer and use it in GitHub Desktop.
function input_parameters() {
echo "
FPT-Software DevOps
Connection to Jenkins server in-progress...
_________________________
____________________
________________
___________
______
__
_
............................
Please fill your node name :"
read nodenameID
# echo "What is your OS: ubuntu or centos:"
# read os_type
echo "Please fill your secret key :"
read secretID
echo "Please choose your remote directory :Press "Enter" to keep default directory : "/home/jenkins""
read directoryID
DIRECTORYID=${directoryID:-"/home/jenkins"}
mkdir $DIRECTORYID ||
export DIRECTORYID=$DIRECTORYID &&
cd $DIRECTORYID
}
function centos7_install_jenkins_slave {
# Install Java
java -version
if [ $? -eq 0 ]; then
echo "Java installed"
else
echo "Install Java version 1.8"
yum install -y java-1.8.0-openjdk
fi
cd $DIRECTORYID && curl -Ok https://jenkins.learn.akawork.io/jnlpJars/agent.jar
cat > $DIRECTORYID/java.sh << EOF
#!/bin/bash
cd $DIRECTORYID
java -jar agent.jar -jnlpUrl https://jenkins.learn.akawork.io/computer/$nodenameID/slave-agent.jnlp -secret $secretID -workDir "$DIRECTORYID"
EOF
chmod +x $DIRECTORYID/java.sh
cat > /etc/systemd/system/jenkins-agent.service << EOF
[Unit]
Description=java web service
After=network.target
[Service]
Type=simple
ExecStart=$DIRECTORYID/java.sh
User=root
Group=root
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload &&
systemctl enable slave.service &&
systemctl start slave.service ||
echo "Added slave service in system.
slave.service is started.
Connection to Jenkins server is successful!"
}
function main {
input_parameters
centos7_install_jenkins_slave
}
# Run main script
main
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment