CircleCI에서 Vue.js 앱을 Firebase에 배포
당시 기사는 이것입니다.
Vue.js 앱을 FirebaseHosting에 배포하려면,
yarn build
yarn deploy
그래서 배포했습니다.
다만, 엄밀(?)에는, 이것 뿐만이 아니고,
firebase login
, 해 firebase use [プロジェクト]
를 해 두어야 하는 것입니다.그래서, 본제입니다만 이것을 CircleCI로 자동화했다고 하는 것입니다.
방금 시작했기 때문에 설정 파일에 과부족이 있는지 생각합니다만 이런 느낌으로 설정해 두면,
git push origin master
하면, CircleCI쪽으로 빌드해 Firebase에 Hosting까지 해 줍니다.CircleCI 설정
한 가지주의를 기울일 수 있습니다. Mac의 커맨드 라인에서 firebase login을하면 브라우저가 시작되지만 그러한 것은 무리이므로 사전에 Deploy용의 액세스 토큰을 취득해 완전하게 커멘드로 조작할 수 있도록(듯이) 해야 합니다.
그런 다음 Firebase 액세스 토큰을 얻고 마침내 배포를위한 프로젝트 ID도 설정합니다. 화면은 이런 느낌입니다.
이렇게하면 CircleCI의 config.yml에서 변수로 사용할 수 있습니다.
디렉토리 구성은 이런 느낌
Vue.js와 Firebase에서 프로젝트를 만들면 이런 느낌이 있다고 생각합니다.
프로젝트의 최상위 레벨에 .circleci/config.yml을 만드는 것이 포인트라고합니다.
.
├── .circleci
│ └── config.yml
├── .env
├── .env.development
├── .env.production
├── .eslintrc.js
├── .firebase
├── .firebaserc
├── .git
├── .gitignore
├── .node-version
├── README.md
├── babel.config.js
├── dist <-------- build したもの
├── firebase.json
├── firestore.indexes.json
├── firestore.rules
├── functions
├── node_modules
├── package.json
├── public
├── src
├── storage.rules
├── vue.config.js
└── yarn.lock
.circleci/config.yml
내용은 이런 느낌입니다. 테스트 없음 w, 빌드하고 갑자기 배포 버립니다.
version: 2
jobs:
build:
working_directory: ~/app
docker:
- image: circleci/node:10
environment:
LANG: ja_JP.UTF-8
TZ: Asia/Tokyo
steps:
- checkout # ソースコードを作業ディレクトリにチェックアウト
- run:
name: install & build
command: |
yarn install
yarn build
- persist_to_workspace:
root: . # workspaceのrootパスを永続化する、要は共有
paths:
- . # rootからの相対パス
deploy:
working_directory: ~/app
docker:
- image: circleci/node:10
environment:
LANG: ja_JP.UTF-8
TZ: Asia/Tokyo
steps:
- attach_workspace: # persist_to_workspaceで設定したディレクトリを利用する
at: .
- run:
name: deploy firebase hosting
command: |
yarn global add firebase-tools
`yarn global bin`/firebase deploy --only hosting --project "${PROJECT_ID}" --token "${FIREBASE_TOKEN}"
workflows:
version: 2
build_and_deploy:
jobs:
- build
- deploy:
requires: # buildが成功したら実行
- build
filters:
branches:
only: master # master branchのみdeploy
이제 좋은 느낌에 배포하게 되었습니다~
Reference
이 문제에 관하여(CircleCI에서 Vue.js 앱을 Firebase에 배포), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/qoAop/items/2bd013aa62219882b4da텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)