green-spider/devops
Marian Steinbach 0c0bcbf54e
Mehrere Fixes und Verbesserungen (#343)
* Use UTC for feed item age calculation

* Improvements in run-job.sh script

* Prevent output buffering in job creation

* Remove unused environment variable references

* Print more detailed results count

* Bring back function to execute a single spider job

* Fix 'make spider' command

* Upgrade docker to 5.0.3
2024-03-07 11:31:16 +01:00
..
deploy-webapp.sh Mehrere Fixes und Verbesserungen (#343) 2024-03-07 11:31:16 +01:00
functions.bash Update devops stuff 2019-05-05 22:42:48 +02:00
README.md Update README content (#326) 2024-02-22 09:08:45 +01:00
run-job.sh Mehrere Fixes und Verbesserungen (#343) 2024-03-07 11:31:16 +01:00

DevOps

Die Skripte in diesem Verzeichnis erlauben das weitgehend automatisierte Provisionieren eines Hetzner Cloud Servers, Ausführen von Spider Jobs und Entfernen des Servers nach Fertigstellung.

Warnung: Die Scripte sind aktuell so einfach, dass die erzeugten Server nur nach erfolgreicher Ausführung des Jobs entfernt werden. Im Fall eines Fehlers muss der provisionierte Server unbedingt manuell entfernt werden, um unnötige Kosten zu vermeiden.

Voraussetzungen

  • SSH Public Key ist bei Hetzner hinterlegt und in den Scripten eingetragen (siehe 'ssh_keys')
  • API Token für Hetzner in Datei secrets/hetzner-api-token.sh im Format export API_TOKEN=<token>
  • Service Account mit Schreibrechten für Google Cloud Datenbank als JSON-Datei in secrets/datastore-writer.json
  • curl
  • jq
  • ssh

Generelles

  • Die Skripte müssen aus dem root-Verzeichnis des lokalen clone dieses git Repositories ausgeführt werden.
  • Der Terminal muss bis zum Ende der Ausführung geöffnet bleiben.
  • Es sollte immer das Container Image verwendet werden, welches das letzte Release abbildet. TODO: Erklären, wie man das am einfachsten findet, und wo die Version angepasst werden muss.

Spider starten

devops/run-job.sh spider

Webapp deployen

devops/deploy-webapp.sh

Einloggen per SSH

devops/ssh.sh