firebase function 으로 user.create 트리거 훅 만들기 (1/2)

HJ MOON·2021년 9월 24일
0
post-thumbnail

prerequisite

  1. 새로운(기존의) Firebase 프로젝트
  2. Firebase와 연동할 임의의 로컬 NodeJS 프로젝트
  3. OSX 로 진행했습니다.

1. Firebase 프로젝트에서 Functions 시작하기

Functions를 시작하려면 파이어베이스 명령줄 도구 (CLI)를 설치해야합니다.

npm install -g firebase-tools

다운로드 및 설치에는 시간이 다소 소요됩니다.
이과정은 이미 다른프로젝트에서 파이어베이스툴을 글로벌로 설치했다면 건너뛰어도 됩니다.

설치가 완료가 되면 이제 터미널에서 NodeJS 프로젝트 폴더로 이동한다음 다음을 입력하여 firebase CLI에 로그인합니다.

firebase login

웹브라우저가 열리면 파이어베이스를 사용중인 구글계정으로 접속한뒤 접근을 허용합니다.성공하면 다음과 같은 메시지가 브라우저에 나타납니다.

터미널에 Success! Logged in as your@email.com 같이 나오면 로그인이 된것입니다.
계속해서 파이어베이스 Functions를 사용하기위해 프로젝트를 초기화합니다.

firebase init

멋진 아스키로고와함께 나의 프로젝트에 파이어베이스가 초기화됐습니다!!

웹브라우저에서 파이어베이스 Functions 항목으로 가보면 이제 첫 번째 배포를 대기 중입니다.

이제 터미널로 돌아가서

? Which Firebase features do you want to set up for this directory? Press Space to select features, then Enter to confirm your choices. (Press <space> to select, <a> to toggle all, <i> to invert selection)
 ◯ Remote Config: Configure a template file for Remote Config
 ◯ Realtime Database: Configure a security rules file for Realtime Database and (optionally) provision default instance
 ◯ Firestore: Configure security rules and indexes files for Firestore
❯◯ Functions: Configure a Cloud Functions directory and its files
 ◯ Hosting: Configure files for Firebase Hosting and (optionally) set up GitHub Action deploys
 ◯ Hosting: Set up GitHub Action deploys
 ◯ Storage: Configure a security rules file for Cloud Storage
(Move up and down to reveal more choices)

terminal 에서 이런 고급스러운 UI라니 정말 좋습니다. 파이어베이스는 정말 다양한 기능을 제공하고있는데, 스페이스바로 항목을 토글 할수 있습니다. 여기서는 Functions 를 선택합니다.

Project setup

엔터키를 누르고 Use an existing project를 선택하고 기존에 존재하는 파이어베이스 프로젝트를 선택합니다.

Functions setup

계속해서 몇가지 더 선택할 것들이 있습니다. 자바스크립트를 쓸것인지 ESLint라든지 npm 디펜던시를 지금 설치할것인지를 묻습니다.

설치가 다 완료되면 로컬 프로젝트 폴더내에 몇가지 파일과 폴더가 생성되어있을것입니다.

첫번째 Function hello world 배포하기

본격적인 코드를 작성하기에 앞서 실제로 이것이 작동하는지 안하는지부터 확인해보고 싶습니다.
프로젝트 폴더안에는 functions 폴더가 생성되어있고 안에는 이미 index.js가 있습니다.
해당파일을 vscode와 같은 에디터로 열어서 6~9라인의 주석을 해제하고 저장합니다.

그리고 터미널에서 다음과 같이 입력합니다.

firebase deploy

일련의 진행사항이 터미널에 표시되고 약 2~3분에 걸쳐 배포가 진행됩니다.
Deploy complete!!!


파이어베이스 대시보드에 가보면 새로운 펑션이 배포되어있는것을 확인 할 수 있습니다.

다음글에서 본격적으로 user.create 훅을 만들어봅니다.

profile
@_@ 빠르게 변하는 세상

0개의 댓글