Nikos Skalkotos [Wed, 28 Nov 2012 12:27:18 +0000 (14:27 +0200)]
Add apt preferences dir for multistrap
The files hosted in this directory will be added in the
/etc/apt/preferences.d directory of the helper image before multistrap
runs.
Nikos Skalkotos [Tue, 20 Nov 2012 09:43:13 +0000 (11:43 +0200)]
Update ChangeLog and configure.ac for ver. 0.6.5
Nikos Skalkotos [Mon, 19 Nov 2012 16:40:18 +0000 (18:40 +0200)]
Fix a bug introduced in
9fca5245a2eae67af86719bb0f
AssignHostname task did not search for Unattend.xml in a case
insensitive way.
Nikos Skalkotos [Thu, 15 Nov 2012 14:31:32 +0000 (16:31 +0200)]
Update ChangeLog and configure.ac for ver. 0.6.4
Nikos Skalkotos [Thu, 15 Nov 2012 14:17:27 +0000 (16:17 +0200)]
Nikos Skalkotos [Tue, 13 Nov 2012 10:35:04 +0000 (12:35 +0200)]
Update ChangeLog and configure.ac for ver. 0.6.3
Nikos Skalkotos [Mon, 12 Nov 2012 15:21:33 +0000 (17:21 +0200)]
Fix a bug in helper's error monitoring system
Make sure that if log_error is executed like this:
log_error "text" "text"
The 2 arguments get merged before being fed to the monitoring system.
Nikos Skalkotos [Mon, 12 Nov 2012 13:34:45 +0000 (15:34 +0200)]
Check if the img_properties are decoded correct
In image helper, check if decode-properties.py returned 0 and log
the error if this is not the case.
Nikos Skalkotos [Mon, 12 Nov 2012 10:53:24 +0000 (12:53 +0200)]
Fix minor typo in ChangePassword task
Nikos Skalkotos [Fri, 9 Nov 2012 19:20:54 +0000 (21:20 +0200)]
Don't overwrite C:\Unattend.xml in the windows
If unattend.xml is present in the windows image, use this one unless
USE_DEFAULT_UNATTEND is specified as an image property.
Nikos Skalkotos [Fri, 9 Nov 2012 15:51:02 +0000 (17:51 +0200)]
Fix the error messages in helper
Nikos Skalkotos [Wed, 7 Nov 2012 13:53:15 +0000 (15:53 +0200)]
In update-helper remove the tmp image on errors
If an error occurs, the temporary helper image under
/var/lib/snf-image-helper should be removed.
Conflicts:
snf-image-host/snf-image-update-helper.in
Nikos Skalkotos [Wed, 31 Oct 2012 09:59:45 +0000 (11:59 +0200)]
Fix a bug in the helper's monitoring system
Fix a bug where the helper will not send a image-helper-error msg
if an error occures when running snf-image-helper main script and
not one of the configuration tasks.
Conflicts:
snf-image-helper/common.sh
Nikos Skalkotos [Fri, 12 Oct 2012 10:09:50 +0000 (13:09 +0300)]
Update ChangeLog and configure.ac for ver. 0.6.2
Nikos Skalkotos [Fri, 5 Oct 2012 12:57:16 +0000 (15:57 +0300)]
Update ChangeLog and configure.ac for version 0.6.1
Nikos Skalkotos [Mon, 22 Oct 2012 11:51:19 +0000 (14:51 +0300)]
Change default error msg in monitoring
Nikos Skalkotos [Fri, 19 Oct 2012 16:58:42 +0000 (19:58 +0300)]
Fix an obsolete trap line
It should have been changed in commit
696deeec2b28dacc75e93544835497982df2af50
Nikos Skalkotos [Thu, 11 Oct 2012 14:00:02 +0000 (17:00 +0300)]
Fix error and info messages
Nikos Skalkotos [Thu, 11 Oct 2012 12:19:30 +0000 (15:19 +0300)]
Seperate error messages from monitoring messages
Do not send through the monitor pipe the error messages. They may
contain internal sensitive information. Create a new report_error
function for sending errors through the monitoring pipe.
Conflicts:
snf-image-host/create
snf-image-host/snf-image-update-helper.in
Nikos Skalkotos [Thu, 11 Oct 2012 14:29:13 +0000 (17:29 +0300)]
In ChangePassword task check if the users exist
Check if the users stated in the USERS image property do actually
exist.
Nikos Skalkotos [Fri, 5 Oct 2012 12:09:55 +0000 (15:09 +0300)]
Support installing snf-image-helper from apt repos
snf-image-update-helper should check when creating a helper VM if
an snf-image-helper package was installed from an apt repository
through multistrap. If this is the case, snf-image-update-helper
should not complain about not finding the HELPER_PKG.
Nikos Skalkotos [Thu, 4 Oct 2012 15:44:12 +0000 (18:44 +0300)]
Use a seperated dir for update-helper cache files
By default this directory is $(LOCALSTATEDIR)/cache/snf-image/helper
Nikos Skalkotos [Thu, 4 Oct 2012 08:20:09 +0000 (11:20 +0300)]
Use env. variables to pass options to pithcat
This is done for security reasons. The options may contain sensitive
data like the Pithos DB password and while the program (pithcat) is
running the whole command line is exposed to everyone through ps.
Nikos Skalkotos [Wed, 3 Oct 2012 08:52:00 +0000 (11:52 +0300)]
Suppress a reglookup warning
Hundred of warnings like this: `WARN: While quoting value for
'<registry_key>', warning returned: Data could not be interpreted,
quoting raw buffer.' are outputed when reglookup reads the registry
of a Windows 2012 system.
Dimitris Aragiorgis [Tue, 2 Oct 2012 15:47:22 +0000 (18:47 +0300)]
Use socat rather than screen for xm commands
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Nikos Skalkotos [Mon, 1 Oct 2012 14:21:32 +0000 (17:21 +0300)]
Don't move the kernel out of the helper VM image
When snf-image-update-helper runned, it moved the kernel and the
initrd file out of the helper VM image. With this patch,
snf-image-update-helper will copy the kernel to the host without
removing it from the image.
Dimitris Aragiorgis [Fri, 28 Sep 2012 19:33:13 +0000 (22:33 +0300)]
Use socat to dump helper messages in case of xen
Helper gets a dummy interface and communication between helper
and host is done via socat STDIO INTERFACE:eth0/vif$helperid.0
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Dimitris Aragiorgis [Fri, 28 Sep 2012 18:40:45 +0000 (21:40 +0300)]
Make use of XenStore to export SUCCESS msg
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Dimitris Aragiorgis [Thu, 27 Sep 2012 00:34:47 +0000 (03:34 +0300)]
Xen support
Support launching helper domain on top of Xen hypervisor under PV mode.
Helper VM becomes hypervisor aware by passing hypervisor=$HYPERVISOR
in the kernel command line and thus acts accordingly (which logging
devices to use, what disk/floppy devices to expect, etc)
We separate all hypervisor specific functions and vars and source them
according to $HYPERVISOR env var.
Due to the fact that multiconsole for PV domains is supported only after
linux kernel 3.2 (Stefano Stabellini tree - branch 3.2-multiconsole-2
git://xenbits.xen.org/people/sstabellini/linux-pvhvm.git) all
output/error report and logging is done via hvc0.
Helper domain is debootstraped with 2 kernels (linux-image-amd64,
linux-image-xen-amd64) and is booted accordingly.
Floppy is not supported in PV so floppy is passed as another disk.
The images created can run on top of xen-hvm and xen-pvm hypervisor.
Change logging to start with HELPER_MONITOR_ in order to parse it when
having only one console.
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Nikos Skalkotos [Fri, 28 Sep 2012 13:46:41 +0000 (16:46 +0300)]
Disable fsyncs in helper's VM resize operation
You can disable this behaviour by defining the DO_SYNC image property.
Nikos Skalkotos [Fri, 28 Sep 2012 10:29:04 +0000 (13:29 +0300)]
Delete helper img if errors occure during creation
If snf-image-update-helper exits with errors, delete the temporary
image file from /var/lib/snf-image/helper.
Nikos Skalkotos [Thu, 27 Sep 2012 16:34:17 +0000 (19:34 +0300)]
Replace debootstrap with multistrap
multistrap is more flexible allows as to define more that one
repository to retrieve packages from.
Nikos Skalkotos [Thu, 27 Sep 2012 15:58:43 +0000 (18:58 +0300)]
Fix a bug in snf-image-update-helper
the kernel and init paths computed by snf-image-update-helper script
were incorrect.
Nikos Skalkotos [Wed, 26 Sep 2012 13:40:07 +0000 (16:40 +0300)]
Add back the snf_image_activate_helper check
Nikos Skalkotos [Wed, 26 Sep 2012 12:05:10 +0000 (15:05 +0300)]
Remove the boot and shutdown process in helper VM
Make snf-image-helper ran as init process when calling the helper
VM. Also make the helper VM shut down quickly by using the shut off
SysRq.
Nikos Skalkotos [Mon, 24 Sep 2012 09:01:42 +0000 (12:01 +0300)]
Use UTC when calling date command
Nikos Skalkotos [Fri, 21 Sep 2012 12:42:07 +0000 (15:42 +0300)]
Add IMAGE_DEBUG variable
if this is set, then snf-image will run in debug mode.
Nikos Skalkotos [Mon, 17 Sep 2012 15:02:29 +0000 (18:02 +0300)]
Drop the `user' password reset rule
Drop the rule that resets the password for user with username `user'
if the USERS image property is missing and the system is detected
to be a Fedora or a Ubuntu Linux system.
Nikos Skalkotos [Fri, 14 Sep 2012 13:43:48 +0000 (16:43 +0300)]
Update ChangeLog and configure for version 0.6
Nikos Skalkotos [Fri, 14 Sep 2012 12:22:29 +0000 (15:22 +0300)]
Remove enable-network-backend flag from configure
The curl dependency is not optional any more.
Nikos Skalkotos [Thu, 13 Sep 2012 08:43:10 +0000 (11:43 +0300)]
Add new config_url os parameter
This url points to a json file that contains the value for other
OS parameters. Using this file we can pass parameters to snf-image
without writting them in Ganeti's config.data. This is
useful, for 2 reasons:
* Privacy: We don't want the password to appear in the Ganeti config
* Speed: Some parameters like IMG_PERSONALITY can be quite large (a few
KB) and since ganeti shares the instance configuration among different
nodes, the overall system will start getting slower if many instances
with IMG_PERSONALITY exist.
Nikos Skalkotos [Wed, 12 Sep 2012 15:39:39 +0000 (18:39 +0300)]
Add working import and export scripts
Nikos Skalkotos [Wed, 12 Sep 2012 10:42:26 +0000 (13:42 +0300)]
Fix an identation error in common.sh.in
Nikos Skalkotos [Thu, 6 Sep 2012 09:55:35 +0000 (12:55 +0300)]
Make sure EnforcePersonality runs last
When a users inject a file in an image that already exists,
we want to make sure that this file is not altered by any other task.
So, the EnforcePersonality task, is the last task that should run
before the image is unmounted.
Nikos Skalkotos [Fri, 31 Aug 2012 08:57:33 +0000 (11:57 +0300)]
Update ChangeLog and configure for version 0.5
Nikos Skalkotos [Fri, 29 Jun 2012 10:41:08 +0000 (13:41 +0300)]
Update ChangeLog and configure.ac for v0.4.2
Nikos Skalkotos [Mon, 28 May 2012 14:56:09 +0000 (17:56 +0300)]
Update ChangeLog and configure.ac for v0.4.1
Nikos Skalkotos [Wed, 29 Aug 2012 15:10:42 +0000 (18:10 +0300)]
Add support for null image backend type
This backend type can be used if we want snf-image to configure the
VM disk without first copying an image to it. This is useful for
cases were the VM disk is already populated before snf-image runs.
Nikos Skalkotos [Sun, 29 Jul 2012 14:07:47 +0000 (17:07 +0300)]
Fix minor typo
Nikos Skalkotos [Sun, 29 Jul 2012 13:50:43 +0000 (16:50 +0300)]
In archlinux make use of /etc/hostname if present
Newer arch linux systems use this file to assign a hostname. If the
file is present and not empty, then use it.
Nikos Skalkotos [Mon, 23 Jul 2012 16:26:53 +0000 (19:26 +0300)]
Add support for archlinux
* Fix distro detection code to detect arch linux systems
* Fix AssighHostname hook to successfully assign the host name on
arch linux systems
Nikos Skalkotos [Mon, 23 Jul 2012 13:36:47 +0000 (16:36 +0300)]
Fix some monitoring messages.
Nikos Skalkotos [Mon, 23 Jul 2012 13:55:48 +0000 (16:55 +0300)]
Don't strip stderr lines in image-error msgs
Nikos Skalkotos [Mon, 23 Jul 2012 13:22:25 +0000 (16:22 +0300)]
Create a dedicated host monitoring program
This program is used to output info and error messages from the host.
Nikos Skalkotos [Mon, 23 Jul 2012 09:19:32 +0000 (12:19 +0300)]
Add stderr-monitor.py for monitoring stderr
This programm will get the stderr file as input and it will create a
json image-error msg
Nikos Skalkotos [Fri, 20 Jul 2012 15:42:45 +0000 (18:42 +0300)]
Add new image-info monitoring msg type
snf-image-host can output info messages using the log_info function.
Nikos Skalkotos [Fri, 20 Jul 2012 12:30:23 +0000 (15:30 +0300)]
Minor changes in monitoring protocol
Change msg field to messages in monitoring messages with type
image-helper and subtype error or warning. The new field is a list
of strings.
Nikos Skalkotos [Fri, 20 Jul 2012 11:59:51 +0000 (14:59 +0300)]
Get unbuffered input in helper-monitor.py
Change sys.stdin.readline with os.read
Nikos Skalkotos [Thu, 19 Jul 2012 13:54:32 +0000 (16:54 +0300)]
Remove redundant location field in error messages
Nikos Skalkotos [Wed, 18 Jul 2012 14:14:23 +0000 (17:14 +0300)]
Run ganeti_os_main before monitor_pipe utilization
Progress monitor program needs to know the instance name, which is
provided by ganeti_os_main.
Nikos Skalkotos [Wed, 18 Jul 2012 09:46:42 +0000 (12:46 +0300)]
Prefix all monitoring message types with image-
Nikos Skalkotos [Mon, 16 Jul 2012 11:53:52 +0000 (14:53 +0300)]
Fix some error messages
Nikos Skalkotos [Mon, 16 Jul 2012 11:01:34 +0000 (14:01 +0300)]
Fix a bug in error reporting json string
A `{' was missing in the beginning of the json string of the message
with type `error'.
Nikos Skalkotos [Mon, 16 Jul 2012 08:51:04 +0000 (11:51 +0300)]
Add helper-monitor.py program
This program transforms raw helper monitor messages into json strings
under very strict rules. This reduces security concerns since the
helper VM output cannot be trusted.
Nikos Skalkotos [Mon, 9 Jul 2012 11:50:27 +0000 (14:50 +0300)]
Add copyright info in verify
Constantinos Venetsanopoulos [Tue, 3 Jul 2012 12:34:41 +0000 (15:34 +0300)]
Initial verification of OS parameters
* Make sure `img_format', `img_passwd' and `img_id' are passed
* If format is `diskdump', require the `img_properties` parameter
Nikos Skalkotos [Fri, 29 Jun 2012 09:16:34 +0000 (12:16 +0300)]
Make the name of image properties case-insensitive
Defining EXCLUDE_TASK_DeleteSSHKeys is the same as defining
EXCLUDE_TASK_DELETESSHKEYS
Nikos Skalkotos [Tue, 29 May 2012 15:37:37 +0000 (18:37 +0300)]
cleanup! cleanup! cleanup! cleanup!
* Change the monitor message type names once again (hope this is
the final version)
* Pass -u (unbuffered) to sed to retain the actual output order in
the log file
* Fix a bug in helper code where the starting `{' was missing from
the monitoring messages
Nikos Skalkotos [Tue, 29 May 2012 14:18:26 +0000 (17:18 +0300)]
Fix a bash bug introduced in
7836baffa680fe294f542
Nikos Skalkotos [Tue, 29 May 2012 13:55:14 +0000 (16:55 +0300)]
Abandon timelimit program in favor of timeout
The latter is part of gnu coreutils.
Nikos Skalkotos [Mon, 28 May 2012 14:20:02 +0000 (17:20 +0300)]
Cleanup monitoring code pt2
* Remove id field in the notifications (what was left)
* Make copy-monitor.py use the already opened pipe file descriptor
instead of reopening the file
* Let bash choose the file descriptor instead of specifying one when
opening the pipe file
Nikos Skalkotos [Fri, 25 May 2012 14:57:46 +0000 (17:57 +0300)]
Cleanup monitoring code
* Add nanoseconds field in timestamp
* Remove id field in the notifications
* Fix cleanup code
Nikos Skalkotos [Thu, 24 May 2012 14:08:46 +0000 (17:08 +0300)]
Add start-task and finish-task events
This commit extendes the monitoring mechanism to include events from
snf-image-helper.
Nikos Skalkotos [Thu, 24 May 2012 09:36:32 +0000 (12:36 +0300)]
Add monitoring event for errors in create
Nikos Skalkotos [Wed, 23 May 2012 12:24:56 +0000 (15:24 +0300)]
Remove dead code in common.sh
Nikos Skalkotos [Wed, 23 May 2012 10:10:38 +0000 (13:10 +0300)]
Fix a bug in FixPartitionTable task
Trying to add a logical swap partition after an already existing logical
partition triggered an error in parted, because between logical partitions
a gap of at least 1 sector needs to be present.
Nikos Skalkotos [Wed, 23 May 2012 09:16:12 +0000 (12:16 +0300)]
Add mechanism for monitoring snf-image events
Add a utility initially written by vkoukis for monitoring the image
copy. This utility outputs notifications to a named pipe. An external
program can get informed for the image deployment progress by reading
the notifications from this named pipe. The monitoring mechanism
will be extended in the future to have other snf-image subparts
output notification to this named pipe too.
Nikos Skalkotos [Mon, 21 May 2012 10:34:10 +0000 (13:34 +0300)]
Fix version typo in ChangeLog
Nikos Skalkotos [Thu, 17 May 2012 14:21:27 +0000 (17:21 +0300)]
Update ChangeLog and configure for v0.4
Nikos Skalkotos [Thu, 17 May 2012 13:35:38 +0000 (16:35 +0300)]
Remove enable-pithos-support option
snf-image will detect at runtime if pithos backend is installed
Nikos Skalkotos [Thu, 17 May 2012 12:31:18 +0000 (15:31 +0300)]
Add mechanism for using a custom unattend.xml
snf-image-helper by default uses it's own version of unattend.xml file,
but if UNATTEND variable is specified then it will use the one provided
by snf-image-host.
Nikos Skalkotos [Tue, 15 May 2012 13:52:59 +0000 (16:52 +0300)]
Add support for GUID partition tables
Nikos Skalkotos [Tue, 15 May 2012 10:09:14 +0000 (13:09 +0300)]
Fix a bug introduced in
01da0f7d58e0bf30f06755d802
Fix a bug where the partition that should be resized in some cases
was computed in a wrong way
Nikos Skalkotos [Fri, 11 May 2012 14:44:50 +0000 (17:44 +0300)]
Add AddSwap task
This task is used to set up the swap partition previously created by
FixPartitionTable task and to add a swap entry in the instances fstab
file.
Nikos Skalkotos [Fri, 11 May 2012 08:28:46 +0000 (11:28 +0300)]
Remove the progress-monitor-support flag
snf-image-host will make use the external progress monitor program
if the PROGRESS_MONITOR variable is not empty. This way progress
monitor can be enable or disabled by just overwriting the aforementioned
variable in the defaults file.
Nikos Skalkotos [Thu, 10 May 2012 14:32:34 +0000 (17:32 +0300)]
Remove redundant normalize_unit function
Nikos Skalkotos [Wed, 9 May 2012 16:01:23 +0000 (19:01 +0300)]
Add swap partition if SWAP property is defined
Nikos Skalkotos [Wed, 2 May 2012 13:06:03 +0000 (16:06 +0300)]
Create a package list file after every debootstrap
This file is used to check if the cache file contains every package
defined in HELPER_EXTRA_PKGS.
Nikos Skalkotos [Tue, 3 Apr 2012 14:32:57 +0000 (17:32 +0300)]
Fix a bug introduced in
b126203ef9946d23a176fc3583
The interface in get_last_partition function in the helpers common.sh
has changed but not all needed tasks where updated.
Nikos Skalkotos [Fri, 30 Mar 2012 16:25:02 +0000 (19:25 +0300)]
Add support for logical partitions
Now FixPartitionTable task can enlarge logical partitions
Nikos Skalkotos [Thu, 29 Mar 2012 15:43:01 +0000 (18:43 +0300)]
Update ChangeLog and configure for version 0.3.6
Nikos Skalkotos [Thu, 29 Mar 2012 14:04:46 +0000 (17:04 +0300)]
In update-helper ask before using a cache file
* If -y is not specified and a cache file is found, ask the user before
using it.
* "Fix" the -c option's behaviour. With this commit, if -c is applied,
the system will use the provided cache file if present and will do a
debootstrap if the file does not exist. The result of debootstrap will
be saved in the default cache file provided by the HELPER_CACHE_FILE
variable. This way, we do not need to provide an extra "disable cache
file option". One can run the program with -c "" to get this behaviour.
Nikos Skalkotos [Mon, 26 Mar 2012 17:17:10 +0000 (20:17 +0300)]
Update configure.ac and ChangeLogs for v0.3.5
Nikos Skalkotos [Mon, 26 Mar 2012 17:07:10 +0000 (20:07 +0300)]
Force automatic updates in windows
Update the windows registry in Unattend.xml to force an automatic
Windows Update
Nikos Skalkotos [Mon, 5 Mar 2012 16:02:59 +0000 (18:02 +0200)]
Update configure.ac and ChangeLogs for v0.3.4
Nikos Skalkotos [Mon, 5 Mar 2012 15:39:26 +0000 (17:39 +0200)]
Fix a bug in DeleteSSHKeys task.
This bug was introduced in commit
88262dba that added pipefail bash
option to all configuration tasks
Nikos Skalkotos [Wed, 29 Feb 2012 08:46:20 +0000 (10:46 +0200)]
Update configure.ac and ChangeLogs for v0.3.3
Giorgos Verigakis [Fri, 17 Feb 2012 13:24:56 +0000 (15:24 +0200)]
Bugfix, truncate to size
Nikos Skalkotos [Tue, 14 Feb 2012 13:53:43 +0000 (15:53 +0200)]
Add a partition table check in FixPartitionTable
Nikos Skalkotos [Tue, 14 Feb 2012 13:50:48 +0000 (15:50 +0200)]
Output the error helper VM returns