- May 13, 2010
-
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Currently this only supports the new instance creation request data format version 1, but support for the old version can be easily implemented. Most arguments are optional and documented in the RAPI documentation. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
As mentioned in commit d975f482, the current way of creating an instance via RAPI is not very flexible. With this patch, a new instance creation request data format is introduced and documented. Support can be detected by checking the list of features returned by the /2/features resource for the value "instance-create-reqv1". Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Also add a separate function to retrieve body parameters. Having it separate (independent of a class instance) will make it easier to unittest users of this function. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
The /2/features RAPI resource can be used to detect optional features implemented by the RAPI server. This will be used to recognize servers implementing a new request format for instance creation requests. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Luca Bigliardi authored
Node daemon logs will be printed on system console if writing on the log file fails. Signed-off-by:
Luca Bigliardi <shammash@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Luca Bigliardi authored
Signed-off-by:
Luca Bigliardi <shammash@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Luca Bigliardi authored
Add a parameter to SetupLogging to use LogFileHandler (default is off) Signed-off-by:
Luca Bigliardi <shammash@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Luca Bigliardi authored
Add a log handler class which logs to /dev/console in case of logging errors. Signed-off-by:
Luca Bigliardi <shammash@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Luca Bigliardi authored
Signed-off-by:
Luca Bigliardi <shammash@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Luca Bigliardi authored
Signed-off-by:
Luca Bigliardi <shammash@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Luca Bigliardi authored
Signed-off-by:
Luca Bigliardi <shammash@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Luca Bigliardi authored
Signed-off-by:
Luca Bigliardi <shammash@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Luca Bigliardi authored
Add Mlockall() utility to lock current process' virtual adress space into RAM. Signed-off-by:
Luca Bigliardi <shammash@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- May 12, 2010
-
-
Luca Bigliardi authored
Signed-off-by:
Luca Bigliardi <shammash@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
The way the resource /2/instances expects its request data (e.g. instance name, disks, NICs) to be formatted in a dict is not very extensible. HV and BE parameters are interleaved with all other values. In commit 495cfdf0 a new parameter “mode” was added which can be misunderstood as the instance creation mode, but is actually a mode for the network interface. Short of bumping the whole RAPI version (currently 2), which would involve many, many other changes and potentially break clients, we can not change the request format easily as it needs to stay backwards and future-compatible as far as possible. This is not an internal API, but one used by several external applications. By introducing a data format version per request, we can still support the old request format, and thereby not break existing users, while we can add a more flexible request format which will, for example, support multiple NICs and move HV/BE parameters to separate containers, avoiding conflicts. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Guido Trotter authored
For passwords we require strict oneliners, we're a bit more lax with pid and uid files. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Read the first non-empty file line. When strict is set, abort if more than one line is non-empty. Some unittests inspired by the reverted ones from commit b774bb10, and some new ones. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
This partially reverts commit b774bb10. Unittests unrelated to that particular functionality but introduced in that commit are left untouched. Since the temporary directory is now only used to check for a non-existing file, it is removed as well, and a convenient very-very-unlikely-to-exist file is used instead. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
The 0.7 version was just an example, but since we're on 0.9 now, updating the number cannot be wrong. The new admonition helps KVM users to configure debootstrap correctly so that instances can be shutdown cleanly. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Xen: Just specify 3.0 or above as a requirement, as versions above 3.1 have been tested and work fine with Ganeti. Also note that the Xen dependency is optional, if one wants to work with KVM. KVM: list as an alternative, specify that 72 (the one shipped with lenny) is the bare minimum, but newer qemu-kvm is recommended. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
My previous patch, commit 857705e8, helped in one particular situation where the exception didn't contain any arguments (pyOpenSSL reporting a WantReadError, which shouldn't occur with a blocking socket anyway). With this patch, more common and uncommon errors should be easy to recognize. SSL errors without any of these patches: “ganeti.rapi.client.CertificateError: SSL issue: [('SSL routines', 'SSL3_GET_SERVER_CERTIFICATE', 'certificate verify failed')]” SSL errors with both patches: “ganeti.rapi.client.CertificateError: SSL issue: [('SSL routines', 'SSL3_GET_SERVER_CERTIFICATE', 'certificate verify failed')] (<OpenSSL.SSL.Error instance at 0x…>)” WantReadError without any of these two patches: “ganeti.rapi.client.CertificateError: SSL issue: ” WantReadError with both patches: “ganeti.rapi.client.CertificateError: SSL issue: (<OpenSSL.SSL.WantReadError instance at 0x…>)” Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- May 11, 2010
-
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Only the server knows which node roles can be set via RAPI. Constants are provided for convenience. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
- The RAPI client shouldn't check the replacement mode as only the server knows which ones are valid (constants are still provided for convenience) - Disks shouldn't be a list of names, but of indexes Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
When modifying a storage unit, the “allocatable” flag should default to “no modification”. This replicates the behaviour of the command line interface. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Boolean values must be passed as 0 or 1. None should be an empty value (""). Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Only the RAPI server (actually masterd) knows which storage types are valid. The exception can no longer be raised as the type is only checked in the job. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
This reverts a60e3cb0 partially by moving the RAPI version into a constant. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
The RAPI tests will depend on the certificate. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
David Knowles <dknowles@google.com>
-
Michael Hanselmann authored
The RAPI client module shouldn't depend on any Ganeti module, yet it's useful to have some Ganeti-specific code, like a PollJob function for RAPI. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
David Knowles <dknowles@google.com>
-
Michael Hanselmann authored
Having the HTTP error code allows users of the class to act differently based on the error code. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
David Knowles <dknowles@google.com>
-
Michael Hanselmann authored
This allows testing error conditions (e.g. if a job wasn't found). Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
David Knowles <dknowles@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
David Knowles <dknowles@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-