Falls Du beitragen möchtest, gibt es mehrere verschiedene Möglichkeiten.

Übersetzungen

Den schnellsten Beitrag kannst Du bei der Übersetzung leisten. Sollte Dir ein Fehler in einer der Übersetzungen der Software auffallen, so kannst Du selbstständig eine Änderung auf Transifex vornehmen, welche wir anschließend überprüfen und gegebenenfalls übernehmen.

Im der folgenden Grafik kannst Du sehen, welche Sprachen noch deine Unterstützung benötigen. Ist eine Sprache nicht dabei, welche Du beherrschst, dann melde Dich gerne bei uns auf Github / E-Mail / Transifex.

Entwicklungen

Solltest Du Programmierkenntnisse besitzen bzw. möchtest bei der Programmierarbeit behilflich sein, so kannst Du auch den Github-Workflow nutzen, um einen Pull Request auf der Plattform abzusetzen. Anschließend werden wir uns deine Änderungen anschauen und akzeptieren, falls es den folgenden Kriterien entspricht. Ideen und Hilfe findest Du ebenfalls auf Github in den Issues.


Änderungen umsetzen

Änderungen an Microservice-Komponenten

Um die Änderungen in eine laufende Instanz zu übernehmen, müssen die entsprechenden Charts in der Helm-Repo aktualisiert werden. Dafür wird für jede Komponente eine neue Chart benötigt. Außerdem muss bei Änderungen die entsprechende All- oder Dev-Chart bearbeitet werden, sodass diese auch den korrekten Container aufsetzen. Den entsprechenden Tag für einen solchen Container entnimmt man aus der Pipeline-Nummer aus Gitlab. Diese dienen als Identifikator für die aus der Pipeline heraus erzeugten Containern in der Gitlab-Registry. Sobald eine Chart aktualisiert wurde, sollte stets die Chart-Version erhöht werden, um die Änderungen an die entsprechenden Tools zu kommunizieren. Eine Github-Pipeline im Helm-Repo werden bei einem git push die Änderungen online verfügbar machen.

Falls ein neuer Microservice hinzugefügt wurde, so muss der Proxy in den Installationshilfen-Repo angepasst werden (in der configuration.yaml). Sollte dies nicht passieren, so werden die Anfragen an den falschen DNS-Server weitergeleitet und werden somit nicht im RDS-System bearbeitet. Die Änderungen an Proxies durch kubectl -f configuration.yaml müssen durch das Löschen und neu aufsetzen von den Deployments aufgespielt werden, da dies ansonsten nicht in die Pods übernommen wird.

Änderungen an der Dokumentation

Aktuell werden Dokumentationsänderungen lediglich bei Änderungen von Microservice-Komponenten übernommen durch die Gitlab-Pipeline. Hier wird in Zukunft noch nachgebessert.

Änderungen an den Integrationen

Aktuell existiert nur die Integration in ownCloud mittels eines Plugins.

Um Änderungen an der ownCloud-App mit in den Marketplace von ownCloud zu übernehmen, müssen diese Änderungen zuerst als Pull Request angezeigt werden. Sollten diese Änderungen in den Hauptstrang des Git-Repos übernommen werden, so muss nun die Versionsnummer in der info.xml angehoben werden und die signature.json neu generiert werden. Die Signatur wird automatisch in der Github-Pipeline gebaut und angeboten. Die daraus erzeugte tar.gz-Datei muss anschließend in den Marketplace hochgeladen werden. Nun ist die Änderung für jede Instanz verfügbar und kann über die ownCloud-eigenen Prozesse aktualisiert werden.