ユーザ用ツール

サイト用ツール


gh-actions

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
gh-actions [2026/08/02 22:54] admingh-actions [2026/08/02 23:01] (現在) – [GitHub Actionsを設定する] admin
行 1: 行 1:
 ====== GitHub Actions ====== ====== GitHub Actions ======
  
-このページでは、GitHub Actionsを利用して、GitHub Releaseの作成と同時にModParksへVersionを登録する方法を説明します。+GitHub Actionsを利用すると、GitHub Releaseの作成にModParksへVersionを自動登録できます。
  
 ===== APIキーを作成する ===== ===== APIキーを作成する =====
  
-GitHub ActionsからModParks APIを利用するにはAPIキーが必要です。+ModParks APIを利用するにはAPIキーが必要です。
  
-ModParksへログインします。 +ModParksへログインします。 
-アカウント設定を開きます。 +アカウント設定からAPIキーを作成します。 
-APIキーを作成します。 +発行たAPIキーをコピーします。
-発行されたAPIキーをコピーします。+
  
 ===== GitHub Secretsを設定する ===== ===== GitHub Secretsを設定する =====
  
-APIキーはGitHub Secretsへ登録します。+GitHubリポジトリの ''Settings'' → ''Secrets and variables'' → ''Actions'' を開きます。
  
-* GitHubリポジトリを開きます。 +''New repository secret'' をクリックし、次の内容でSecretを作成します。
-* ''Settings'' → ''Secrets and variables'' → ''Actions'' を開きます。 +
-''New repository secret'' をクリックします。 +
-* ''Name'' に ''MODPARKS_API_KEY'' を入力します。 +
-* ''Secret'' に先ほどコピーしたAPIキー入力します。 +
-* ''Add secret'' をクリックします。+
  
-===== ワクフローを作成する =====+^Name^Value^ 
 +|''MODPARKS_API_KEY''|ModParksで発行したAPIキ|
  
-''.github/workflows/release.yml'' を作成内容記述します。+===== GitHub Actionsを設定する ===== 
 + 
 +Releaseを作成するGitHub ActionsワークフローにModParksへ登録処理追加します。 
 + 
 +以下はGitHub Releaseを作成し、その後ModParksへ登録するワークフローの例です。
  
 <code yaml> <code yaml>
行 31: 行 30:
  
 on: on:
-push: +  push: 
-tags: +    tags: 
-- "v*"+      - "v*"
  
 jobs: jobs:
-build: +  build: 
-runs-on: ubuntu-latest+    runs-on: ubuntu-latest
  
