つくったアプリケーションのソースコードは公開したい、でもシークレットはどうにかして秘匿しないといけない。継続的な運用を目指すならシークレットのデータ自体もなんとかしてリポジトリに(Repository secrets などではなくコミット対象として)含める必要がある。 …という状況を解決するために、gpg だけを使って継続的な運用を図る手段をまとめてみます。フロントエンド/バックエンドなど問わずどこでも使用できます。 Web フロントエンドなどから各種 API キーを利用する場合、リクエスト時の挙動はデベロッパーツールで全て確認できてしまう点には留意してください。 これらは API サーバー側でオリジンの制限をかけるなどの検討が必要です。 やること主な作業内容の要約は gpg を使ってプッシュする前にローカル側で暗号化をする暗号化するときに復号化のための(最強の)パスフレーズを登録するその
![Public な Git リポジトリでシークレット管理をしつつ GitHub Actions で CI/CD も回す](https://cdn-ak-scissors.b.st-hatena.com/image/square/f77ee8ff01e6e0016ff6ca44d642fd91fde6c42d/height=288;version=1;width=512/https%3A%2F%2Fmirumi.me%2Ftech%2Fwp-content%2Fuploads%2Fblog-mull-main-image.png)