History | View | Annotate | Download (31.4 kB)
Merge branch 'devel-2.4'
Fix distcheck
README is not copied to the build tree.
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
Some more changes to Makefile.am for htools
I duplicate the BINARY= rule in the ghc invocation in order to be ableto silence the if, which was confusing.
Additionally, a new target for running just the htools unit-tests isprovided.
Signed-off-by: Iustin Pop <iustin@google.com>...
Update version in README
Also add a check to Makefile's check-local target.
Two small Makefile fixes related to htools
First, fix hs-coverage on non-pristine tree, where the index.html filealready existed, and second, disallow compilation of htools binariesif configure, for some reason, didn't enable them.
Expose whether htools was enabled to Python code
This exports whether htools was enabled at configure-time, and adds aconstant for our reference iallocator.
Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: Michael Hanselmann <hansmi@google.com>
Clarify the need for QuickCheck/Haskell tests
Expands the devnotes.rst doc and adds warnings in the Makefile.
Add design for inter-group instance moves (multi-reloc)
Signed-off-by: Adeodato Simo <dato@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
Remove old ensure-dirs (no longer needed)
Signed-off-by: René Nussbaumer <rn@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
Rewrite of ensure-dirs in python
I provided unittest to test the important pieces of the infrastructure.The one remaining function (ResuriveEnsure) is not easy to unittestbut also not critical if it fails to operate correctly.
Signed-off-by: René Nussbaumer <rn@google.com>...
hs-coverage: make a symlink hpc_index.html
This allows Apache to display the directory in a nicer way.
Another attempt at fixing htools build without curl
OK, my previous small fix was not good. There is another issue: haddoc(the documentation generator) needs to pass the same compiler options(i.e. in our case, -DNO_CURL) to ghc. But in case of no curl, then it...
Add design for submitting jobs from LUs
This patch adds a design document describing how jobs can be submittedfrom within LUs.
Add import/export version 2 design document
Add design document for lighttpd as HTTP server
Add design document for X509 CA
Revert and change the apidoc and coverage dirs
Based on Michael's suggestion, this patch partially reverts mychanges. The new directories are:
- doc/api/py- doc/api/hs- doc/coverage/py- doc/coverage/hs
Basically the Python-specific output moves one level down (into py/)...
Cleanup the Haskell-related Makefile.am variables
This should be more readable now. I wanted to even use the nicer_SOURCES, but _SOURCES is special in Automake (again), so _SRCS it is.
Move hlint rule to the main Makefile
Since we do have errors currently, this is not enabled from the main'make lint' rule. That will get cleaned up later.
Makefile.am: add rules for htools compilation
This patch adds some (not very nice) rules for htoolscompilation. Since automake only knows about some languages, anddoesn't have a real extension mechanism, I cheat and declare them as"buildable scripts", instead of programs. Rationale:...
htools: install hail in the iallocator dir
Instead of bindir. We do this by adding a new allocdir variable, andredirecting hail to it.
htools: add option to control the use of RAPI
RAPI needs the curl module, which is a binding to the libcurl Clibrary. This is more complex (can be compiled either against gnutlsor openssl, etc.) and it's not of much help when the tools are used onthe cluster itself, we disable it by default....
Fix parallel compilation for htools
We do it via per-target-binary .o/.hi files. There are a few otheroptions, in the end this was chosen as different binaries can havedifferent options/components (e.g. hail won't use RAPI, etc.) and thatthe unittests need different compilation options....
Enable htools unittests and coverage reports
Since we have two sets of coverage data, we make the namingconsistent:
- doc/py-coverage for Python coverage- doc/hs-coverage for Haskell coverage
We also need to exclude some more dirs from the list of checked...
Enable htools apidoc generation and unify dir names
Previously, Python api doc was under doc/api (which didn't match withthe target rule, apidoc). After this patch, we have the following:
- make py-apidoc generates Python api doc under doc/py-apidoc- make hs-apidoc generates Haskell api doc under doc/hs-apidoc...
Port the live-test htools rule to the main Makefile
This was a bit tricky, as the compilation from the top-dir changes thepaths in the .tix/.mix files.
Move htools-ganeti 2.3 design doc to doc/
I didn't know where to put in the TOC, so I added it after the ganeti2.3 design doc.
Also, it seems that Sphinx is a bit limited in its list nesting(compared to Pandoc), so I had to rework a bit the indentation (it...
Integrate htools man pages in the main tree
This moves the man pages to their right place, removes the staticfooter and header, and adds Makefile rules for the new .1 man pages.
Core shared file storage support
This patch introduces core file storage support, consisting of the following:
A configure-time switch for enabling/disabling shared file storagesupport and controlling the shared file storage location:--with-shared-file-storage-dir=. Shared file storage configuration is then...
Add shared file storage design doc
Add doc/design-shared-storage.rst to document the proposed changes and updateMakefile.am respectively.
Signed-off-by: Apollon Oikonomopoulos <apollon@noc.grnet.gr>Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
Generate query fields in man pages
This patch replaces the hand-written lists of fields, sometimesincomplete, wrong or inconsistent, with generated ones. What's not verynice yet is the representation for numbered lists (“nic.ip/0: IP addressof 1st network interface”, “nic.ip/1: IP address of 2nd network...
Add script to generate query fields documentation
- All lines matching "QUERY_FIELDS_${resource}" in the input will be replaced with a definition list describing the fields for $resource- The core code is kept in the Sphinx extension, so that it could be...
QUERY_FIELDS_${resource}
Introducing gnt-cluster epo
This is a convenience command to do an automated EPO in the possible limits ofGaneti.
Signed-off-by: René Nussbaumer <rn@google.com>Reviewed-by: Michael Hanselmann <hansmi@google.com>
epydoc.conf: Avoid newlines, rebuild if necessary
Using $(strip …) ensures there won't be any newlines in the value.
Fix html docs builds
This fixes the doc builds broken by commit b292b986, but is only anugly workaround due to our dependency chain.
opcodes.py imports (both directly and indirectly) constants.py, whichimports _autoconf.py. Hence one could say that all .py files have a...
Add sphinx extension
For now this just registers a single new directive, “opcode_params”,which can be used to generate opcode parameter documentation.
Generate parts of RAPI documentation from opcodes
This replaces hardcoded lists of parameters with automatically generatedones, making maintenance easier.
Introduce re-openable log record handler
This patch adds a new log handler class based on the standard library'sBaseRotatingHandler. This new class allows the log file to be re-opened,e.g. upon receiving a SIGHUP signal. The latter will be implemented in...
Remove dumb-allocator
- Remove the actual code- Remove mentions of it from iallocator.rst, and use hail instead- Also remove mentions of "etch-image" and use "debootstrap+default" - Mention htools as the reference implementation in iallocator.rst
Signed-off-by: Guido Trotter <ultrotter@google.com>...
Add list of design document drafts
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: Iustin Pop <iustin@google.com>Reviewed-by: René Nussbaumer <rn@google.com>
Change the Makefile to use bash as SHELL
This is because we want, whenever we use sequences of commands, to setpipefail, otherwise detecting build failures is difficult.
Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: René Nussbaumer <rn@google.com>
Add check-news to EXTRA_DIST
This was missing from commit 7385c51d.
Add script checking release dates in NEWS
This will detect human errors when setting a release date in NEWS.
Build epydoc's module list from Makefile
Ship default kvm-ifup script
In order to retain backwards compatibility, we ship the shell script previouslygenerated by _WriteNetScript as a stand-alone script under PKGLIBDIR.
Signed-off-by: Apollon Oikonomopoulos <apollon@noc.grnet.gr>Signed-off-by: Guido Trotter <ultrotter@google.com>...
Add Ganeti 2.4 design document
It contains links to the two implemented designs. The detailed documentsare removed from the visible table of contents to not show up on theirown.
Run pylint over QA code too
Right now, the QA code is not covered by pylint, and this shows atleast one low-impact bug.
This patch does the necessary changes to make QA pylint-clean, and thechanges the makefile to run pylint for it.
Notable changes:...
utils: Move process-related code into separate file
utils: Move code manipulating /etc/hosts to separate file
utils: Move X509-related code into separate file
utils: Move I/O-related code into separate file
utils: Move code related to file locking into separate file
utils: Move wrappers into separate file
utils: Move logging-related code into separate file
utils: Move hashing-related code into separate file
utils: Split algorithms into separate file
utils: Split Retry & co. into separate file
utils: Move text-related functions into separate file
utils: Move Mlockall into separate file
The unittest file is renamed to match the other utils.* tests.
utils: Move to separate module
This is preparing for splitting the whole units module.
Use new console information in hypervisor abstraction
This makes use of the new way of returning console information from themaster daemon. Unittests are included.
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: René Nussbaumer <rn@google.com>
Introduce verbose opcode result for console
With this patch OpConnectConsole will no longer just return a commandwith arguments, but rather a detailed description about how to connectto an instance's console. Unittests for some parts are included. Another...
Merge branch 'devel-2.3'
Makefile: Merge build-time reST copying
No need to copy this snippet around, “make” can work harder for us.
Move doc/upgrade.rst to UPGRADE, copy at build-time
This will allow distributions to install the file as text documentation.
Import upgrade notes into documentation
This patch formats the upgrade notes currently in the wiki1 as reSTand adds them to the documentation.
[1] http://code.google.com/p/ganeti/wiki/UpgradeNotes
Signed-off-by: Michael Hanselmann <hansmi@google.com>...
baserlib: Add function for filling opcodes
This function makes use of the opcode parameters which now livedirectly in the opcode. A number of RAPI resources can now be simplified.
Add unittests for ht module
Initial import of listrunner
This tool was used and worked on internally for quite a long time. Wedecided to include it in Ganeti.
Known issues:- Code doesn't match rest of Ganeti (e.g. using “print” all over the place, hardcoded calls to sys.exit deep in functions)...
Allow customisation of the disk index separator
As per issue 124, some Xen versions (or packaging) don't deal nicelywith the colon being part of a disk name. Therefore we add aconfigure-time option for customising this.
Note: setting the separator to interesting values like / is not...
Add QA scripts to checked Python code
pylint is not yet included as the code needs some work for that.
Script to gracefully power off KVM instances
When a node is running KVM instances and that node is rebooted orshutdown, the gnt-noded daemon is finished and leaves the KVM instancesrunning. Latter on in the shutdown process, all remaining processesreceive SIGTERM as usual, meaning that the KVM instances are all...
Querying node groups: add client/gnt_group.py
This implements `gnt-group list`.
Signed-off-by: Adeodato Simo <dato@google.com>Signed-off-by: Iustin Pop <iustin@google.com>Reviewed-by: Iustin Pop <iustin@google.com>
impexpd: Disable OpenSSL compression in socat if possible
This uses an option only available in patched socat versions. Moreinformation is available from the INSTALL update included in thispatch.
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: Guido Trotter <ultrotter@google.com>...
Conflicts: Makefile.am
Merge branch 'devel-2.2' into devel-2.3
Add utility class for definition-based data queries
While not immediately visible, using definition-based queries will allowfor a number of optimizations and simplifications. This patch justcontains the utility class used for executing queries.
Add simple query filter parser
This parser reads only the format described by the query2design document: either an empty filter or an OR operatorwith equality checks as operands.
Fix breakage from previous commit e695efb
Wrong file name in Makefile.am and wrong naming (.unittest vs_unittest).
Add missing paramter and unittests for this case
While git-am'ing the blockdev_prefix patch, I modified the hv_xen.pyfile but forgot to amend the patch :(, so here it is.
Furthermore, to detect such inconsistencies in the future, a unittest isadded that cross-checks the default parameters in constants.py and the...
Fix version check
Don't ask … all I say is distcheck.
Add script to check version format
Only versions of the format “x.y.z” and “x.y.z~(rc|beta)N” (for N>0) areallowed.
Some further man tweaks
This fixes one non-defined CUSTOM_ entry, and replaces two hardcodedpaths with further configure-time variables.
CUSTOM_
Remove last vestiges of docbook
This patch removes the last traces of docbook.
Switch man pages from SGML to RST
This patch changes the Makefile rules to build the man pages from theRST sources instead of the SGML ones.
Note: pandoc quotes by default the ‘@’ character in manpage output, sowe explicitely undo this before writing the .in file....
Add a footer.rst
This is the conversion from footer.sgml. Will be used later for therst-to-man conversion.
Design document for new query infrastructure
Signed-off-by: Michael Hanselmann <hansmi@google.com>Reviewed-by: Guido Trotter <ultrotter@google.com>
Conflicts: Makefile.am: Trivial
Makefile: Add new dist target for releases
A new script, autotools/check-tar, is used to check the resulting.tar.gz file for unwanted contents like wrong file owners orpermissions.
Makefile: Check for empty files and dirs on distcheck
Including empty files can cause unnecessary warnings for packagers.
Revert commit e7e23e73, work around Automake bug
After commit e7e23e73 the build would fail in distcheck on systems withAutomake 1.10. An investigation identified Automake bug #5331 as thecause. Applying the changes in Automake commit 3a12ed5e2 to the...
Design Doc: Ganeti Node OOB Management Framework
Remove empty file from doc/html in distribution
It's not needed and some packaging systems complain about emptyfiles.
Makefile: Add PYTHON_BOOTSTRAP to linted code
Move ganeti-rapi to ganeti.server.rapi