アプリ開発備忘録

PlayStationMobile、Android、UWPの開発備忘録

GitHub Actions

GitHub Actions Self-Hosted Runner(JIT Runner)をAWS CodeBuildで動かしてわかった微妙な点

GitHub ActionsよりもAWS CodeBuildの方が安かった為、AWS CodeBuildでSelf-Hosted RunnerのJust In Time Runnerを動かそうとしました。そこで調査をしたのですが、断念する事にしました。 これらは全て2023/11/19時点で観測した事象でです。 Just In Time R…

node jsでGitHubの/actions/runners/generate-jitconfig APIを叩く

import { createRequire } from 'module'; const require = createRequire(import.meta.url); const https = require('https'); async function generateJitConfig(fullName, id) { return new Promise((resolve, reject) => { const request = https.reques…

AWS LambdaでGitHubWebhookを検証してpayloadを取り出す

import { createRequire } from 'module'; const require = createRequire(import.meta.url); import crypto from 'crypto' const querystring = require('node:querystring'); export const handler = async (event) => { console.log(JSON.stringify(event…

GitHub ActionsのPullRequestでcommit hashを取得する方法

commit hashを使用して、status check apiを叩きたい場合に有効です。 GitHub ActionsのPull Rquestの、${{ github.sha }}は、マージ先とマージしたcommit hashが入っているため、元のcommitのhashではありません。そのため、1つ前のコミットを取得する必要…

GitHub Actionsで全てのキャッシュを削除する

現状(2023/11/07)、UIでは用意されていないのでworkflow_dispatchで動作させる。 name: cleanup all caches on: workflow_dispatch: jobs: cleanup: runs-on: ubuntu-latest steps: - name: Cleanup run: | gh extension install actions/gh-actions-cache s…

【GitHub Actions】IssueやPRが作られたら自分をアサインさせる【GitHub API】

要件 PRがOpen、ReOpenしたら動作する IssueがOpen、ReOpenしたら動作する 開いた人自身をアサインする 既に誰かがアサインされている場合はアサインしない 一応デバッグ用にAPIのレスポンスを吐き出す コード name: Assign Author on: issues: types: [open…

【GitHub Actions】if: always() not working with Composit Action.

Cannot be used due to limit. How to start using reusable workflows with GitHub Actions | The GitHub Blog

【Github Actions】三項演算子やnull合体演算子みたいなことをやりたい

実際にやりたいのはnull合体演算子。 三項演算子はこんな感じ。 ${{ (github.event.pull_request.head.sha != null && github.event.pull_request.head.sha) || github.sha }} 挙動としては、最後に評価された値が有効になるみたい。 なのでnull合体演算子は…

【GitHub Actions】 PullRequestの実行したいcommitだけActionを走らせる

作業が完了して、PullRequestのDraftを外して、レビューをしてもらう。レビューで指摘された所を直して、細かくPushしていると、その都度CIが動いてしまう。 作業が完了してから最後のcommitだけActionを走らせたい場合のための方法。 使うもの github.run_a…

GitHub Actions + Kotlin Scriptでアプリリリースの定形作業を減らす

アプリのリリース時には様々な作業を行いますが、面倒な作業があったのでGitHub Actionsを使用して、一部を自動化しました。 AndroidとアプリバックエンドにKotlinを使用しているので、Kotlin Scriptを使用しました。 リリース作業の流れ developからバージ…