このリポジトリは、N-Air 用ネイティブ依存(obs-studio-node 関連)を更新し、 GitHub Releases 作成に必要な情報を出力するためのツールです。
- Streamlabs Desktop の対象バージョンから
repositories.jsonを取得 - win64 アセットを
distにダウンロード - リリース作成に必要な情報(タグ名、Release notes、依存 URL)を出力
npm install- Streamlabs Desktop Releases で対象バージョン(例:
v1.19.6)を確認
v1.19.6
引数で指定した場合は、実行時にこのファイルも更新されます。
変更したら、いつ更新したか追えるようにコミットしておくのを推奨します。
main.ts の処理(ダウンロード・情報生成)を実行したうえで、GitHub の Draft Release を作成し、dist のアセットをアップロードします。
# 事前に gh でログイン(repo 権限が必要)
gh auth login
# streamlabs-version.txt を使う
npm run release
# バージョンを直接指定
npm run release -- v1.19.6- 指定タグの Release ページがすでに存在する場合は自動で
skipします。 - Release の Description は
main.tsの出力(Release notes セクション)を使用します。 - 自動作成される Release はデフォルトで Draft です(内容確認後に Publish)。
distのアセットに加えて、repositories.jsonも Release asset としてアップロードします。- このフローでは、Git タグを手動で作成・push する必要はありません。
- 実行結果ファイル(
dist/release-handoff.txt)またはターミナルに表示されるpackage.json の dependencies を以下に変更してください以降を、N-Air 側package.jsonに反映
例(dist/release-handoff.txt から貼り付け):
{
"dependencies": {
"obs-studio-node": "https://github.com/n-air-app/native-deps/releases/download/osn0.25.70/osn-0.25.70-release-win64.tar.gz",
"node-libuiohook": "https://github.com/n-air-app/native-deps/releases/download/osn0.25.70/node-libuiohook-1.1.17-win64.tar.gz"
}
}streamlabs-version.txtを使う場合:
npm run build- 実行時にバージョンを直接指定する場合:
npm run build -- v1.19.6
# または
npx ts-node main.ts v1.19.6実行後、以下が出力されます。
- タグ名(例:
osn0.25.56) - リリース先 URL(
https://github.com/n-air-app/native-deps/releases/tag/<tag>) - Release notes 用 Markdown(library/version 表 + ElectronVersion/LibOBSVersion)
さらに以下のファイルが生成されます。
dist/(アップロードするアセット)repositories.json(取得した依存定義)
git tag osn0.25.56
git push origin osn0.25.56※ タグ名は必ずスクリプト出力の値を使用してください。
- n-air-app/native-deps/releases で「Draft a new release」
- Tag に C) で作ったタグを指定
- Title はタグ名に合わせる
- Description に、スクリプト出力の
Release notes として以下を追加してください以降を貼り付け dist/内のファイルをすべて添付して Publish
タグ <tag> を作成し...→ Git タグ名.../releases/tag/<tag>→ リリース URL 確認package.json の dependencies...以降(npm run release実行時)→ N-Air 側package.jsonRelease notes として以下を追加してください以降 → GitHub Release Description
- バージョン文字列が正しいか(例:
v1.19.6) - ネットワーク接続
- GitHub 側の一時的な障害
- ローカル署名鍵設定を確認
- 一時的に署名なしでコミットする場合:
git commit --no-gpg-sign