Мне нужна помощь с развертыванием vuejs проекта с использованием CI / CD gitlab .
, в этом случае у меня есть 3 файла сред :
- .env.development.local
- .env.staging.local
- .env.production.local
И я здесь использую другой baseHref / publicPath :
- / development
- / stage
- / production
На этом этапе я следую учебному пособию Here.
, но я все еще не понимаю, каким образом я развернул с помощью другого env.
Обычно я использую команду:
- Staging
npm run build - --mode stage
Production
npm run build - --mode production
Вот пример env , который Я сделал:
# Environment Local
NODE_ENV=development
BASE_URL = /development/
VUE_APP_TITLE=Website (development)
VUE_APP_END_POINT='http://localhost:8000/api/v1/'
VUE_APP_CLIENT_ID = 12341
VUE_APP_CLIENT_SECRET = 'asdASD1123s'
VUE_APP_SCOPE = '*'
VUE_APP_BASE_URL_LINK = 'http://localhost:8080'
VUE_APP_VERSION =
И это файл vue .config. js, который у меня есть:
process.env.VUE_APP_VERSION = require('./package.json').version
module.exports = {
publicPath: process.env.BASE_URL,
"transpileDependencies": [
"vuetify"
]
}
ветвь, которую я сделал:
- тест
- разработка
- master
В gitlab-ci.yml:
build site:
image: node:6
stage: build
script:
- npm install --progress=false
- npm run build
artifacts:
expire_in: 1 week
paths:
- dist
unit test:
image: node:6
stage: test
script:
- npm install --progress=false
- npm run unit
deploy:
image: alpine
stage: deploy
script:
- apk add --no-cache rsync openssh
- mkdir -p ~/.ssh
- echo "$SSH_PRIVATE_KEY" >> ~/.ssh/id_dsa
- chmod 600 ~/.ssh/id_dsa
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
- rsync -rav --delete dist/ user@server.com:/var/www/website/
с Приведенная выше конфигурация gitlab-ci.yml позволяет развернуть только локальную среду.
Надеюсь, кто-то захочет поделиться своими знаниями и опытом о CI / CD deploy vuejs. Или дайте несколько CI / CD vuejs ссылок на учебник несколько окружение .
Большое спасибо.