Browse Source

部署文件初始化

master^2
bpa 2 weeks ago
parent
commit
88613e2e87
3 changed files with 160 additions and 0 deletions
  1. +142
    -0
      Jenkinsfile
  2. +13
    -0
      default.conf
  3. +5
    -0
      dockerfile

+ 142
- 0
Jenkinsfile View File

@@ -0,0 +1,142 @@

def getHost(){
def remote = [:]
remote.name = 'eip'
remote.host = '10.6.1.50'
remote.user = 'root'
remote.port = 22
remote.password = '120962839'
remote.allowAnyHosts = true
return remote
}

pipeline{
agent any
parameters {
choice(
description: '开放文档环境',
name: 'environment',
choices: ['dev1']
)

choice(
description: '执行操作(发布|回滚)',
name: 'operation',
choices: ['develop', 'rollback']
)

choice(
description: '是否下载包',
name: 'isDownloadPackage',
choices: ['是','否']
)

string(
name: 'tag',
defaultValue: '',
description: '版本tag'
)

}

stages
{

stage('Prepare') {
steps {
script{
echo "1.Prepare Stage"
echo "当前环境${params.environment}"
if(params.operation=='develop')
{
checkout scm
script {
build_tag = sh(returnStdout: true, script: 'git rev-parse --short HEAD').trim()
if (env.BRANCH_NAME != 'master') {
build_tag = "${env.BRANCH_NAME}-${build_tag}"
}
}
}
else{
build_tag="${params.tag}"
}
}
}
}
stage('Test') {
steps {
script{
echo "2.Test Stage"
}
}

}
stage('Build') {
steps {
script{
echo "3.Build Docker Image Stage"
if(params.operation=='develop')
{
nodejs("nodejs") {

}
if(params.isDownloadPackage=='是')
{
sh "npm install --unsafe-perm=true --allow-root"
sh "rm -rf ./dist/*"
sh "npm run build"
}
sh "docker build -t 10.2.1.24:10242/bpa/openplatform:${build_tag} ."
}
}
}

}





stage('Push') {
steps {
script{
echo "4.Push Docker Image Stage"
withCredentials([usernamePassword(credentialsId: 'harbor', passwordVariable: 'harborPassword', usernameVariable: 'harborUser')]) {
sh "docker login -u ${harborUser} -p ${harborPassword} 10.2.1.24:10242"
if(params.operation=='develop')
{
sh "docker push 10.2.1.24:10242/bpa/openplatform:${build_tag}"
}
}
}
}




}


stage('Deploy') {

steps {
script{
echo "5. Deploy Stage"
// server = getHost()
// sshCommand remote: server, command: """
// /root/eip/web/shell/linux-eipweb.install.sh eipweb ${build_tag} 80
// """

// sh "sed -i 's/<BUILD_TAG>/${build_tag}/' k8s_openplatform.yaml"
// sh "sed -i 's/<BRANCH_NAME>/${env.BRANCH_NAME}/' k8s_openplatform.yaml"
// sh "sed -i 's/<NAMESPACES>/${params.environment}/' k8s_openplatform.yaml"
// sh "kubectl apply -f k8s_openplatform.yaml --record"
}



}
}
}

}

+ 13
- 0
default.conf View File

@@ -0,0 +1,13 @@
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
}




+ 5
- 0
dockerfile View File

@@ -0,0 +1,5 @@
FROM nginx:latest
COPY ./dist /usr/share/nginx/html/
COPY ./default.conf /etc/nginx/conf.d/
EXPOSE 80


Loading…
Cancel
Save