Skip to content

アイデア投稿履歴のリアクション (絵文字での反応以外も含めて😉) をサポートするDiscord Bot

License

Notifications You must be signed in to change notification settings

GiganticMinecraft/idea-reaction

Repository files navigation

idea-reaction

CI Release idea-reaction-token

アイデア投稿履歴のリアクション (絵文字での反応以外も含めて😉) をサポートするDiscord Bot.

Features

  • アイデア投稿フォームに新しいアイデアが投稿された際に:
    • その投稿履歴に "👍", "👎", "🤔" のリアクションを付与する
    • その投稿履歴にスレッドを作成する
    • その投稿履歴の Redmine Issue にスレッドへの URL をコメントする

Usage

Development

  1. docker-redmine 内の compose.yaml を実行し, Redmine と postgres を起動します.
  2. Redmine にログインし, Issue の作成権限・更新権限を持つユーザを作成し, API Key を取得します.
  3. idea-reaction.env ファイルに環境変数を設定します.
  4. cargo run で idea-reaction を起動します.
  • 環境変数 ENV_NAMEproduction に設定すると Sentry との連携が有効になります. 開発時は指定しないようにしてください.
  • 環境変数 REDMINE_API_KEY は Redmine の API Key です. Redmine にコメントを投稿する機能を有効にする場合は必須です.
    • デバッグ時に Redmine の連携機能が不要な場合は指定せずに起動すると自動で無効化されます.

Release (for GiganticMinecraft admin)

  • idea-reaction は GitHub App (release-please などのツール) を使った自動リリースには対応していません.
  • リリースをするときは Cargo.tomlversion プロパティなどを bump したうえで Actions にある Run workflow から CI を実行すると ghcr.io に Docker Image がリリースされます.
  • k8s 本番環境にある idea-reaction を更新する場合は .../apps/seichi-minecraft/idea-reaction/idea-reaction.yamlspec.template.spec.containers.image の値を変更してください.
    • タグ等の情報は Packages から確認できます.

Environment Variables

Name Description デフォルト値
ENV_NAME 環境名 (production 以外は無視される) development
DISCORD_API_TOKEN Discord Bot のトークン ---
REDMINE_API_KEY Redmine の API Key (コメント機能を有効にする場合のみ) ---
REDMINE_URL Redmine の URL http://localhost:8080
TARGET_CHANNEL_ID 監視対象チャンネルのID ---
TARGET_WEBHOOK_ID 監視対象WebhookのID ---
TARGET_GUILD_ID 監視対象ギルドのID ---

About

アイデア投稿履歴のリアクション (絵文字での反応以外も含めて😉) をサポートするDiscord Bot

Resources

License

Stars

Watchers

Forks

Packages