Wie gehen Sie mit ignorierten Dateien in Gitignore um, wenn Sie eine kontinuierliche Bereitstellung mit Git durchführen? Diese Dateien werden aus Datenschutzgründen ignoriert (dh sie sollen nicht in andere Remote-Repositorys wie GitHub verschoben werden). Wenn diese ignorierten Dateien jedoch nicht in das Continuous Deployment-Repository verschoben werden, wird die Anwendung nicht ausgeführt (so wie die ignorierten Dateien) erforderlich, damit die Software ordnungsgemäß funktioniert).
Wie gehen die Leute normalerweise vor? Ist Git in diesem Fall aufgrund der ignorierten Dateien nicht der beste Kandidat für eine kontinuierliche Bereitstellung?
version-control
user3175663
quelle
quelle
Antworten:
Wenn Ihre Software ohne diese Dateien nicht ausgeführt wird, treten Probleme mit jeder Art von Bereitstellung auf, manuell, automatisch oder kontinuierlich, mit jeder Art von VCS oder sogar ohne VCS. Ändern Sie also entweder Ihre Software so, dass sie tatsächlich ohne diese Dateien ausgeführt werden kann (wenn die Dateien fehlen, kann sie beispielsweise eine Art "Standardparameter" annehmen), oder Sie geben eine Version der für die Bereitstellung geeigneten Dateien an, die kopiert werden ( als Teil des Bereitstellungsschritts) in die Zielumgebung, falls keine "private" Version dieser Dateien vorhanden ist.
Wenn Sie über eine Datei mit Datenbankanmeldeinformationen für die Anmeldung am Server sprechen, die aus Sicherheitsgründen nicht in der Versionskontrolle enthalten sein soll, müssen Sie diese Datei einmal , wahrscheinlich manuell , in die Bereitstellungsumgebung einfügen , von einer Person, die über ausreichende Rechte verfügt oder das Passwort kennt. Dies ist jedoch beabsichtigt und sollte Sie nicht davon abhalten, täglich neue Versionen Ihrer Software bereitzustellen. Stellen Sie lediglich sicher, dass vorhandene Anmeldeinformationsdateien beim Bereitstellen einer neuen Version nicht überschrieben werden.
quelle
Eine weitere Option besteht darin, die vertraulichen Informationen in Ihrem Bereitstellungstool zu speichern. Und die Konfiguration des Bereitstellungstools in einem separaten privaten Quellrepository.
Das Belassen der vertraulichen Daten auf dem Zielcomputer funktioniert, ist jedoch möglicherweise fehlerhaft - jemand ändert sie, ohne den Anweisungen zu folgen, die Maschine bremst ab und niemand merkt sich die korrekten Einstellungen usw.
Saltstack hat zum Beispiel https://docs.saltstack.com/en/latest/topics/pillar/index.html
quelle