History | View | Annotate | Download (11.1 kB)
Move developer notes into normal documentation
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: Guido Trotter <ultrotter@google.com>
Check for tabs and long lines in Python code
Makefile: Move lengthy variable list to separate variable
Add new ganeti.build namespace
This will be used to store build-time Python code.
Add locking doc to Ganeti documentation
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: Luca Bigliardi <shammash@google.com>
Add simple unittest for hooks documentation
Makefile: add IPsec hook
Enable creation and dist for IPsec hook.
Signed-off-by: Luca Bigliardi <shammash@google.com>
Replace BINDIR variable as well
Add bindir to the list of variables replaced at make time.
Signed-off-by: Luca Bigliardi <shammash@google.com>Reviewed-by: Michael Hanselmann <hansmi@google.com>
Merge branch 'next' into branch-2.1
Add script to clean archived jobs after 21 days
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
Run unittests in a temporary directory
Fix building in a different directory
Also add build-bash-completion to EXTRA_DIST.
Add script to run build commands in temporary directory
Python always compiles imported modules. By running these targetsin a temporary directory we don't pollute the source tree.
Makefile: Use BUILT_SOURCES
These are always built before anything else.
Simplify manpage building
This eliminates one temporary directory in the process.
Makefile: Fix docbook2man error message
Add tools directory to constants
Use script to generate bash completion
Completion for tools/burnin is not yet implemented. It needs to beconverted to definition-based options handling first.
Merge commit 'origin/next' into branch-2.1
Implement confd queries
We'll start with a simple ping query, which returns ok if it gets noquery argument, and an error if it gets any. Also non-implemented queryare handled by the base ConfdQuery class, so we don't have tospecial-case them in ConfdProcessor anymore....
Ship the ethers hook
doc/examples/hooks/ethers has been added without being shipped in thereleased tarball. Putting a stop to this.
Signed-off-by: Guido Trotter <ultrotter@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
Initial confd implementation
ganeti-confd is a simple asynchronous daemon, which listens on a UDPport, passes each packet to a processor, and sends back to the clientthe result.
It also listens on an inotify socket, in order to reload itsconfiguration when the ganeti config file changes....
confd.server.ConfdProcessor
A ConfdProcessor is the job processor for a confd query.It's responsible for all the processing, from unpacking it, verifyingit, to calculating the result.
Add empty ganeti.confd module
It will be used for the confd server code, and for a basic clientlibrary.
Merge branch 'master' into next
asycnotifier.AsyncNotifier
AsyncNotifier is a special asyncore class that delivers inotify eventsasynchronously.
ConfigObject.ToDict() only export non-None values
The method is changed to a normal loop, to avoid calling getattr()twice. Also getstate is changed to just use ToDict() by default.
This should also make getstate work for objects which have tooverride the ToDict function because they contain other objects....
Simplify the devel/upload script
Instead of multiple uploads to each node, this script copies everythingas needed to the temporary directory, exactly as to be installed in thedestination machine, then runs only one rsync per host.
This is more dangerous (we can break /etc now), but for development...
Merge commit 'origin/branch-2.1' into feature/containers
Add first implementation of generic storage unit framework
Build HTML from Ganeti 2.1 design
Add custom pylintrc
A small makefile rule to create a TAGS file
This helps emacs users ☺
Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: Michael Hanselmann <hansmi@google.com>
Add a lvm stripecount configure parameter
This patch adds a configure-time customizable parameter that will beused to enable stripped LVs. The default of the parameter is 3.
Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: Guido Trotter <ultrotter@google.com>
Merge branch 'branch-2.1' into feature/containers
New hypervisor implementation: chroot manager
This patch adds a new hypervisor implementation: a chroot manager. Thishypervisor type can be used to manage (in combination with special OSdefinitions) the start and stop of chroot areas, and if used with drbd...
Move the glossary to a separate file
Currently we have an insignificant glossary at the end of the design-2.0document. This patch moves it to a separate file with the goal that itwill grow and all files can refer to it.
Signed-off-by: Iustin Pop <iustin@google.com>...
Switch the documentation to sphinx
This big patch converts the documentation build system to sphinx(http://sphinx.pocoo.org/). Since that uses reStructuredText sourcestoo, there is no change (yet) in the documents themselves, just in thebuild system....
Convert from auto-generated RAPI docs to static
This patch removes the autogeneration of the RAPI docs from the code(based on docstrings) and moves the current autogenerated output tothe rapi.rst file.
The reasons behind this are multiple: - the build system becomes a little more simple (this could have been...
Add the new DRBD test files to the Makefile
These were forgotten in commit 01e2ce3a6e4ca68983f50dedaddd0d0fc7b77026,and caused “make distcheck” to fail.
Make Python interpreter selectable for test scripts
The Python interpreter used to run the test cases is hard-coded to be/usr/bin/python. If we use the first one from $PATH instead, it ismuch easier to test ganeti with other Python versions.
Trivial typo fix in error message
Reviewed-by: iustinp
Distribute built documentation
This patch changes the way documentation is built in order to distributethe generated output in the 'dist' archive, and thus no longerrequiring the presence of the docbook/rst toolchains during build time.This will lower the requirements for installation and also makes the...
Convert the RAPI document to restructured text
This patch changes the RAPI document, and the RAPI resourcesautogenerated-documentation to restructured text. This meant changingthe autogen tool.
The new fragment can be included via RST directives, and doesn't need...
Convert the install document to restructured text.
This switches back to the hardcoding of the version number, as we don'tyet have a wrapper for rst files that passes them throughreplace-sed-vars.
Reviewed-by: imsnah
Fix the Makefile after the bash_completion patch
I've somehow left these two out. Sorry!
Add bash-completion rules
This is a not-complete bash completion file for ganeti commands (gnt-*)and the burnin tool. It is based on previous work by Minghua Ye<yeminghua@google.com> for Ganeti 1.1, which wasn't used because thelack of ssconf keys (which allow easy inspection by the shell of the...
Convert the hooks document to restructured text
This also updates the hooks document to 2.0.
Reviewed-by: ultrotter
Convert iallocator.sgml to restructured text
This is a no-contents change, this doc will need update to conform to2.0 message contents (and also the code will need increase to version 2of the iallocator protocol).
Convert the admin guide to restructured text
The RST format holds a little bit less information, as all the <fileclass="directory"> and <userinput> tags are gone, however we're notreally losing important context here. And it's way easier to read andupdate....
Also generate HTML format for the man pages
This would help in generating online-viewable docs, which could link tothe man pages.
Update the command line scripts man pages for 2.0
This patch updates the gnt-* scripts to show the new 2.0 syntax. It'snot guaranteed to be 80% complete.
Man page updates for the ganeti daemons.
This patch adds new man pages for the master and RAPI daemons, andupdates the node daemon and watcher man pages.
Remove a duplicate line in sed_vars
LOCALSTATEDIR is added twice to the sed variables.
RAPI: rlib1 removal
The resources we still need moved to rlib2.
KVM: instance migration
The tcp port used for migrating KVM instances is selectable at./configure time. We use a single port as nodes are locked anyway duringa migration, so no two migrations can happen at the same time to thesame node.
ganeti.http: Add support for basic HTTP authentication
As per RFC2617.
Reviewed-by: amishchenko
KVM: improve socat interface
Call socat with a full path specified at configure time, rather thanjust by its name, and check for the binary to exist at hypervisorverify.
Improve _autoconf.py comments
This adds a docstring to the _autoconf.py file detailing how it'sgenerated (the other comment it's not visible in pydoc/epydoc).
Fix epydoc format warnings
This patch should fix all outstanding epydoc parsing errors; as such, weswitch epydoc into verbose mode so that any new errors will be visible.
ganeti.http: Split HTTP server and client into separate files
This includes a large rewrite of the HTTP server code. The handling ofOpenSSL errors had some problems that were hard to fix with itsstructure. When preparing all of this, I realized that actually HTTP...
Move HTTP code to subpackage
This is a preparation step for splitting the HTTP client and server codeinto two separate modules.
Slight change to the apidoc build
Currently the temporary directory used for modules is under the currentdirectory; this patch changes it so a temp directory is used; so wecould build the apidocs with a R/O filesystem.
Add a FieldSet class for variable parameter sets
This patch adds a _FieldSet class that can be used for the new variableparameter sets: e.g. the sda_size will change to disk/0.size (orsimilar) and we need to both check validity and extract the index of the...
Fix distcheck with the new dot/png rules
Adding a new filetype/make rule requires more work than the previouspatch. Sorry! Now pases distcheck.
Add a cluster architecture diagram
This adds a simple diagram for the cluster architecture and also adds adependency on graphviz (both doc and in configure).
Combine the 2.0 design documents into one
This patch combines all the design documents for 2.0 except thesecurity one into a single document, in order to ease reading and reduceduplication of information.
Future patches will start removing wrong pointers to old document names...
Make the makefile not recreate ganeti every time
Currently the makefile always recreates the ganeti symlink. Make it sothat it does only when it doesn't exist or it's not a symlink.
Remove the logger.py module
Since now we use only one function from the logger module(SetupLogging), we move it to utils.py (which is already imported by allusers of this function), and we remove the module.
Get rid of httperror module
This was a leftover from the early days of the remote API in Ganeti 1.2.
Add daemon library with mainloop
This mainloop can be used in daemons like ganeti-noded.
Move the SECURITY document to the doc/ dir
Add new design docs to Makefile.am
Add a simple timespec parsing function
This function will be used for auto-archiving jobs via the command line.The function is pretty simple, we only support up to weeks since monthsand higher are not 'precise' entities, and dealing with them wouldrequire us to start using calendar functions....
RAPI Desing Doc
Use docbook2* paths found during configure for actual build
docbook-wrapper had the names for the docbook2* programs hardcoded. Thispatch changes Makefile.am and the wrapper script to pass them viaanother argument.
Another issue where rapi.in was built before rapi-resources.sgml is...
Build HTML from RST input
This patch also adds the design documents to Makefile.am.
Add doc/locking.txt, documenting locking order
Remove references to YAML
I forgot to remove these when converting the QA configuration from YAMLto JSON.
QA: Do not upload known_hosts file anymore
The cluster no longer keeps individual host's SSH key, but ratheraliases all of them to the cluster name.
Remove QA hook functionality
To my knowledge they're used nowhere and it's at least slightlyconfusing to people adding new QA checks.
Add KVM hypervisor code
ht_kvm.py contains the code for ganeti to work under kvm.This patch also modifies Makefile.am to ship that file, andlib/hypervisor/__init__.py to import it, and add kvm to thehypervisors map.
Add --with-kvm-path configure option
This allows to configure a different path to the kvm binary. By default/usr/bin/kvm is used, which is the one found in debian and ubuntu.
Two small style fixes
jstore: Add queue helper functions
This will be used to move common code out of jqueue.
Rework master startup/shutdown/failover
This (big) patch reworks the master startup/shutdown and the fixes themaster failover.
What does the patch do?
For master start/stop: - remove the old ganeti-master script and its associated man page - moves the ip start/stop directly into the backend.(Start|Stop)Master...
Move ganeti-rapi core code to daemon
All other daemons have their main code in themselves and not in a module.This patch does the same to ganeti-rapi by moving the code fromlib/rapi/RESTHTTPServer.py to daemons/ganeti-rapi.
Switch RAPI to ganeti.http module
Split RAPI resources to pieces
Migrate RAPI QA to trunk.
Add apidoc makefile target
The patch adds the apidoc target and the epydoc config file for it. Notethat this is for epydoc 3.0 and that it will put the docs into./doc/api/.
The patch also adds a new .gitignore rule for the auto-generated rapifragment....
Fix rapi documentation
As a nice side-effect this also fixes "make distcheck".
The way used to include the generated rapi-resources.sgml file onlyworks if it's built in the same directory. That's not the case during"make distcheck". The patch changes the sed script used for variables...
Copy the rest of the Restful-API files to trunk
Add generic HTTP server classes
Some of the code is adopted from the 1.2 branch(lib/rapi/RESTHTTPServer.py). This code can be used as a base for thevarious HTTP servers in Ganeti.
Initial copy of RAPI filebase to the trunk
Add generic worker pool implementation