尝试将带有VueJs的CI / CD与Gitlab一起使用。
使用50种不同的gitlab-ci.yml配置,并持续处理不同阶段的问题。
我按照以下教程进行了T:
https://about.gitlab.com/2017/09/12/vuejs-app-gitlab/
serial.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
serial.requestLayout();
getActivity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_UNSPECIFIED);
return false;
}
});
我跳过了测试阶段,因为它一直在失败......所以为什么不跳过它。
你的gitlab-ci.yml文件(适用于VueJS webapp)是什么样的?
答案 0 :(得分:2)
昨天我在研究如何在Gitlab上设置CI / CD时碰到了这个问题。经过24小时的研究和测试。我终于有了工作脚本。希望这会有所帮助。
要使其正常工作,您需要:
STAGING_PRIVATE_KEY
部分中设置变量Settings -> Variables
下面是我的最终脚本:
image: node:latest
stages:
- build
- deploy
build site:
stage: build
before_script:
- apt-get update
- apt-get install zip unzip nodejs npm -y
- npm install --progress=false
cache:
paths:
- node_modules/
script:
- npm run build
artifacts:
expire_in: 1 week
paths:
- dist/
deploy:
stage: deploy
before_script:
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
- eval $(ssh-agent -s)
- echo "$STAGING_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- ssh-keyscan YOUR-SEVER-IP >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
script:
- ssh -p22 root@YOUR-SEVER-IP "mkdir /var/www/_tmp"
- scp -p22 -r /builds/YOUR-USERNAME/YOUR-REPO-TITLE/dist/* root@form.toprecng.org:/var/www/form.toprecng.org/_tmp
- ssh -p22 root@YOUR-SEVER-IP "mv /var/www/html/ /var/www/_old && mv /var/www/_tmp /var/www/html/"
- ssh -p22 root@YOUR-SEVER-IP "rm -rf /var/www/_old"