Github Actionsを使ってGithubにpushしたらはてなブログに自動投稿する方法

こんにちは。今回は、Github Actionsを使って、Githubにpushしたらはてなブログに自動投稿する方法について解説していきます。Github Actionsを使えば、Github上のイベントをトリガーに、様々な処理を自動化することができます。この記事では、Github Actionsを使ってGithubにpushしたらはてなブログに自動投稿する方法を実際の例を交えながら解説します。

前提条件

この記事を読む前に、以下の前提条件を満たしていることを確認してください。

  • Githubアカウントを持っていること
  • はてなブログアカウントを持っていること
  • はてなブログAPIのAPIキーを取得していること

手順

以下の手順に従って、Githubにpushしたらはてなブログに自動投稿するワークフローを作成しましょう。

1. はてなブログAPIのAPIキーを取得する

はてなブログAPIを使うためには、APIキーが必要です。以下の手順に従って、はてなブログAPIのAPIキーを取得してください。

  1. はてなブログにログインする。
  2. 「設定」→「詳細設定」→「ブログの設定」をクリックする。
  3. 「APIキー」欄にある「新しいAPIキーを生成する」をクリックする。
  4. APIキーをコピーしてメモしておく。

2. Githubにリポジトリを作成する

Githubにリポジトリを作成し、ローカル環境にクローンします。

3. はてなブログAPIを使うためのライブラリをインストールする

はてなブログAPIを使うためのライブラリであるhatena-blog-apiをインストールします。npmを使ってインストールすることができます。

npm install hatena-blog-api

4. はてなブログに投稿するスクリプトを作成する

Github Actionsで実行するスクリプトを作成します。ここでは、以下のようなスクリプトを作成します。

const HatenaBlogAPI = require('hatena-blog-api');
const blog = new HatenaBlogAPI({
  type: 'wsse',
  username: 'はてなID',
  blogId: 'ブログID',
  apiKey: process.env.HATENA_API_KEY
});

const title = 'はてなブログに投稿するタイトル';
const body = 'はてなブログに投稿する本文';
const draft = false;

blog.post(title, body, { draft })
  .then(() => {
    console.log('投稿が完了しました!');
  })
  .catch((error) => {
    console.error(error);
  });

このスクリプトでは、はてなブログAPIを使用して、タイトル、本文、下書きかどうかを指定して、はてなブログに投稿することができます。

5. ワークフローファイルを作成する

Github Actionsで実行するワークフローファイルを作成します。リポジトリのルートに、.github/workflowsディレクトリを作成し、以下のような内容のhatena-blog.ymlという名前のファイルを作成します。

name: Post to Hatena Blog on Push

on:
  push:
    branches:
      - main

jobs:
  post-to-hatena-blog:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v2
      - name: Setup Node.js
        uses: actions/setup-node@v2
        with:
          node-version: '14.x'
      - name: Install Dependencies
        run: npm install
      - name: Post to Hatena Blog
        env:
          HATENA_API_KEY: ${{ secrets.HATENA_API_KEY }}
        run: node post-to-hatena-blog.js

このワークフローでは、mainブランチにpushされた場合、post-to-hatena-blog.jsスクリプトが実行され、はてなブログに投稿されるようになっています。また、ワークフロー実行時には、はてなブログAPIのAPIキーをGithubのシークレットに設定しています。

6. Githubにpushする

作成したスクリプト、ワークフローファイルをGithubにpushします。pushが完了すると、Github Actionsが自動的に実行され、はてなブログに投稿されます。

まとめ

以上が、Github Actionsを使ってGithubにpushしたらはてなブログに自動投稿する方法の解説でした。Github Actionsを使えば、Github上のイベントをトリガーに、様々な処理を自動化することができます。是非、自分の開発環境に合わせた自動化を検討してみてください。

 

Github 関連のまとめ

Github 関連のまとめ
GitHub Actionsによる自動化入門   Github ActionsによるCI/CDの自動化   Github Actions CI/CD   Github Actionsの無料プランと有料プランの比較   Github Acti...

 

オンラインスクールを講師として活用する!

【完全無料】使えるプログラミングスクール体験セミナー
【完全無料】使えるプログラミングスクール体験セミナー WEB制作の無料教材がここにきてどんどん増えてきてるので、使えるものをまとめようと思います。 TecAcademy(テックアカデミー) TechAcademyの無料体験 Samurai ...

 

0円でプログラミングを学ぶという選択

タイトルとURLをコピーしました