githubにシークレットコードに依存したソースコードを上げるときにベストプラクティス
今日。githubにyoutube APIに依存するコードをプッシュしました。
https://github.com/bamchoh/sofys
ですが、一部コードはローカルにあるので、ビルドする為にはそのコードをgit cloneした人それぞれで書く必要があります。ソースコードを編集されるような場合だとそれも仕方ないかなと思うんですが、使用するだけの人を想定した場合、バイナリ配布を行ったほうがいいのだろうなと思っています。クラウドのCIサービスを使用する場合、シークレットコードをCIサービスに配置する必要があると思いますが、その内容を外部の人に知られないようにする方法はありますか?その場合はプライベートリポジトリを作成してそのリポジトリのバイナリとして作成するほうが良いのでしょうか?(できるかどうかはわからないのですが)
ここでいうシークレットコードは、 OAuth2 のクライアントコードを想定しています。なので、以下の性質があります。
- ソースコードを記述している際には、定まっていない
- バイナリを配布する際には、その中に組み込まれていてほしい