Skip to content

admwx7/portfolio

Repository files navigation

Codeship Status for admwx7/portfolio

Getting Started

Project Setup

  • Requires a firebase project setup for functions and hosting
  • Populate the appropriate keys in the FirebaseService.ts

Local Dev - UI

  • Install required globals npm i -g yarn
  • Install local deps yarn install
  • Start the dev server yarn start
  • To lint your code yarn run lint
    • To autofix errors yarn run lint:fix

Local Dev - Functions

  • Install local deps cd functions && npm install
  • Start the functions npm start

Local Deployments

  • Install required globals npm i -g firebase-tools
  • Login to your firebase account firebase login
    • This account will require deployment accesss for hosting / functions in firebase
  • Run deployment script yarn run deploy
    • yarn run deploy:hosting will deploy just the UI
    • cd functions && npm run deploy will deploy just the Functions

CI Pipeline

  • Relies on Codeship which contains the credentials for connecting to firebase
  • When a new refresh token is needed, update the FIREBASE_TOKEN environment variable with the token generated by firebasse login:ci

Test pipeline

The following commands are run for CI phase "setup"

npm i -g yarn
yarn install

The following commands are run for the CI phase "test pipelines"

yarn run lint

Deploy pipeline

The following commands are run for the CI phase "deploy"

cd functions
npm i
cd ..
npm i -g firebase-tools
yarn run deploy

Required Environment Variables

  • FIREBASE_TOKEN - required for firebase-tools