Skip to content

na2na-p/jetdisc

Repository files navigation

Discord Bot

必要なもの

基本的には.tool-versionsを参照してください。 asdfを使っている場合はそのまま入ります。

  • Node.js
  • pnpm
  • Python

Pythonは、@discordjs/opusの入れるのに必要です。 ただし、ランタイムでffmpegが必要になります。

登場するドメイン

  • Actor
    • Userの子概念で、interactしたUserを指す。

Helmを利用してデプロイする

ArgoCDを使わない場合

リソースの作成

  1. kubectl create namespace jetdiscでNamespaceを作成する
  2. infra/k8s/manifests/secret.example.ymlを参考に、同ディレクトリにsecret.ymlを作成する
    1. SecretはBase64エンコードすること
  3. kubectl apply -f infra/k8s/manifests/secret.yml -n jetdiscでSecretの適用をする
  4. helm install -n jetdisc {任意の名前/バージョン名など} ./infra/k8s/helm

リソースの削除

  1. helm uninstall {任意の名前/バージョン名など}
  2. kubectl delete -f infra/k8s/manifests/secret.ymlでSecretの削除をする
  3. kubectl delete namespace jetdiscでNamespaceの削除をする

ArgoCDを使う場合

リソースの作成

  1. ArgoCDと同じクラスターにログインする
  2. kubectl create namespace jetdiscでNamespaceを作成する
  3. infra/k8s/manifests/secret.example.ymlを参考に、同ディレクトリにsecret.ymlを作成する
    1. SecretはBase64エンコードすること
  4. kubectl apply -f infra/k8s/manifests/secret.yml -n jetdiscでSecretの適用をする
  5. kubectl apply -f infra/k8s/argocd/jetdisc.yamlでArgoCDの適用をする

リソースの削除

  1. kubectl delete -f infra/k8s/argocd/jetdisc.yaml
  2. kubectl delete -f infra/k8s/manifests/secret.ymlでSecretの削除をする
  3. kubectl delete namespace jetdiscでNamespaceの削除をする