Developer Relations ツール: Zapier
Zapier サブスクリプション
私たちは、GitLab に関するメンションや swag ストアの注文などを転送するタスクを自動化するために Zapier を使用しています。
Zapier のサブスクリプションは Team プラン で運用されており、GitLab チームと共有されています。
Zapier アクセス
- URL: https://zapier.com
- アカウント: 1Password の
Zapierボールトで共有 Zapier アカウントを検索してください。当該ボールトにアクセスできない場合は、アクセスリクエスト を提出してください。
ログイン後は、Developer Relations フォルダーで Zap のアクセス、編集、作成が可能です。
現行の Zap
Developer Relations フォルダー で有効化されている Zap の一覧です。
| Zap | 説明 | 関連ツール |
|---|---|---|
| 新規ブログを GitLab フォーラムに投稿 | GitLab ブログ記事を 新しいフォーラムトピック として投稿 | about.gitlab.com/blog, Discourse |
Developer Advocacy 用の Zap
これらの Zap は、Zapier 内の Developer Relations のサブフォルダーである Developer Advocacy フォルダー に整理されています。
| Zap | 説明 | 関連ツール |
|---|---|---|
| 新規ブログ記事 - GitLab | GitLab ブログの RSS フィードを読み込み、#developer-advocacy-updates チャンネルへ投稿します。 | GitLab Blog, Slack |
| 新規ブログ記事 - GitHub | GitHub ブログの RSS フィードを読み込み、#developer-advocacy-updates チャンネルへ投稿します。追加の zap は競合分析用 Slack チャンネルへ投稿します。 | GitHub Blog, Slack |
| 新規ブログ記事 - CNCF | CNCF ブログの RSS フィードを読み込み、#developer-advocacy-updates チャンネルへ投稿します。 | CNCF Blog, Slack |
| 新規ステータスアップデート - Discourse | Discourse ステータスの RSS フィードを読み込み、#developer-advocacy-updates チャンネルへ投稿します。 | Discourse status page, Slack |
Discourse フォーラム用の Zap
これらの Zap は、新製品ローンチをサポートするために自動モニタリングを行います。
| Zap | 説明 | 関連ツール |
|---|---|---|
catalog または component を含む新規フォーラムトピック | Discourse フォーラム RSS フィード https://forum.gitlab.com/latest.rss を読み込み、#f_ci_catalog チャンネルへ投稿します。 | Discourse forum, Slack |
| GitLab Duo カテゴリの新規フォーラムトピック | Discourse フォーラム RSS フィード https://forum.gitlab.com/c/gitlab-duo.rss を読み込み、#gitlab-duo-forum-posts チャンネルへ投稿します。 | Discourse forum, Slack |
Hacker News 用の Zap
これらの Zap は、Zapier 内の Developer Relations のサブフォルダーである Developer Advocacy フォルダー に整理されています。
| Zap | 説明 | 関連ツール |
|---|---|---|
| Hackernews: フロントページ言及の Slack 通知: GitLab | Hackernews: GitLab フロントページのストーリーを #dev-advocacy-team Slack チャンネルへ。Hacker News 対応ワークフロー URL を追加します。 | HackerNews, Slack |
| Hackernews: フロントページ言及の Slack 通知: Open Core | Hackernews: Open Core フロントページのストーリーを #dev-advocacy-team Slack チャンネルへ。Hacker News 対応ワークフロー URL を追加します。 | HackerNews, Slack |
| Hackernews: 言及の Slack 通知: GitLab | Hackernews: GitLab の言及を #hn-mentions Slack チャンネルへ | HackerNews, Slack |
| Hackernews: 言及の Slack 通知: DevOps Platform | Hackernews: DevOps Platform の言及を #hn-mentions Slack チャンネルへ | HackerNews, Slack |
これらの Zap は Hacker News 用の Algolia 検索 API をポーリングし、特定の URL パラメーターを追加することで以下を実現します:
- 投稿内の文字列を検索する:
?query="open%20core" - トピックが Hacker News のフロントページに掲載された場合にタグでフィルタリング:
&tags=front_page
空白を含む文字列を検索するには、クエリパラメーターをクォートで囲む必要があります。例: https://hn.algolia.com/api/v1/search?&query=%22open%20core%22&tags=front_page。
その他の API URL の例:
- フロントページ: https://hn.algolia.com/api/v1/search?&query=gitlab&tags=front_page
- 言及: https://hn.algolia.com/api/v1/search_by_date?query="devops+platform"
gitlab-blog フォーラムボット
gitlab-blog ユーザーは、新しい GitLab ブログ を Community カテゴリに新しいトピックとして自動投稿するために使用されます。このプロセスは Zapier によって制御されます。Zapier は https://about.gitlab.com/atom.xml のブログ RSS フィードを読み込み、新しいエントリごとに admin API キーと gitlab-blog ユーザーを使用して新しいトピックを投稿します。
gitlab-blog の認証情報と admin API キーは、1Password の Marketing ボールトに保存されています。管理者はログインなしで Discourse 内のユーザーを直接編集できます。
トラブルシューティング
Slack メッセージに Hacker News のデータが含まれていない
Zap を開いて Send Channel Message in Slack アクションを確認します。Message Text セクションにエラー付きのプレースホルダー変数が含まれている場合、データソースを確認してください。Zapier でのデータ取得が前のステップで壊れている可能性があります。たとえば Retrieve Polls in Webhooks by Zapier などです。
例: Open Core Hacker News フロントページの Zap ではデータフィールドが提供されておらず、URL https://hn.algolia.com/api/v1/search?&query="open+core"&tags=front_page のフィールドを更新しても、続行できる結果レコードは出てきません。
修正方法: 検索を一時的に Hacker News フロントページ に現在掲載されている値に変更し、Zapier でフィールドを更新します。Slack メッセージの変数プレースホルダーを修正し、Zap を公開します。直後に再度 Zap を編集し、検索クエリを元の値(open+core)に戻します。
