It took me more than an hour to understand how to use cookies when you are sending a request to the API server.
The most important thing is that you only need to correctly add the cookies, then the cookies will be automatically sent to the API server.
Don't try to add a cookie item at the headers' configuration part!
I originally thought the later should be used. I was wrong.
cat monitor.sh
#!/bin/bash
source /etc/profile
cd /home/koala/Vagrant/windows-server-2019
(echo > /dev/tcp/192.168.178.220/23) > /dev/null 2>&1
if [ $? -ne 0 ]; then
vagrant halt
vagrant up
fi
-
Checkout code
-
Set correct config file
-
Scp to the remote machine
-
Run deploy.sh on the remote machine by ssh
- docker-compose build --no-cache
- docker-compose down
- docker-compose up -d
sshPublisher setup
- Manage Jenkins -> Config System
- Find Publish over SSH
- Add New Server, test connection
- Write directive in Jenkins file
sshPublisher(
continueOnError: false, failOnError: true,
publishers: [
sshPublisherDesc(
configName: "yt-files-${BRANCH}",
verbose: true,
transfers: [
sshTransfer(
sourceFiles: "**/**",
remoteDirectory: "./publish/${BRANCH}",
removePrefix: '',
remoteDirectorySDF: false,
cleanRemote: true,
execCommand: "cd ./publish/${BRANCH} && bash deploy.sh ${BRANCH}"
)
])
]
)
要在Jenkins中新增对一个仓库的发布,需要以下步骤
-
创建流水线, 添加Git仓库,Credentials
-
为各分支添加必要的配置文件(不方便加入版本控制的机密信息)
-
写 Jenkinsfile