-``` +    permissions: 
-permissions: +      contents: write
-  contents: write+
  
-steps: +    steps: 
-  - uses: actions/checkout@v4+      - uses: actions/checkout@v4
  
-  - uses: actions/setup-java@v4 +      - uses: actions/setup-java@v4 
-    with: +        with: 
-      distribution: temurin +          distribution: temurin 
-      java-version: 21 +          java-version: 21 
-      cache: gradle+          cache: gradle
  
-  - uses: gradle/actions/setup-gradle@v4+      - uses: gradle/actions/setup-gradle@v4
  
-  - name: Grant execute permission +      - name: Grant execute permission 
-    run: chmod +x gradlew+        run: chmod +x gradlew
  
-  - name: Build +      - name: Build 
-    run: ./gradlew build+        run: ./gradlew build
  
-  - name: Create Release +      - name: Create Release 
-    uses: softprops/action-gh-release@v2 +        uses: softprops/action-gh-release@v2 
-    with: +        with: 
-      files: | +          files: | 
-        build/libs/*.jar +            build/libs/*.jar 
-      body: | +          body: | 
-        ${{ github.event.head_commit.message }} +            ${{ github.event.head_commit.message }} 
-      generate_release_notes: true+          generate_release_notes: true
  
-  - name: Register to ModParks +      - name: Register to ModParks 
-    env: +        env: 
-      MODPARKS_URL: https://modparks.pitan76.net +          MODPARKS_URL: https://modparks.pitan76.net 
-      PROJECT_SLUG: your-project +          PROJECT_SLUG: your-project-slug 
-      VERSION_NUMBER: ${{ github.ref_name }} +          VERSION_NUMBER: ${{ github.ref_name }} 
-    run: | +        run: | 
-      FILE_NAME=$(basename build/libs/*.jar) +          FILE_NAME=$(basename build/libs/*.jar) 
-      FILE_URL="https://github.com/${{ github.repository }}/releases/download/${VERSION_NUMBER}/${FILE_NAME}" +          FILE_URL="https://github.com/${{ github.repository }}/releases/download/${VERSION_NUMBER}/${FILE_NAME}"
- +
-      curl -X POST "$MODPARKS_URL/api/v1/projects/$PROJECT_SLUG/versions"+
-        -H "Authorization: Bearer ${{ secrets.MODPARKS_API_KEY }}" \ +
-        -F "versionNumber=$VERSION_NUMBER"+
-        -F "mcVersions=1.21.8"+
-        -F "loaders=fabric"+
-        -F "changelog=${{ github.event.head_commit.message }}" \ +
-        -F "fileUrl=$FILE_URL" +
-```+
  
 +          curl -X POST "$MODPARKS_URL/api/v1/projects/$PROJECT_SLUG/versions" \
 +            -H "Authorization: Bearer ${{ secrets.MODPARKS_API_KEY }}" \
 +            -F "versionNumber=$VERSION_NUMBER" \
 +            -F "mcVersions=1.21.8" \
 +            -F "loaders=fabric" \
 +            -F "changelog=${{ github.event.head_commit.message }}" \
 +            -F "fileUrl=$FILE_URL"
 </code> </code>
  
 ===== 設定を変更する ===== ===== 設定を変更する =====
  
-ワークフロー内の以下の項目は、自分のプロジェクトに合わせて変更してください。+ワークフロー内の以下のは、自分のプロジェクトに合わせて変更してください。
  
 ^項目^説明^ ^項目^説明^
 |''PROJECT_SLUG''|ModParksのプロジェクトスラッグ| |''PROJECT_SLUG''|ModParksのプロジェクトスラッグ|
-|''mcVersions''|対応するMinecraftバージョン(複数指定可)| +|''mcVersions''|対応するMinecraftバージョン(複数指定可)| 
-|''loaders''|対応するローダー(複数指定可)|+|''loaders''|対応するModローダー(複数指定可)|
  
-===== Releaseを公開する =====+===== バージョンを公開する =====
  
-ワークフローをコミットした、タグを作成してGitHubへプッシュします。+ワークフローをコミットした、タグを作成してGitHubへプッシュします。
  
-<code>+<code bash>
 git tag v1.0.0 git tag v1.0.0
 git push origin v1.0.0 git push origin v1.0.0
 </code> </code>
  
-タグのプッシュ後GitHub Actionsが実行されます。 +タグのプッシュ後GitHub Actionsが実行され正常に完了するとGitHub Release作成ModParksへVersion登録が自動で行われます。
- +
-正常に完了すると、 +
- +
-GitHub Release作成されます。 +
-ModParksへ新しいVersion登録れます。 +
- +
-===== トラブルシューティング =====+
  
-^症状^原因・対処方法^ +===== 注意事項 =====
-|401 Unauthorized|''MODPARKS_API_KEY'' が正しく設定されているか確認してください。| +
-|404 Not Found|''PROJECT_SLUG'' が正しいか確認してください。| +
-|Version already exists|同じバージョン番号は登録できません。新しいバージョン番号を使用してください。| +
-|ファイルを取得できない|GitHub ReleaseにJARファイルが添付されていることを確認してください。|+
  
 +APIキーはワークフローへ直接記述せず、GitHub Secretsを利用してください。
 +''fileUrl'' はModParksサーバーからアクセスできる公開URLである必要があります。
 +同じバージョン番号が登録済みの場合は、新しいVersionとして登録できません。
gh-actions.1785678881.txt.gz · 最終更新: by admin