In der jüngsten Entwicklung von Webanwendungen sind CI (Continuous Integration) und CD (Continuous Delivery) erheblich. Wenn Sie in ein Remote-Repository wechseln, wird die Produktionsumgebung automatisch aktualisiert, was praktisch ist.
Wenn es sich bei der Produktionsumgebung jedoch um ein lokales Terminal handelt, ist es nicht möglich, die CI-Tool-CD darauf zu haben, und Sie müssen jedes Mal die Remote-Änderung ziehen, sodass dies ** problematisch ** ist
Noch mehr in Abwesenheit von Zeit wie bei einem Hackathon Wenn die Produktionsumgebung RaspberryPi ist, möchte ich die Zeit und den Aufwand für die Eingabe von Befehlen reduzieren, anstatt sie mit RaspberryPi zu entwickeln.
Also habe ich ** CanDyPi ** erstellt, ein CD-Tool, das jedes Mal abgerufen wird, wenn das Remote-Repository aktualisiert wird, wenn Sie es in RaspberryPi ablegen!
~~ Dies wird dir definitiv die höchste Auszeichnung im nächsten Jahr geben ~~
CanDyPi
CanDyPi is a Continuous Delivery tool for raspberry Pi.
Einfach zu machen. Verwenden Sie die Webhook-Funktion von GitHub, um einen Webhook an einen ngrok-Endpunkt anzuschließen, der von einem Raspberry Pi weitergeleitet wird. Wenn CanDyPi die Repository-Aktualisierungsnachricht empfängt, führen Sie den Befehl pull aus, um auf die neueste Quelle zu aktualisieren.
CanDyPi ist in Python geschrieben und verwendet "flask" für den Server und "git python" für git-Operationen.
Kann in 4 Schritten verwendet werden
Wenn Sie es nicht auf SSH einstellen, müssen Sie das Kennwort jedes Mal eingeben, wenn Sie ziehen, damit Sie nicht von der Raspet Pie-Operation befreit werden ...
Artikel hier werden hilfreich sein. Verfahren für die SSH-Verbindung mit GitHub ~ Von der Generierung des öffentlichen / privaten Schlüssels ~
Sie können es mit pip installieren. ㊟ Bitte installieren und ausführen Sie mit der Python3-Serie
$ pip install candypi
Einfach auszuführen! Geben Sie als Argument den Pfad des Repositorys an, das Sie CD möchten. (Standardmäßig wird es auf Port 50000 gestartet.)
$ candypi /Users/tiwasa/sample_project
Geben Sie den Port an, an dem candypi gestartet wurde, und starten Sie ngrok.
$ ngrok http 50000
ngrok by (Ctrl+C to quit)
Session Status online
Account XXXXXXXX (Plan: Free)
Version 2.2.8
Region United States (us)
Web Interface http://127.0.0.1:4040
Forwarding http://XXXXXXXX.ngrok.io -> localhost:50000
Forwarding https://XXXXXXXX.ngrok.io -> localhost:50000
Registrieren Sie den Webhook in dem Repository, das Sie CD möchten. Fügen Sie unter Einstellungen-> Webhooks auf GitHub der Payload-URL zum Hinzufügen von Webhooks und Hinzufügen von Webhooks die Weiterleitung von ngrok hinzu:
(Andere Elemente können standardmäßig beibehalten werden.)
Wenn eine Aktualisierung im Hauptzweig des Repositorys erfolgt, das Sie CD möchten, wird der Befehl pull im lokalen Repository in Raspeye ausgeführt, um es zu aktualisieren.
Ich habe es Ende des Jahres geschafft, also habe ich es noch nicht in die Praxis umgesetzt. Gibt es nicht einen erschwinglichen Hackathon?
Wenn Sie es verwenden, schreiben Sie es bitte in die GitHub-Ausgabe oder in den Kommentaren dieser Seite.
Wenn Sie Ihren Entwicklungs-PC im selben lokalen Netzwerk wie Raspai platzieren können, ist vscode remote development meiner Meinung nach bequemer. Je nach Veranstaltungsort kann es auch in einem anderen LAN platziert werden, sodass sich auch der Existenzwert von CanDyPi lohnt.
···Wann
... Ich möchte nachdenken
Recommended Posts