Activity

From 12/12/2012 to 01/10/2013

01/10/2013

03:21 pm Revision 7cf58cad: Generate documentation from build directory
When man pages should be included they need to be copied from man/*.rst.
This means documentation can no longer be bu...
Michael Hanselmann
03:11 pm Revision e6ba3320: Add machine version in kvm runtime file
kvm -M ? returns the supported machines (e.g. pc-1.1).
Add _GetDefaultMachineVersion() function to get the default va...
Dimitris Aragiorgis
02:44 pm Revision c816a371: Fix typo in the DRBD parser types file
A missing letter has been added to a docstring.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Mi...
Michele Tartara
01:36 pm Revision 58997abb: Add script to check man page references
This script checks for some of the most obvious mistakes when formatting
man page references (which should have the f...
Michael Hanselmann
01:34 pm Revision 354c4f62: man: Man page reference cleanup
Sphinx is stricter than pandoc when parsing reST and does not allow an
opening parenthesis to directly follow inline ...
Michael Hanselmann

01/09/2013

07:17 pm Revision f1f6f117: test/Utils.hs: fix capitalization in docstring comment
Signed-off-by: Dato Simó <dato@google.com>
Reviewed-by: Iustin Pop <iustin@google.com>
Dato Simó
06:39 pm Revision 0df54fd2: Merge branch 'devel-2.6'
* devel-2.6:
Add utility to format dictionary as key=value strings
Remove fixed FIXME
QA: Support master-netdev...
Guido Trotter
06:30 pm Revision 30fa4476: Merge branch 'stable-2.6' into devel-2.6
* stable-2.6:
Add utility to format dictionary as key=value strings
Remove fixed FIXME
QA: Support master-netde...
Guido Trotter
05:57 pm Revision 63b883de: Add utility to format dictionary as key=value strings
This will be used in QA to format network interface parameters.
This is a cherry-pick of master commit eac9b7b8
Sig...
Michael Hanselmann
05:38 pm Revision 22ac4136: More documentation and man page fixes
- Include numbers in man page references
- Use “:manpage:” where appropriate
- Don't escape underscore in verbatim te...
Michael Hanselmann
05:23 pm Revision dbb4f850: Remove fixed FIXME
This was fixed in stable-2.6, commit 053c356
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Iustin...
Guido Trotter
05:21 pm Revision c12e30ca: Remove fixed FIXME
This was fixed in stable-2.6, commit 053c356
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Iustin...
Guido Trotter
05:20 pm Revision 558e2e8a: QA: Support master-netdev and default NIC parameters
Requested in issue 337.
The parameter “bridge” was not documented and is therefore silently
replaced with “master-ne...
Michael Hanselmann
05:20 pm Revision cbf5114e: QA: Do not pass "--bridge" to "gnt-cluster init"
Commit ec0652a (June 2009) removed the option.
This is a cherry-pick of master commit
784537390cd5b1c4f5f8fb9401a62e...
Michael Hanselmann
03:19 pm Revision 596f913e: Makefile: Fix list of directories
Commit dbee5c9 had a wrong path.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Helga Velroyen <...
Michael Hanselmann
01:42 pm Revision dbee5c92: Highlight external links in HTML documentation
Based on MediaWiki's monobook skin.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Iustin Pop <i...
Michael Hanselmann
12:48 pm Revision 23d95cff: Unit tests for bdev and utils.lvm
Also amended a comment of a tested method.
The tests are for methods introduced in commit 63c73073 (LVM disk creation...
Bernardo Dal Seno
11:05 am Revision 9ef3e121: Update the monitoring agent design document
This commit updates the design document of the monitoring agent according
to what has already been discussed in vario...
Michele Tartara

01/08/2013

06:16 pm Revision d78970ba: Support instance-minor pairing in the DRBD collector
This commits enables the DRBD data collector to use the Confd client to
gather information about the pairing between ...
Michele Tartara
06:16 pm Revision eb62691c: Support integrating instance information in the DRBD parser
This commit modifies the DRBD parser and its data structures to include
information about the instance a DRBD minor b...
Michele Tartara
05:21 pm Revision d4d94eee: NEWS: Add missing parenthesis
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Michael Hanselmann
01:23 pm Revision 37cfb91f: Add footer.rst as a dependency for all man pages
Commit 6aff051 removed an intermediate step, but forgot to add
“footer.rst” as a direct dependency.
Signed-off-by: M...
Michael Hanselmann
11:28 am Revision 3784c431: Update name of test/htest in doc/devnotes.rst
Update the docs after the rename of 'test/hs/test' to
'test/hs/htest'. This must have been forgotten in 3e16567e.
Si...
Yiannis Tsiouris
11:28 am Revision 93e09cb7: Convert gnt-os man page to sections
As Constantinos observed, the gnt-os man page is not consistent with the
others. This patch adds the missing sections...
Iustin Pop
11:28 am Revision fa5121f0: Fix "Tags" section capitalisation in the man pages
"Tags" is a section, not a command, so let's title-case it (as opposed
to all upper-case). Furthermore, the RST marku...
Iustin Pop
11:28 am Revision 29fc0e4e: Fix a couple of bugs in the gnt-instance man page
The "list-fields" and "change-group" commands were mistakenly listed
as sections; we also rename the "Recovery" secti...
Iustin Pop
11:28 am Revision 6210c812: Remove some obsolete entries from .gitignore
Found while doing the previous .dot file changes and wondering what's
this "doc/*.in" stuff… it looks like these were...
Iustin Pop
11:28 am Revision 6aff0514: Remove intermediate footer.man/footer.html files
I don't remember why I introduced these when switching to pandoc, but
they are not absolutely needed. Instead of pre-...
Iustin Pop
11:28 am Revision 74412d69: Enable a table of contents for the html version of man pages
This makes the (very dull) html version of the man pages a bit more
readable, until such a time that we can switch ov...
Iustin Pop
11:28 am Revision 7322bf7b: Rearrange tags in gnt-cluster/gnt-node
This patch makes the gnt-cluster and gnt-node man page more consistent
with the other man pages, where the tag comman...
Iustin Pop
11:28 am Revision f8e233a3: Stop manually building images out of dot files
The first dot files we added way back in the 2.0 release are managed
manually: we build the .pngs ourselves, track th...
Iustin Pop
11:28 am Revision 8fa74099: Inline the standalone dot files
This removes entirely the standalone dot files by inlining them in the
RST documents - as they weren't referenced fro...
Iustin Pop
11:28 am Revision fe7ad9c8: Improve a bit Haskell library recommended versions
The hinotify library was missing any versions, and finding one that
works with ghc 6.12 (base 4.2.x) was not obvious....
Iustin Pop
11:26 am Revision 7ce2f8ee: Fix a bug in the generation of completion information
Completion information for multi-command binaries were not generated in
the correct way, so the build-bash-complation...
Michele Tartara

01/07/2013

08:56 pm Revision c46a9ffb: Add small webserver for development
When working on documentation it can be helpful to use a browser. In
some environments it's not possible to access th...
Michael Hanselmann
08:56 pm Revision 3a817255: man pages: Lowercase name for syntax highlighting
When the man pages' reST is built using Sphinx, “bash” must be used
instead of “Bash”. Pandoc works with both.
Signe...
Michael Hanselmann
07:00 pm Revision 8d459129: Add "use_locking" parameter to network query opcode
This was extracted from a patch by Dimitris Aragiorgis with the subject
“Add locking to _NetworkQuery”. The rest of t...
Michael Hanselmann
04:21 pm Revision 27a19bf6: Makefile.am: Add missing space
Commit acaf3ca missed this space before a backslash.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-...
Michael Hanselmann

01/04/2013

04:42 pm Revision 6249f1c2: Fix the installation location of mon-collector
The mon-collector binary was erroneously installed twice: once in
/usr/bin/ and once in /usr/lib/ganeti/.
With this m...
Michele Tartara
10:47 am Revision 2663321c: Improve the reception of replies in the confd client
If a received reply is valid and there is still no valid reply,
keep it, no matter how new it is.
Signed-off-by: Mic...
Michele Tartara

12/28/2012

05:53 pm Revision 855f9bad: Document the ExtStorage `SetInfo' functionality
Small updates to the extstorage design document and interface.
Signed-off-by: Constantinos Venetsanopoulos <cven@grn...
Constantinos Venetsanopoulos
05:51 pm Revision ef13148c: gnt-storage man page: make commands sub-sections
This makes the man page more consistent with the others (except
gnt-os, that is).
Signed-off-by: Constantinos Venets...
Constantinos Venetsanopoulos
05:50 pm Revision f6b9c6e5: Fix a bad data type in Hcheck.hs
While trying to understand why some code was not being tested, I
realised that we have a bad data type in Hcheck.hs.
...
Iustin Pop
05:50 pm Revision 2fd5a116: Move src/Ganeti/HTools/Program.hs to Program/Main.hs
This removes one more tab conflict; this is the last module in our
code where we have both x.hs and x/.
Furthermore,...
Iustin Pop

12/27/2012

03:35 pm Revision 208b02e3: A bit more name cleanup
- gen-coverage → gen-py-coverage
- coverage-htools.tix → coverage-hs.tix
Signed-off-by: Iustin Pop <iustin@google.co...
Iustin Pop
03:34 pm Revision 784e77f0: Split the hs-check test rule
Currently, both the unit test and the shell tests are run (manually)
from this rule. This has two downsides: you can'...
Iustin Pop
03:34 pm Revision 1c0f9d12: Remove duplicate test file functions
This patch unifies the functions that generated the tree
reorganisation discussion in the first place :)
Signed-off-...
Iustin Pop
03:34 pm Revision 3e16567e: Rename test/hs/test to htest
The current base name of 'test' means that this binary will generate
profiling, coverage, etc. files with the name 't...
Iustin Pop
03:34 pm Revision 83846468: Move htest/ files under the test/ tree
htest/data becomes test/data/htools (basically reverting commit
8feabc89), and htest/* becomes test/hs/*.
Most chang...
Iustin Pop
03:34 pm Revision 90066780: Move python test files to test/py
This is the first step of the test files reorganisation: moving test/*
(except test/data) to new directory test/py/.
...
Iustin Pop
03:33 pm Revision 19e1b715: Return master ip script output in case of failure
Currently only the exit code is returned, which is somewhat pointless:
for failures, we already know it's ≠ 0, so we ...
Iustin Pop
03:33 pm Revision d9a900dc: Replace htools→hs in configure/makefile rules
This continues the cleanup of the 'htools' name, by replacing 'htools'
with 'hs' in configure and makefile rules.
Th...
Iustin Pop
03:33 pm Revision 8775e62a: Fix LUInstanceRecreateDisks with iallocator
Recent iallocator changes (commit fb60bc6a, “iallocator: Add node
whitelist”) broke the parameter validation for LUIn...
Iustin Pop
03:32 pm Revision 8775b5b2: Fix dependency on built python sources for hs-check
Since we call into Python for opcodes and other type compatibility
checks, we need to ensure that the python sources ...
Iustin Pop

12/24/2012

11:38 pm Revision 3add7574: Rename htools/ to src/
Per offline discussions, this is the first patch of the
renames. Tested with "make distcheck", seems to work fine.
T...
Iustin Pop

12/22/2012

08:11 pm Revision 75b32fff: Optimise autotools/run-in-tempdir
I made a mistake when adding support for htools to run-in-tempdir, by
needlessly copying the htools binaries, when it...
Iustin Pop
08:11 pm Revision acaf3ca7: Fix building of Constants.hs w.r.t .pyc files
Unless this is run under run-in-tempdir, it will create as usual the
.pyc files.
Signed-off-by: Iustin Pop <iustin@g...
Iustin Pop
11:47 am Revision b954f097: Add the gnt-storage client
Add a new client called 'gnt-storage'.
The client interacts with the ExtStorage interface, similarly to
the way gnt-o...
Constantinos Venetsanopoulos
11:47 am Revision 95b92c34: Add ExtStorage related man pages
* ganeti-extstorage-interface man page
* gnt-storage man page
Signed-off-by: Constantinos Venetsanopoulos <cven@grn...
Constantinos Venetsanopoulos
09:40 am Revision c64c3854: Extend the hcheck shell tests
This adds a few new hcheck tests, to extend the coverage.
Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-by:...
Iustin Pop
09:40 am Revision 591fa888: Extend the hbal shell tests
After this patch, almost all of hbal except the actual Luxi execution
is being covered by unit- or shelltests.
Signe...
Iustin Pop

12/21/2012

10:26 pm Revision 108c0a3e: Merge branch 'devel-2.6'
* devel-2.6:
Final update of NEWS file for 2.6.2 and version bump
Fix job completion with big job queues
confd:...
Iustin Pop
08:50 pm Revision ce003543: Fix build breakage after exclusive storage commits
This fixes:
htest/Test/Ganeti/Rpc.hs:50:14:
Couldn't match expected type `Rpc.RpcCallNodeInfo'
agains...
Iustin Pop
08:42 pm Revision 478a3308: Merge branch 'stable-2.6' into devel-2.6
No conflicts, really trivial.
* stable-2.6:
Final update of NEWS file for 2.6.2 and version bump
Fix job complet...
Iustin Pop
07:06 pm Revision 2a196443: Refactor checks for a new template in LUInstanceSetParams
All the checks have been moved to a private method, so as to make
CheckPrereq() smaller and more readable (pylint was...
Bernardo Dal Seno
07:06 pm Revision 6ebfef42: LUs raise an error if they cannot handle exclusive_storage
This happens when the exclusive_storage flag is set, and the requested
operation is incompatible with the flag or not...
Bernardo Dal Seno
06:52 pm Revision 61481c52: Free disk space reporting follows exclusive storage rules
When exclusive_storage is set, nodes report only the space that could be
used to create new disk according to the rul...
Bernardo Dal Seno
06:45 pm Revision 319322a7: Call node_info RPCs with the exclusive_storage flag
The flag is read from the configuration and passed to the RPC.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com...
Bernardo Dal Seno
06:45 pm Revision 1a3c5d4e: Add exclusive_storage parameter to node_info RPC
The flag is passed to the low-level functions that need it, but it's not
yet used. Also, RPCs get just a default valu...
Bernardo Dal Seno
05:47 pm Revision 3601d488: QA: Support master-netdev and default NIC parameters
Requested in issue 337.
The parameter “bridge” was not documented and is therefore silently
replaced with “master-ne...
Michael Hanselmann
05:47 pm Revision 78453739: QA: Do not pass "--bridge" to "gnt-cluster init"
Commit ec0652a (June 2009) removed the option.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Iu...
Michael Hanselmann
05:47 pm Revision c1912a48: gnt-* list-fields: Show friendly field type
For people writing query filters (documented in ganeti(7)) knowing a field's
type can be useful.
$ gnt-instance list...
Michael Hanselmann
04:09 pm Revision 5ff543c3: Fix build after addition of 'empty-cluster.data'
Of course I forgot to add this to TEST_FILES… and only distcheck
catches it.
Signed-off-by: Iustin Pop <iustin@googl...
Iustin Pop
04:06 pm Revision 5e2e45b7: Improve assertion message in LUClusterVerifyGroup
In issue 240 this assertion fails. While reproducing was not possible
with the master branch, having a more verbose m...
Michael Hanselmann
03:55 pm Revision be862db9: gnt-network(8): Reorder commands
Hiding the “connect” and “disconnect” commands below the tag operations
isn't good. The same is done in “gnt-instance...
Michael Hanselmann
03:55 pm Revision e23cb7ca: gnt-network(8): Re-add editor settings and re-wrap
Commit a04cc7a added “gnt-network.rst”, but didn't copy the editor
settings from another reST file.
Signed-off-by: M...
Michael Hanselmann
01:40 pm Revision 63c73073: LVM disk creation uses dedicated PVs
When exclusive_storage is set, PVs are allocated according to the
design-partitioned design doc.
Signed-off-by: Bern...
Bernardo Dal Seno
01:40 pm Revision d4724b14: Call blockdev_create RPCs with the exclusive_storage flag
The flag is read from the configuration and passed to the RPC.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com...
Bernardo Dal Seno
01:40 pm Revision 59726e15: Added class to contain information about a PV
This makes the code more readable and easier to upgrade.
bdev.LogicalVolume.GetPVInfo and the code that depends on it...
Bernardo Dal Seno
01:40 pm Revision ee1478e5: Add exclusive_storage parameter to blockdev_create RPC
The flag is passed to the low-level functions that need it, but it's not
yet used.
Signed-off-by: Bernardo Dal Seno ...
Bernardo Dal Seno
01:19 pm Revision 053976f3: Add htest/hroller to .gitignore
Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Iustin Pop
01:19 pm Revision 04cc7d3f: Extend hroller shell tests
Currently only --help and --version are tested; the patch extends this
with testing parsing of an empty cluster, of a...
Iustin Pop
12:16 pm Revision dccf6eaf: Silence erroneous hlint warning
This patch adds an ignore for an hlint warning that wants camelcase to be used
in the name of a "case" test.
But if c...
Michele Tartara
11:32 am Revision 911ee606: opcodes: Common parameter for target groups
Also add a missing parenthesis at the end.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Guido ...
Michael Hanselmann
11:32 am Revision ee93aa8a: gnt-network: Fix CLI issues with node groups
The original implementation reserved the name “all” to specify all node
groups. That would prevent the use of a node ...
Michael Hanselmann
11:30 am Revision 3fe5484a: gnt-network(8): Remove "rename"
It is not implemented after all.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Guido Trotter <u...
Michael Hanselmann
11:29 am Revision 3924c9e0: gnt-network CLI improvements
- Use unpacking instead of addressing indivdual list items
- Add “--submit” and “--priority” support where possible
-...
Michael Hanselmann
11:29 am Revision f2212a5d: Improve network query algorithm
Similar to commit 572a277. Directly iterate over “self.wanted” instead
of iterating through all networks and checking...
Michael Hanselmann
11:29 am Revision 070b780d: Change network error text
This error is thrown if a network name already exists, not if the
network itself (e.g. “1.2.3.0/24”) is defined.
Sig...
Michael Hanselmann
11:27 am Revision 503574ec: Format network field "group_list" in client
The field is now a list of tuples containing the group name, mode and
link.
Signed-off-by: Michael Hanselmann <hansm...
Michael Hanselmann
11:24 am Revision f1222089: Fix iallocator for nodegroups with no tags
_ComputeNodeGroupData() raises error if a group has no tags
when list(gdata.tags) is invoked. Use “gdata.GetTags()” i...
Dimitris Aragiorgis

12/20/2012

06:34 pm Revision 37dfcacb: Replace custom strip newlines in UUID generation
Since now rStripSpace lives in Utils.hs, we can use it directly (as
UUIDs shouldn't contain spaces anyway).
Signed-o...
Iustin Pop
06:17 pm Revision 04063ba7: Add Confd client to the Haskell code base
The client queries all the master candidates in parallel, until the minimum
number of replies, defined in the constan...
Michele Tartara
06:17 pm Revision d8e9131b: Add function to fetch the list of master candidates
This commits adds to the Haskell codebase a function to fetch the list of
IPs of the master candidates from the SSCon...
Michele Tartara
06:17 pm Revision 1a0defea: Add the parseReply function to the Confd utils
This function will be used by the Haskell Confd client to parse the replies
it receives from the server.
Unit test i...
Michele Tartara
06:16 pm Revision 497f5cbf: Rename the Confd utils parseMessage function to parseRequest
With the upcoming implementation of the Haskell Confd client, requests will
no longer be the only kind of message to ...
Michele Tartara
06:16 pm Revision 5bfcd75f: Make the parseRequest function more general
The parseRequest function of the Confd utils can be used to parse both request
(in the server) and reply (in the clie...
Michele Tartara
06:16 pm Revision 80a0546b: Add function for generating UUIDs in the Haskell codebase
Its first use will be to generate the salt for ConfD requests of the Haskell
client, as in the Python client.
Unit t...
Michele Tartara
06:15 pm Revision 46300ac2: Move Confd getCurrentTime to Utils
The Confd server implementation has a getCurrentTime function.
This commit moves it to the Utils.hs file of Confd, so...
Michele Tartara
05:53 pm Revision 9f6f74b4: Fixup too-long-line in Objects.hs
Sorry, didn't see this before pushing the previous commit (277a2ec9).
Signed-off-by: Iustin Pop <iustin@google.com>
...
Iustin Pop
05:29 pm Revision 277a2ec9: ExtStorage support in htools
This just adds new constructors for the disk template and related
types, enabling the Ext storage.
Signed-off-by: Co...
Constantinos Venetsanopoulos
05:12 pm Revision ea626b33: confd: strip newlines before logging the request
The Python confd client sends newlines in messages (due to use of
DumpSignedJson/DumpJson), so that results in ugly d...
Iustin Pop
05:12 pm Revision 256e28c4: Move rstripSpace from Ssconf to Utils
Also renames it in the process and adds a few tests for it.
Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-b...
Iustin Pop
05:08 pm Revision 53258324: objects.NIC: Look up mode only once, capitalize acronym
Look up “NIC_MODE” only once, capitalize “NIC” in error messages.
Signed-off-by: Michael Hanselmann <hansmi@google.c...
Michael Hanselmann
05:08 pm Revision 42653ebd: gnt-cluster(8): Quoting, small fixes
Quote fixed strings where appropriate and replace “nic” (an acronym)
with “network interface”.
Signed-off-by: Michae...
Michael Hanselmann
05:08 pm Revision eac9b7b8: Add utility to format dictionary as key=value strings
This will be used in QA to format network interface parameters.
Signed-off-by: Michael Hanselmann <hansmi@google.com...
Michael Hanselmann
05:06 pm Revision 938adc87: Multiple ExtStorage Providers and ext-params
Add support for passing parameters to the ext template (ext-params).
Take advantage of disk-params, that don't seem t...
Constantinos Venetsanopoulos
05:06 pm Revision aa6c1bb1: Adjust LUInstanceSetParams wrt the `ext' template
Initial support for the `ext' template in gnt-instance modify.
Take care of all needed checks in CheckArguments and C...
Constantinos Venetsanopoulos
05:06 pm Revision 376631d1: Implement the External Storage Interface
With this commit we introduce the External Storage Interface
to Ganeti, abbreviated: ExtStorage Interface.
The ExtSt...
Constantinos Venetsanopoulos
03:37 pm Revision 32ba31be: Stop all daemons on cluster initialization
Addresses issue 145. When daemons are still running from a previous
cluster instance, starting the daemons again will...
Michael Hanselmann
03:37 pm Revision da1dcce1: Make node groups' networks field a dict of nicparams
The networks field of the node groups class is a dictionary
of nic params and not a list of networks. This should fix...
Helga Velroyen
03:36 pm Revision e7e2552e: Update the shared storage design document
Update the shared storage design document to reflect the current
changes, after the implementation of the ExtStorage ...
Constantinos Venetsanopoulos
02:16 pm Revision efe2137a: Final update of NEWS file for 2.6.2 and version bump
I'm already setting this to a release date of tomorrow, since QA on
the 2.6 branch has been clean.
Signed-off-by: Iu...
Iustin Pop
12:37 pm Revision 5f30ea3f: netutils: Normalize all FQDNs
Addresses issue 147. Only the hostnames resolved using
“netutils.Hostname($name)” were normalized, but those returned...
Michael Hanselmann
12:01 pm Revision 814e1e23: Display command description in htools usage message
By abstracting the command/personality formatting, we can easily
switch htools to the same output as the rest of the ...
Iustin Pop
11:57 am Revision 044fff06: More style updates for network-related code
Error message formatting, else/if merging to elif, docstrings.
Signed-off-by: Michael Hanselmann <hansmi@google.com>...
Michael Hanselmann
11:57 am Revision aa279109: NEWS: Opportunistic locking, clarifications
Some rewording, some clarifications, and a new item on opportunistic
locking.
Signed-off-by: Michael Hanselmann <han...
Michael Hanselmann
11:57 am Revision cfa79a23: cmdlib: Additional opportunistic locking check
If opportunistic locking is requested in the opcode, but no iallocator
is used (not specified or no default), an erro...
Michael Hanselmann

12/19/2012

07:44 pm Revision 4a6fce31: Detect wrong Python module structure
If, for one reason or another, a module named "ganeti.ganeti" can be
succesfully imported (e.g. through a symlink in ...
Michael Hanselmann
07:28 pm Revision 3504d6c8: Add hroller htools personality
This is a new personality that for the moment doesn't do anything.
Signed-off-by: Guido Trotter <ultrotter@google.co...
Guido Trotter
07:28 pm Revision 1a9eb17e: Use hroller to print nodes to reboot by groups
This is highly incomplete, as per the manpage BUGS section.
Signed-off-by: Guido Trotter <ultrotter@google.com>
Revi...
Guido Trotter
07:26 pm Revision 1ba25bad: Fix QA for --offline semantics modification
The previous patch series made it simpler to deal with ERROR_up offline
instances, but didn't fix qa, that had the ol...
Guido Trotter
07:26 pm Revision ff0c9604: One more offline+shutdown fix
Currently gnt-instance shutdown --force of an offline instance
resets the offline status. Which of course is bad and ...
Guido Trotter
07:15 pm Revision 13659147: Fix network LUs use of error code in OpPrereqError
Currently, most network LUs simply use EINVAL instead of correct error
codes; this patch tries to adjust the obvious ...
Iustin Pop
06:55 pm Revision 572a277b: _NetworkQuery: Simplify statistics computation
The code can loop directly over “self.wanted”, saving a lookup. An
explicit loop is also replaced with a generator.
...
Michael Hanselmann
06:55 pm Revision 892b5258: cmdlib: Factorize network conflict detection
LUNetworkConnect and LUNetworkDisconnect had very similar code to detect
conflicts between instance's network interfa...
Michael Hanselmann
06:55 pm Revision 84e110aa: gnt-network: Fix import for textwrap
The style guide says to use “import foo”-style imports, not “from foo
import bar” unless it's a Ganeti module. There ...
Michael Hanselmann
06:55 pm Revision b34864e8: gnt-network add: "--network" is required
Also do some minor code re-formatting.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Iustin Pop...
Michael Hanselmann
06:54 pm Revision 0f5c7770: cmdlib: Replace period with colon in error message
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Iustin Pop <iustin@google.com>
Michael Hanselmann
06:54 pm Revision b4600d4f: query: Factorize code for getting statistics value
This was not only copied for the networking fields in commit 306bed0e,
but commit cfcea7ef fixed wrongly ordered para...
Michael Hanselmann
06:54 pm Revision d6f3a69d: gnt-network(8): s/ipv6/IPv6/
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Iustin Pop <iustin@google.com>
Michael Hanselmann
06:54 pm Revision e896ad3d: gnt-network add: Network mode bash completion
This makes entering the command easier.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Iustin Po...
Michael Hanselmann
06:54 pm Revision 6ef37395: OpNetworkConnect: Check for network mode
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Iustin Pop <iustin@google.com>
Michael Hanselmann
06:54 pm Revision e1195cd4: Use generated field list in gnt-network.8
The list of query fields can be automatically generated.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Revie...
Michael Hanselmann
06:54 pm Revision 0b3f2215: Improve descriptions of network query fields
They should be in the same style as other descriptions.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Review...
Michael Hanselmann
06:29 pm Revision b8028dcf: Replace frozenset with compat.UniqueFrozenset
This is not a trivial s/frozenset/compat.UniqueFrozenset/, but rather
only replaces “frozenset” where appropriate. Mo...
Michael Hanselmann
05:41 pm Revision a30a6178: Renaming fam -> net_family on test network generation
Small renaming to make the test more readable.
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Michel...
Helga Velroyen
04:55 pm Revision 5b48df93: Serialization compatibility test for node groups
This creates a number of node groups with up to 3 networks,
serializes them and compares them with their python equva...
Helga Velroyen
04:55 pm Revision 0f0d7aba: Add a network fields to NIC params and node group type
This adds a network field to the NIC params and a list of networks
to the node group type. It adjusts the nodegroup's...
Helga Velroyen
04:54 pm Revision 6f732ae0: Move Network definition ahead of depending definitions
Networks will be properties of NicParams and NodeGroups. Therefore
they need to be defined before those.
Signed-off-...
Helga Velroyen
03:52 pm Revision e0f470ac: Fix job completion with big job queues
Accidentally stumbled upon this while testing unrelated code on a
machine with ~3K active jobs - the bash completion ...
Iustin Pop
03:45 pm Revision d45a824b: Enable job queries via confd in gnt-node and RAPI
This patch is enabling split queries for jobs for gnt-node and rapi
access (only for job listing, not job waiting).
...
Iustin Pop
03:45 pm Revision 45317e3a: Remove some unused Python code
This patch removes code which is no longer used due to refactoring:
- http.InitSsl, last usage removed in commit 332...
Iustin Pop
03:45 pm Revision 1ba01ff7: Move a node-specific function to Query.Node
This shouldn't live in the main Query module, since it's too node
specific.
Signed-off-by: Iustin Pop <iustin@google...
Iustin Pop
03:37 pm Revision a7e484c4: Add support for job queries in hconfd
This adds support for job queries, including (basic) unit-tests.
I've tested this for memory and cpu usage as follow...
Iustin Pop
03:37 pm Revision 037762a9: Change makeSimpleFilter accept NumericValues as well
This is required for QueryJobs implementation; we change
makeSimpleFilter to support both string and integers as name...
Iustin Pop
03:37 pm Revision aa79e62e: Add a read-only job queue module
This patch adds implementation for a read-only job queue module,
together with "full" test (as full as can be in a la...
Iustin Pop
03:37 pm Revision f94a9680: Implement support for QFF_SPLIT_TIMESTAMP
I am very very unhappy with this patch. We have to do this, in order
to be compatible with the Python code and behavi...
Iustin Pop
03:14 pm Revision 0ea11dcb: Add exclusive_storage node parameter
Unit tests updated and expanded with an inheritance check.
The flag has no effect yet.
Signed-off-by: Bernardo Dal ...
Bernardo Dal Seno
03:14 pm Revision d3b06210: Update design doc for partitioned Ganeti
PVs don't need to be marked as unallocatable, as the code will ignore
partially used PVs. exclusive_storage made a no...
Bernardo Dal Seno
03:11 pm Revision 712da82f: Remove superfluous typing to Int
Forgot to fix that after the review of patch
"Haskell/python compatibility test for networks".
Signed-off-by: Helga ...
Helga Velroyen
01:11 pm Revision 90634d95: Extend job ID parsing tests
Since this is a type that behaves non-standard, let's add some more
test for "wrong" input values.
Signed-off-by: Iu...
Iustin Pop
01:11 pm Revision f56013fd: Add a few tests for OpParams types
As OpParams definitions are used at Template Haskell type, they don't
get any coverage (although the values defined b...
Iustin Pop
01:10 pm Revision 988dc5ca: Enable bash completion for mon-collector
This just ties in all the pieces so far and enables bash completion
for it.
Signed-off-by: Iustin Pop <iustin@google...
Iustin Pop
01:10 pm Revision 638e0a6f: Improve mon-collector drbd CLI handling
Currently, this doesn't abort if multiple arguments are passed, and
the error message for errors during file read has...
Iustin Pop
01:10 pm Revision 86aa9ba3: Remove two hlint overrides
"Use comparing" was not needed, and "Use on" can be solved by actually
using on in the single case we have (the patch...
Iustin Pop
01:10 pm Revision 570274e4: Add more mon-collector shell tests
These test the newly-changed behaviour, and fix an inconsistency in
the hs-check target (versus hs-coverage).
Signed...
Iustin Pop
01:10 pm Revision 55abd2c7: Add a custom CLI module for DataCollectors
Currently, the mon-collector binary uses the HTools/CLI module, which
is OK but mean it links in lots of htools code....
Iustin Pop
01:10 pm Revision 2e6ef129: Add a type alias for the personality lists
The signature of the personality definitions is so ugly that, at
least, we should hide it a bit behind a type alias.
...
Iustin Pop
01:10 pm Revision 630c73e5: Introduce generic multi-command binary handling
Currently, the mon-collector binary is the only multi-command binary
we have in Haskell. Not surprisingly therefore, ...
Iustin Pop
01:10 pm Revision 559c4a98: Add description to personality definitions
This allows usage information to display nicer help (like in Python).
Signed-off-by: Iustin Pop <iustin@google.com>
...
Iustin Pop
01:10 pm Revision e892cdfa: Simplify htools.hs personality selection
No need to do a boolean-based lookup, we can use the regular
association list lookup.
Signed-off-by: Iustin Pop <ius...
Iustin Pop
01:10 pm Revision 24476fa0: bash-completion: add support for multi-cmd Haskell binaries
This patch adds support for parsing the command list out of a binary
(very strict format), and then iterating over th...
Iustin Pop
01:10 pm Revision daf0de68: Implement fake completion support for multi-cmd binaries
This will allow build-bash-completion to understand what is the list
of commands that each binary supports, and then ...
Iustin Pop
01:10 pm Revision 675f65b7: Fix profiling targets
As noted by Guido, there are problems when using the hs-prof and
hs-prof-quick targets in the default configuration (...
Iustin Pop
01:02 pm Revision 0d57ce24: Allow shutting down offline instance
If an instance is offline we definitely shouldn't start it up.
But shutting it down, should it be up by mistake is no...
Guido Trotter
01:01 pm Revision eec7840a: Allow running instances to be put online
If an instance is running (eg. ERROR_up) and at the same time offline,
there's no way to either shut it down or reonl...
Guido Trotter

12/18/2012

04:09 pm Revision 05325a35: Fixes and improvements to comments
Some fixes, added more information in a few points, removed a stale (5+
year old) TODO comment.
Signed-off-by: Berna...
Bernardo Dal Seno
03:22 pm Revision c96887cf: Explain how to use GHCI to see spliced TH code
This can be more useful than the "make" version.
Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-by: Michael ...
Iustin Pop
03:06 pm Revision daa49d6f: Fix error during cluster initialization due to hv_kvm
Commit 141d148 was a bit too enthusiastic. The three parameters added to
the list of parameters to be checked default...
Michael Hanselmann
02:07 pm Revision 114e8500: Make LUNetworkAdd pass _VerifyLocks()
LEVEL_NODE_ALLOC should be aquired too if LEVEL_NODE is ALL_SET.
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr...
Dimitris Aragiorgis
11:24 am Revision 0b288282: Haskell/python compatibility test for networks
This patch contains the HUnit test that checks the compatibility
of Haskell-generated networks with the python code. ...
Helga Velroyen

12/17/2012

06:24 pm Revision 141d1489: Add test for SPICE parameter list, add missing ones
“_SPICE_ADDITIONAL_PARAMS” is supposed to be the full list of
SPICE-related KVM hypervisor parameters with the except...
Michael Hanselmann
06:24 pm Revision 07788a0b: hv_kvm: List of SPICE parameters should be module-global
This list is static at runtime and doesn't need to be recreated every
time.
Signed-off-by: Michael Hanselmann <hansm...
Michael Hanselmann
06:16 pm Revision af797be5: _DeclareLocksForMigration: Fix non-DRBD locking issue
When non-DRBD disks are used for an instance,
“lu.needed_locks[locking.LEVEL_NODE]” is set to “locking.ALL_SET” (whic...
Michael Hanselmann
05:44 pm Revision d4e4b2fd: LUOobCommand: Always declare NAL in shared mode
Doing so avoids triggering an assertion in mcpu which cross-checks the
node lock and node allocation lock acquisition...
Michael Hanselmann
01:38 pm Revision 1d645825: Fix two logging messages in TLReplaceDisks
Commit f0f8d060 (“Show old primary/secondary node on disk
replacement”) added two wrong uses of feedback_fn, which re...
Iustin Pop
01:38 pm Revision fef919b7: Split and extend Confd types tests
Some confd types were not tested for serialisation, so let's move
these (type-related) tests to their own module and ...
Iustin Pop
01:38 pm Revision 62d5242b: Switch Luxi sendMsg from strict to lazy ByteStrings
Commit e821050d (“Switch the Luxi interface from Strings to
ByteStrings”) was designed to optimise the receive interf...
Iustin Pop
01:38 pm Revision 13b17073: Add NFData instances for query results
This allows us to ensure that query results are strict as we build
them, instead of being lazy and only evaluated whe...
Iustin Pop
01:38 pm Revision daa79414: Introduce NFData instances for JSON types
The JSValue/JSObject types don't come with a NFData instance, so let's
add one ourselves, so that we can force evalua...
Iustin Pop
01:38 pm Revision 77d43564: Fix parsing of absolute job dependencies
It seems that Python code generates (sometimes) absolute job
dependencies which are strings, instead of integers, so ...
Iustin Pop
01:38 pm Revision 1496f5f3: Make two common opcode parameters always serialised
This changes deps and comment fields to always be shown, to match the
Python behaviour for (at least) job listing/ops...
Iustin Pop
01:38 pm Revision 88127c47: Fix disk_template OpInstSetParams parameter
This is not a required field, but rather an optional one; we add a new
parameter and use it instead.
Signed-off-by: ...
Iustin Pop
01:38 pm Revision d2970809: Support 'null' in Luxi QueryJobs names field
Python code sometimes sends this, so let's support it even though it's
non-standard.
Signed-off-by: Iustin Pop <iust...
Iustin Pop
01:38 pm Revision fd958a3d: Abstract code related to job ID creation
Having makeJobIdS as a separate function will allow us to use it
outside of json encoding.
The patch also exports on...
Iustin Pop
01:37 pm Revision 4355b2de: Add new Haskell library dependency for tests
The 'temporary' library add support for create temporary
directories/files beyond what is offered in the base library...
Iustin Pop
01:37 pm Revision a664325e: Reduce logging level in tests
This allows tests to execute IO actions which have logging as a side
effect, without polluting the stderr too much.
...
Iustin Pop
01:37 pm Revision 55438c07: Export jstore constants as well to Constants.hs
This single constant could be as well moved to constants.py. For now I
choose to just export the module as well.
Sig...
Iustin Pop
01:37 pm Revision df8578fb: Generalise the test helper 'genUniquesList'
Instead of always using "arbitrary", make it require a generator (that
can then use more complex rules for building t...
Iustin Pop
01:37 pm Revision 1db32048: Export more paths from Path.hs
Also adds a small helper for building the paths.
Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-by: Michele ...
Iustin Pop
01:29 pm Revision a1d137f6: Simplify a bit the FilterRegex JSON instance
Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Iustin Pop
01:29 pm Revision ad1c1e41: Implement opcode summary support
This implements in the Haskell codebase the opcode summary. As opposed
to Python, we always use custom code for forma...
Iustin Pop
01:29 pm Revision 8bc17ebb: Add optional formatting for OP_DSC_FIELD
For some opcodes, the output is not "stable", and depends on the exact
input values; this makes it harder to check co...
Iustin Pop
01:29 pm Revision 5cd95d46: Add a type for the log type in job/opcode logs
Also fixes indentation for OP_STATUS.
Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-by: Guido Trotter <ultr...
Iustin Pop
01:29 pm Revision 60f20a41: Fix small typo in OpTestDelay/duration definition
The extra space results in inaccessible names; currently GHC doesn't
flag this as an error, but I've filled an upstre...
Iustin Pop

12/14/2012

04:55 pm Revision 9d3867b1: Add constants for two values which we re-evaluate
Two constants which we use as Integer are defined as Int in
Constants.hs (coming from constants.py), so we do the con...
Iustin Pop
04:55 pm Revision 5448799c: Fix an small but quite nasty typo
Introduced in commit d4752785.
Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-by: Guido Trotter <ultrotter@g...
Iustin Pop
04:52 pm Revision abee3636: confd: reduce noise during normal config reload
During a normal configuration update, done via write to temp file and
rename, this is what confd logs (slightly edite...
Iustin Pop
04:44 pm Revision d0054203: update gnt-instance manpage about self-rename
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Iustin Pop <iustin@google.com>
Guido Trotter
04:43 pm Revision a3d1dc0a: Change hbal handling of !auto_balance instances
Note: I'll add tests for this on the master branch, but not here.
Signed-off-by: Iustin Pop <iustin@google.com>
Revi...
Iustin Pop
04:43 pm Revision 9fdc92fa: burnin: rename instances to same name
this (a) allows us to test renaming in burnin even if we don't have an
extra instance name and (b) is a valid operati...
Guido Trotter
04:28 pm Revision 57fb6fcb: Very very very basic openvswitch support
This is a "better than nothing" support, just for kvm and just joining
the machine to the opevswitch bridge with the ...
Guido Trotter
03:11 pm Revision d6b5da24: Add profiling dependencies note
As discussed on the list, these are needed to do a make hs-prof.
Signed-off-by: Guido Trotter <ultrotter@google.com>...
Guido Trotter
03:11 pm Revision cce30754: Improve a few Graph test properties
Return type is changed from Property to Bool, and the ==? True at the
end is dropped.
Signed-off-by: Guido Trotter <...
Guido Trotter
03:11 pm Revision f127e585: remove duplicate code in Graph.hs
Also update the docstring of a function.
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Iustin Pop...
Guido Trotter
12:14 pm Revision 75c7a686: Small corrections in man pages
The only semantic change is the fix of the spelling of the option
--ipolicy-disk-templates.
Signed-off-by: Bernardo ...
Bernardo Dal Seno

12/13/2012

07:47 pm Revision f74b88fa: Log only partial response in Luxi when in debug mode
Currently, we log the entire response (at debug level) in the Luxi
replies. This is not a good idea; the logging libr...
Iustin Pop
07:46 pm Revision 6c282c89: Fix gnt-instance(8) w.r.t. growable disk templates
This fixes Issue 257.
Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Iustin Pop
07:16 pm Revision e21c2eec: Pass check_ip and not hostname.ip to _ComputeNics
This should be done because in the case of --no-name-check there
is no 'hostname.ip' attribute, causing an execution ...
Constantinos Venetsanopoulos
05:36 pm Revision 80b207df: Stop verifying opcode results in dry_run mode
Commit 1ce03fb1 (“Add ht-based result checks to opcodes”) introduced
infrastructure for checking opcode results, and ...
Iustin Pop
05:35 pm Revision 924d9134: Add version check for doc/design-draft.rst
This is similar to README or “doc/security.rst”. Having a comment that
needs updating for a new version is more likel...
Michael Hanselmann
05:35 pm Revision a5b0694f: Makefile/check-local: List all errors before failing
Use the “error” variable in multiple places and fail only once all tests
have been completed.
Signed-off-by: Michael...
Michael Hanselmann
04:55 pm Revision 98a83f17: Move four designs from draft to 2.7
These are the ones I implemented and for which I'm certain they're
complete.
Signed-off-by: Michael Hanselmann <hans...
Michael Hanselmann
04:52 pm Revision f1d243bd: RAPI documentation fix and update
- Mention user capabilities in security.rst
- Replace “query” with “read” in RAPI documentation
Signed-off-by: Micha...
Michael Hanselmann
02:30 pm Revision 542e3dea: Add hpc-mon-collector to .gitignore
It is a binary file and it should never be added to the git repository.
Signed-off-by: Michele Tartara <mtartara@goo...
Michele Tartara
01:29 pm Revision ec5af888: Read watcher pause using RPC, not directly
The master daemon should not directly read files written by the node
daemon. This patch adds a new RPC to read the wa...
Michael Hanselmann
01:29 pm Revision 7c4bd156: Set watcher pause on all nodes
Instead of just setting the watcher pause file, which isn't replicated,
RPC is used to set it on all nodes (where pos...
Michael Hanselmann
01:29 pm Revision 99e222b1: Add RPC for setting watcher pause
The watcher pause file should be set/unset on all nodes at once, not
only the master node. For that a new RPC is need...
Michael Hanselmann
01:28 pm Revision f2bca93e: Generated RPC code: Don't write whitespace after paren
There is no obvious need for this space--the line would wrap at the next
space, which comes soon after.
Signed-off-b...
Michael Hanselmann
01:28 pm Revision 6ec28bc6: Rename test for backend._CommonRestrictedCmdCheck
“TestWriteFile” was not renamed when adding the file based on
“ganeti.utils.io_unittest-runasroot.py”.
Signed-off-by...
Michael Hanselmann
01:27 pm Revision 383477e9: jqueue: Improve inotify error reporting
This addresses issue 218. When the number of inotify watches is
exhausted, for example by being set too low from the ...
Michael Hanselmann
01:27 pm Revision e37f47d3: Improve test for tools.ensure_dirs
- Add more checks, some of them are deliberately redundant
- Descriptive error messages
- Add comment describing orde...
Michael Hanselmann

12/12/2012

05:54 pm Revision 164947cc: Jobs.hs: make L.Client the last argument for all functions
Having the Luxi client be the last argument of the functions allows for
easier use with `Exception.bracket L.getClien...
Dato Simó
05:06 pm Revision 5f2cdb2a: Fix a bug in the hs-coverage rule of Makefile.am
The coverage information for mon-collector was not merged correctly.
Signed-off-by: Michele Tartara <mtartara@google...
Michele Tartara
03:33 pm Revision 80df2895: Update NEWS for 2.6.2
This is in preparation for a 2.6.2 release.
Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: Iusti...
Michael Hanselmann
03:25 pm Revision 23f1bf29: uidpool: Remove roman number support
Doing so simplifies to code a bit and never had a practical use.
Signed-off-by: Michael Hanselmann <hansmi@google.co...
Michael Hanselmann
03:21 pm Revision 8e8092cc: Fix TypeError when unsetting OS parameters
When all OS parameters should be unset (“gnt-os modify -H -xen-pvm
foo”), a TypeError was raised. This fixes issue 31...
Michael Hanselmann
03:18 pm Revision 3e3ddbf0: Remove checks wrt IDISK_PARAMS from OpCode level
Change the "--disks" option validation, to just check the format
of the dict and do not check whether the keys are in...
Constantinos Venetsanopoulos
02:09 pm Revision cefd4a4a: Add shelltests for the mon-collector
This commit adds shelltests for the mon-collector binary and for the DRBD
data collector.
Also, it fixes a small bug...
Michele Tartara
02:09 pm Revision 332b1340: Add the stand-alone data collector for DRBD
It is implemented as a single binary receiving, as its first parameter,
the name of the actual data collector to be r...
Michele Tartara
02:08 pm Revision 61e062dd: Move the path of the DRBD status file to the Constants file
It will be needed by the DRBD data collector, that will be added shortly.
Signed-off-by: Michele Tartara <mtartara@g...
Michele Tartara
01:43 pm Revision 432d62a8: Make configure check for haskell vector library
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Helga Velroyen
11:20 am Revision 405656b7: Remove usage of reserved key word 'family'
An old hlint version (1.8.28) was complaining about the
word 'family' being used in the network tests. Thanks to
an e...
Helga Velroyen
10:43 am Revision fcc1977b: Add documentation about new dependency to vector lib
Updates the INSTALL file to add the haskell library
libghc-vector-dev.
Signed-off-by: Helga Velroyen <helgav@google....
Helga Velroyen
« Previous
Next »
 

Also available in: Atom