Feature #691

Drop ganeti-eventd & snf-ganeti-hook synnefo dependency

Added by Faidon Liambotis almost 11 years ago. Updated almost 11 years ago.

Status:Closed Start date:06/20/2011
Priority:Medium Due date:
Assignee:Vangelis Koukis % Done:

80%

Category:Ganeti Spent time: -
Target version:v0.5.4

Description

Απ' ότι φαίνεται, τόσο ο ganeti-eventd όσο και το snf-ganeti-hook έχουν dependency στο synnefo & συνεπώς στο Django. Φαίνεται, ωστόσο, ότι ο μόνος λόγος για την εξάρτηση είναι η χρήση των settings.

Μιας και αυτά τα δύο πρέπει να τρέχουν στο ganeti master, και συνεπώς πρέπει να υπάρχουν σε όλους τους master candidates και ως εκ τούτου σε όλα τα nodes, αυτό σημαίνει ότι θα πρέπει να εγκατασταθεί το Django και όλο το project στα ganeti nodes, πράγμα που το καθιστά μη ιδανικό.

Θα ήταν προτιμητέο, για λόγους που αφορούν το deployment, η εξάρτηση αυτή να αφαιρεθεί και αντ' αυτού να υπάρχει π.χ. κάποιο ξεχωριστό, εξωτερικό configuration file.

Η αλλαγή είναι σχετικά μικρή αλλά ωστόσο σημαντική σχετικά με το αρχικό deployment μας (είναι μία τάξη μεγέθους διαφορά στα μηχαήματα του deployment) και ως εκ τούτου την ορίζω σε v0.5.


Related issues

related to Synnefo - Feature #693: Διαχωρισμός του settings.py Closed 06/20/2011

Associated revisions

Revision 36cf1973
Added by Vangelis Koukis almost 11 years ago

Drop Django dependency in the Ganeti event daemon

Modify the Ganeti event daemon to have no dependency on Django. * Make it an independent daemon, drop all Django dependencies * Import Django's settings.py directly * Rename ganeti/ganeti-eventd.py to ganeti/snf-ganeti-eventd.py * Update documentation

Refs #691

Revision c952d4e4
Added by Vangelis Koukis almost 11 years ago

Drop Django dependency in the Synnefo Ganeti hook

Drop all dependencies on Django in the Synnefo Ganeti hook.

  • Include a new bash script, which sets PYTHONPATH appropriately
  • Update README.deploy, include instructions on setting
    SYNNEFO_PROJECT_DIR inside this wrapper.

Refs #691

Revision 0bb376ce
Added by Vangelis Koukis almost 11 years ago

Drop Django dependency in the Synnefo Ganeti hook

Drop all dependencies on Django in the Synnefo Ganeti hook.

  • Include a new bash script, which sets PYTHONPATH appropriately
  • Update README.deploy, include instructions on setting
    SYNNEFO_PROJECT_DIR inside this wrapper.

Refs #691

Revision 45ebfd48
Added by Vangelis Koukis almost 11 years ago

Import separate snf-ganeti-tools/ project

Split the Synnefo tools for Ganeti into a separate directory: * Make the utilities live in the synnefo.ganeti.* namespace * Import bootstrap scripts * Drop all dependencies on Django and the rest of Synnefo (refs #691) * Have the utilities load settings from $SYNNEFO_CONFIG_DIR * Convert all unit tests to be pure Python, no Django * Import Debian-specific files used to create snf-ganeti-tools debs

History

#1 Updated by Vangelis Koukis almost 11 years ago

  • Assignee set to Vangelis Koukis

#2 Updated by Vangelis Koukis almost 11 years ago

  • Subject changed from ganeti-eventd & snf-ganeti-hook synnefo dependency to Drop ganeti-eventd & snf-ganeti-hook synnefo dependency
  • % Done changed from 0 to 80

Πέταξα το dependency από το Django, το θέλαμε μόνο για τα settings, 36cf1973a405.
Προς το παρόν ο snf-ganeti-eventd διαβάζει απευθείας τα ίδια settings, κάνοντας τα κατάλληλα imports, έχει ανανεωθεί το documentation ώστε να εξηγεί την ανάγκη να τίθεται εξωτερικά σωστό το PYTHONPATH.

Από εκεί και πέρα, μένει να αλλάξει με τον ίδιο τρόπο το Synnefo Ganeti hook και να χρησιμοποιούνται χωριστά settings από το υπόλοιπο Django project (#693).

#3 Updated by Vangelis Koukis almost 11 years ago

  • Status changed from New to Assigned

#4 Updated by Vangelis Koukis almost 11 years ago

  • Status changed from Assigned to Closed

Στο τρέχον api-current branch έχει φύγει το django dependency και από το Ganeti hook και από τον snf-ganeti-eventd.
Το README.deploy έχει ανανεωθεί ώστε να περιλαμβάνει οδηγίες για τη σωστή ρύθμιση μεταβλητών SYNNEFO_PROJECT_DIR και PYTHONPATH.
Για το Ganeti hook προστέθηκε μικρό bash wrapping script (ganeti/snf-ganeti-hook) που θέτει κατάλληλα το PYTHONPATH από το $SYNNEFO_PROJECT_DIR.

Αυτά έχουν δοκιμαστεί, αν υπάρχει πρόβλημα ξανανοίγω το ticket.

#5 Updated by Faidon Liambotis almost 11 years ago

  • Status changed from Closed to New

Το Django dependency έχει όντως αφαιρεθεί. Ωστόσο, το ζητούμενο του ticket ήταν να αφαιρεθεί το synnefo dependency, το οποίο παραμένει.

#6 Updated by Vangelis Koukis almost 11 years ago

  • Target version changed from v0.5 to v0.5.1

#7 Updated by Vangelis Koukis almost 11 years ago

  • Status changed from New to Assigned
  • Target version changed from v0.5.1 to v0.5.2

Ο Φαίδωνας έχει ήδη μπαλώσει για τις ανάγκες του deployment τον snf-ganeti-eventd και το snf-ganeti-hook ώστε και να αφαιρεθεί το Synnefo dependency και να παράγεται πακέτο Debian snf-ganeti-tools. Οι αλλαγές του είναι σε διαδικασία ένταξης στο repository του Synnefo, με τελικό στόχο να προκύπτουν απευθείας πακέτα για το Debian.

Αυτό θέλει αρκετή δουλειά ακόμη, σε συνεννόηση μαζί του μεταφέρω το ticket για v0.5.2.

#8 Updated by Vangelis Koukis almost 11 years ago

  • Target version changed from v0.5.2 to v0.5.3

#9 Updated by Vangelis Koukis almost 11 years ago

  • Target version changed from v0.5.3 to v0.5.5

#10 Updated by Vangelis Koukis almost 11 years ago

  • Status changed from Assigned to Closed
  • Target version changed from v0.5.5 to v0.5.4

Τα εργαλεία του Synnefo για το Ganeti έχουν σπάσει ως snf-ganeti-tools/ στο repository, έγινε εισαγωγή δουλειάς του Φαίδωνα στο repository και φτιάχνονται πακέτα Debian που περιέχουν την υλοποίηση των συγκεκριμένων εργαλείων, χωρίς εξάρτηση από το υπόλοιπο Synnefo (Django, settings του Django, κλπ).

Οι αλλαγές έχουν αρχίσει να σπρώχνονται στο master, οπότε αυτό το δελτίο μπορεί να κλείσει.
Αν υπάρξει πρόβλημα, το διορθώνουμε.

Also available in: Atom PDF