/mynews

Primary LanguageTypeScriptApache License 2.0Apache-2.0

mynews

Cloud Functions deploy_gas

最近チェックしたいものを通知してくれるもの ex. プロ野球の結果など

プロトタイプ

毎日17時にその日にある試合の一覧を通知する。

環境構築

Webdriver

Mac で Safari の Webdriver を使えるようにするためには、 以下を実行する必要がある。

$ safaridriver --enable

参考

clasp

ローカルで GAS の開発を行うためのツールである clasp をインストールするためには以下のコマンド実行が必要。

$ npm install -g @google/clasp

その後、このリンクから API を有効化する必要がある。

以下のコマンドを実行して Google アカウントにログインできる。

$ clasp login

ログイン後、以下でプロジェクトを作成した。

$ clasp create --title "My News" --type standalone

プロジェクトの設定は .clasp.json に反映される。

以下でコードを GAS に反映できる。

$ clasp push

反映したくないものは .claspignore へ追加する。

参考

gcloud CLI

ここから gcloud CLI をダウンロードし、初期化する

$ gcloud init

.gcloudignore でデプロイしないファイルを指定

以下でデプロイ

$ gcloud functions deploy scrapingNPB --runtime=nodejs16 \
  --trigger-http --region=asia-northeast1 \
  --entry-point=lib/index.js

Firebase CLI

ここから CLI をインストール

インストール後、以下でログイン

$ firebase login

以下で初期化

$ firebase init

CI で使うためには以下のコマンドでトークンを生成する必要がある

$ firebase login:ci

CI で CLI を使う

一旦このトークンはリポジトリの Secret に設定してある。

開発環境

Node.js v16.13.2

技術スタック

  • Node.js
  • Selenium
  • TypeScript
  • GAS
  • clasp
  • Cloud Functions