gitignoreを使用した継続的な展開


12

Gitで継続的な展開を行う場合、無視されたファイルをgitignoreでどのように処理しますか?これらのファイルはプライバシー上の理由で無視されます(つまり、GitHubなどの他のリモートリポジトリにプッシュされないようにします)が、無視されたファイルが継続的なデプロイメントリポジトリにプッシュされないため、アプリケーションは実行されませんソフトウェアが正しく機能するために必要です)。

人々は通常、これについてどのように対処しますか?この場合、Gitは無視されたファイルのため、継続的な展開の最適な候補ではありませんか?


2
この質問は、最小限の基本的な研究努力を示していないため、トピック外としてこの質問を終了することに投票しています。
スキャントロジャー

3
私は研究努力の不足を見ていません。OPはgitignoreの機能を完全に理解ているようです。私が見ているのはXYの問題ですが、XとYの両方が質問で説明されているため、DocはOPの実際の問題をうまく解決する適切な答えを書くことができました。
Ixrec

1
@ScantRoger:正直なところ、質問はもっとうまく書けるかもしれませんが、それはそれほどひどいことではなく、近い投票に値するものです。
Doc Brown

回答:


14

これらのファイルなしでソフトウェアが実行されない場合は、手動、自動、継続的、あらゆる種類のVCS、またはVCSなしでも、あらゆる種類の展開で問題が発生します。そのため、これらのファイルなしで実際に実行できるようにソフトウェアを変更するか(たとえば、ファイルが欠落している場合は何らかの「デフォルトパラメーター」を想定できます)、またはコピーに適した展開に適したバージョンのファイルを提供します(これらのファイルの「プライベート」バージョンが存在しない場合の展開先環境への展開ステップの一部として)。

あなたは、あなたがバージョン管理になりたくないセキュリティ上の理由から、サーバにログオンし、データベースの認証情報を含むファイルのようなものについて話している場合は、デプロイメント環境にそのファイルを配置する必要があります一度、おそらく手動で、 、十分な権限を持っているか、パスワードを知っている人によって。ただし、これは意図的なものであり、ソフトウェアの新しいバージョンを毎日展開することを妨げるものではありません。新しいバージョンをデプロイするときに、所定の資格情報ファイルが上書きされないようにしてください。


同意します。vcsからのチェックアウトでは、キャパシティが減少しているにもかかわらず、ビルドおよび実行するのに十分でない場合、ソースツリーは不完全です。
ニュートピアン

@Newtopian:これは実際に意図的で正しい場合があることに注意してください(私の例を参照)。
ドックブラウン

2

別のオプションは、展開ツール内に機密情報を保存することです。また、個別のプライベートソースリポジトリ内の展開ツールの構成。

機密データをターゲットマシンに残すことはできますが、ビットが腐敗する可能性があります-誰かが手順に従わずにそれを変更し、マシンブレーキをかけ、誰も正しい設定を覚えていない、など...

たとえば、Saltstackにはhttps://docs.saltstack.com/en/latest/topics/pillar/index.htmlがあり ます

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.