| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- pipeline {
- agent any
- environment {
- // git账号,不用改
- GIT_CREDENTIAL_ID = '175776d4-6bbc-4da1-ace2-f2a89453fba4'
- // git地址
- GIT_ADDRESS = 'https://git.mall4j.com/bbc/mall4uni-bbc'
- // git分支
- GIT_BRANCH = 'master'
- // harbor账号,不用改
- HARBOR_CREDENTIAL_ID = 'edd44d2d-f182-40ab-8e72-b4fcae6f793f'
- // harbor地址
- HARBOR_ADDR = '192.168.1.11:80'
- // 名命空间
- NAMESPACE = 'mall4j-b2b2c-release'
- }
- stages {
- stage ('拉取git仓库代码') {
- steps {
- checkout([$class: 'GitSCM', branches: [[name: '*/' + "$GIT_BRANCH"]], extensions: [], userRemoteConfigs: [[credentialsId: "$GIT_CREDENTIAL_ID", url: "$GIT_ADDRESS"]]])
- }
- }
- stage ('通过pnpm构建项目') {
- steps {
- sh '''export PATH=/var/jenkins_home/nodejs/bin:$PATH
- rm -f .env.production
- tee ./.env.production <<-'EOF'
- # 如需添加更多环境变量,请以 VITE_APP_ 开头声明
- # 在代码中使用 import.meta.env.VITE_APP_XXX 获取指定变量
- # 环境配置标识
- VITE_APP_ENV = 'production'
- # 微信公众号appid
- # 注意此处为微信 公众号appid,不是小程序appid
- # 小程序appid在 manifest.json 文件的 mp-weixin.appid 字段中配置
- VITE_APP_MP_APPID = 'wx42bbe857570c5b40'
- # h5或其它app打开当前App的自定义UrlSchemes,还需要在manifest.json -> distribute -> app-plus -> android/schemes 与 ios urltypes 中进行配置 (二者需要一致)
- VITE_APP_URL_SCHEMES = 'lanhaibbc'
- # 统一接口域名
- VITE_APP_BASE_API = 'https://b2b2c-api.mall4j.com'
- # 客服|直播webstock接口请求地址
- VITE_APP_WS_IM_API = 'wss://b2b2c-im.mall4j.com'
- # 移动端域名地址配置
- # 需要配置到 微信公众号后台 JS安全域名
- # 用于微信公众号页面调用微信接口能力、生成分享二维码链接等
- VITE_APP_H5_DOMAIN = 'https://h5.mall4j.com'
- # 图片域名
- VITE_APP_RESOURCES_URL = 'https://img.mall4j.com/'
- # 商家管理后台地址
- VITE_APP_MERCHANT_PLATFORM_URL = 'https://b2b2c-multishop.mall4j.com'
- # 天地图Key
- VITE_APP_MAP_KEY = ''
- EOF
- npm config set registry https://registry.npmmirror.com
- pnpm install --no-frozen-lockfile
- npm run build:h5'''
- }
- }
- stage('构建yami-shop-h5镜像') {
- steps {
- withEnv(["PROJECT_NAME=yami-shop-h5"]) {
- sh 'docker build -t $HARBOR_ADDR/$NAMESPACE/$PROJECT_NAME:$BUILD_NUMBER .'
- withCredentials([usernamePassword(passwordVariable : 'DOCKER_PASSWORD' ,usernameVariable : 'DOCKER_USERNAME' ,credentialsId : "$HARBOR_CREDENTIAL_ID" ,)]) {
- sh 'echo "$DOCKER_PASSWORD" | docker login $HARBOR_ADDR -u "$DOCKER_USERNAME" --password-stdin'
- sh 'docker push $HARBOR_ADDR/$NAMESPACE/$PROJECT_NAME:$BUILD_NUMBER'
- sh 'ssh root@192.168.1.5 kubectl set image deploy/$PROJECT_NAME $PROJECT_NAME=$HARBOR_ADDR/$NAMESPACE/$PROJECT_NAME:$BUILD_NUMBER -n $NAMESPACE'
- }
- }
- }
- }
- }
- }
|