Statistics
| Branch: | Tag: | Revision:

root / logic @ 2bf8d695

# Date Author Comment
2bf8d695 08/31/2011 12:33 pm Vangelis Koukis

Minor pep8 fixes to logic/dispatcher.py

eee48215 08/31/2011 12:05 pm Vangelis Koukis

Improve logging and error reporting in callbacks

Add DEBUG-level logging and make exception reporting
more verbose in dispatcher callbacks.

d28244af 08/31/2011 11:45 am Vangelis Koukis

Improve logging in logic/dispatcher.py

  • Include file-based logging in /var/log/synnefo/dispatcher.log
    for the dispatcher in the default configuration.
  • Have the dispatcher redirect stdout and stderr file descriptors
    to the first file-based logfile....
05e404b8 08/30/2011 02:15 pm Giorgos Gousios

Don't retry forever to reconnect

34e68f04 08/30/2011 02:14 pm Giorgos Gousios

Error handling here adds nothing

190ac01d 08/29/2011 10:37 am Giorgos Gousios

A bit more well defined error messages

29053267 08/24/2011 01:23 pm Giorgos Gousios

Force the connection obj to re-initialize on error

When an error occurs to the AMQP connection, the code will automatically
attempt to re-establish the connection. Before this fix, it used the
same (stale) connection object. The fix deletes the object explicitely....

137523b0 08/23/2011 11:00 am Giorgos Gousios

Verbose exception in case of email queuing error

03caa5bf 08/22/2011 04:03 pm Giorgos Gousios

Method to set the auth token expiration programmatically

ad74e62d 07/29/2011 05:50 pm Nikos Skalkotos

Make dispatcher log to stderr when in debug mode

Add a logging handler to the dispatcher that sends logging output to
stderr when in debug mode (-d is enabled).

af90d919 07/25/2011 05:31 pm Vangelis Koukis

Allow ganeti-create-progress to exceed 100%

e6f5bb10 07/25/2011 04:45 pm Vangelis Koukis

Fix handling of ganeti-create-progress notifs

Fix handling of ganeti-create-progress notifications: * Fix typo * Fix logic dispatcher to properly log and survive exceptions thrown by
the logic layer when processing incoming notifications * Minor PEP8 fixes

c25cc9ec 07/25/2011 01:23 pm Vangelis Koukis

Update handling of 'ganeti-create-progress' notifs

Update handling of 'ganeti-create-progress' notification messages: * update format of 'ganeti-create-progress' notifications * update relevant unit test accordingly * numerous PEP8 fixes in logic and api test code

226f086a 07/21/2011 06:08 pm Giorgos Gousios

Move queue declaration to the dispatcher

Move queue declaration and initialization to the dispatcher since the dispatcher is the only consumer of this information.

Refs: #809

8a67cddc 07/21/2011 06:08 pm Giorgos Gousios

Don't trigger reconciliation for deleted/suspended VMs

698d0666 07/21/2011 06:08 pm Giorgos Gousios

Move queue initialization to its own method

...in order for other standalone commands (drain, purge, etc) to be able to use the
declared queues

9068cd85 07/21/2011 06:08 pm Giorgos Gousios

Process build progress update notifications

Catch build progress update messages from AMQP, process and store them in the database. Test to store the processing operations

Refs: #885

5eedb0e4 07/19/2011 05:07 pm Vangelis Koukis

Fix reference to inexistent setting

Fix reference to setting GANETI_OS_PROVIDER
which has been become part of GANETI_CREATEINSTANCE_KWARGS.

3d3c58d7 07/19/2011 03:50 pm Giorgos Gousios

Email related changes

-Use Django's DEFAULT_FROM_EMAIL configuration setting instead of custom setting
-Send invitations from the DEFAULT_FROM_EMAIL account

1c382247 07/17/2011 09:39 pm Vangelis Koukis

Make RAPI CreateInstance() arguments configurable

Make RAPI CreateInstance() arguments deployment-specific.
Add the GANETI_CREATEINSTANCE_KWARGS setting, which allows the administrator
to set arbitrary arguments to RAPI CreateInstance().

Also add initial version of README.Upgrade, detailing...

cf8482f2 07/17/2011 01:20 pm Giorgos Verigakis

Improve user support

  • Use logic functions when possible
  • Add user invite command

Refs #827

5c614d83 07/13/2011 03:32 pm Vangelis Koukis

Merge branch 'api-current'

95aee02c 07/13/2011 03:28 pm Vangelis Koukis

Add unit tests for process_op_status()

Add unit tests for all supported code paths in
logic/backend.py:process_op_status(), for the various notifications
of type 'ganeti-op-status'.

Also catch the exception raised when a ganeti-op-status notification
contains an opcode not handled by Synnefo.

093f9c53 07/13/2011 02:04 pm Vangelis Koukis

Handle removing machines in ERROR properly

Set the VM deleted flag when receiving a failure notification for a Ganeti
OP_INSTANCE_REMOVE operation, if the server is in ERROR state, since no
corresponding Ganeti instance backend exists in this case. Fixes #799.

960c15e0 07/13/2011 11:37 am Giorgos Gousios

Only receive OP messages for the specific BACKEND_PREFIX

Also a minor correction in the debugging queue output

937ac8bf 07/11/2011 04:35 pm Vangelis Koukis

Update yet again README.deploy for vncauthproxy

Include complete information on installing vncauthproxy and
building Debian packages.

246516df 07/11/2011 03:29 pm Vangelis Koukis

Merge branch 'api-current'

Conflicts:
invitations/invitations.py

f31dd9f4 07/11/2011 03:03 pm Vangelis Koukis

Merge branch 'faidon/misc-fixes'

Conflicts:
settings.d/50-invitations.conf

daeb288f 07/11/2011 02:05 pm Giorgos Gousios

Don't start the DEBUG queue when DEBUG mode is off

f08150b3 07/11/2011 01:29 pm Giorgos Gousios

Merge branch 'api-current' of https://code.grnet.gr/git/synnefo into api-current

f2bdb9ab 07/11/2011 01:29 pm Giorgos Gousios

Use log.exception to report exceptions

c626e1d0 07/11/2011 01:28 pm Giorgos Gousios

Progress reporting on queue draining

e639edf9 07/11/2011 01:27 pm Giorgos Gousios

Default log configuration: syslog on Linux

Refs: #779

4d713480 07/11/2011 12:02 pm Vangelis Koukis

Make Ganeti disk template a configurable setting

Make the disk template to use for Ganeti instances (e.g., 'plain'
or 'drbd') a configurable setting in settings.d/20-api.conf,
fixes #777.

9544c82f 07/11/2011 11:21 am Vangelis Koukis

Set hv parameter serial_console=False explicitly

Be explicit about Synnefo-controlled instances having
hypervisor parameter serial_console set to False, so that the
RAPI GetInstanceConsole() call returns consoles of kind 'vnc',
fixes #785.

71099804 07/11/2011 11:03 am Vangelis Koukis

Remove RAPI GetInstanceConsole() call

Remove RAPI GetInstanceConsole() call, because it returns a
potentially unusable endpoint based on cluster-wide vnc_bind_address,
usually 0.0.0.0 or 127.0.0.1. Until this is fixed on the Ganeti side,
we construct a console info reply based on the primary node and network...

6efeecee 07/07/2011 09:23 pm Faidon Liambotis

logic: import settings properly

Instead of importing synnefo.settings directly, import settings from
django.conf as it should.

4d9e5ad0 07/07/2011 05:09 pm Giorgos Gousios

Merge branch 'api-current' of https://code.grnet.gr/git/synnefo into api-current

d028ab18 07/07/2011 05:08 pm Giorgos Gousios

Handle and log system exceptions on invitation send

f90c3d8c 07/07/2011 04:54 pm Vangelis Koukis

Make server deletion complete asynchronously

Make server deletion complete asynchronously, by only setting
the deleted flag for an instance of the VirtualMachine model when
an OP_INSTANCE_REMOVE operation completes successfully at the backend.

This means that DELETE /servers/id returns HTTP 204, the server...

61868190 07/07/2011 04:30 pm Vangelis Koukis

Enforce flavor-specified disk size for new VMs

Enforce the flavor-specified disk size when creating a new VM.
Introduce the new IGNORE_FLAVOR_DISK_SIZES setting, which makes the API always
create VMs with 4GB or 14GB disks.
This is useful in development deployments where disk space is scarce.

583bfaa0 07/07/2011 04:15 pm Giorgos Gousios

More robust email sending

-Synchronous send message function returns Boolean to indicate success or failure
-Queued emails that were not sent are not removed from the queue

9f8ad4c5 07/06/2011 04:06 pm Giorgos Gousios

Configurable number of invitations per invitation level

Refs: #439

d5470cdd 07/05/2011 02:12 pm Giorgos Gousios

Fix minor error in variable naming

e6209aa2 07/05/2011 01:57 pm Giorgos Gousios

Dispatcher support for draining queues

Refs: #719

979482ce 07/04/2011 04:43 pm Giorgos Gousios

Introduce queue mgmt functions

Introduces the following three commands to the dispatcher, used to process queue declarations and stale messages

--purge-queues
--purge-exchanges
--drain-queue (not fully implemented yet)

Refs: #719

cf0e4232 07/01/2011 05:42 pm Vangelis Koukis

Development: Allocate a 14GB disk for Windows VMs

bd0a9536 07/01/2011 04:17 pm Vangelis Koukis

Merge branch 'ui-0.5'

0d2c6fc3 07/01/2011 12:47 pm Giorgos Gousios

Merge branch 'api-current' into helpdesk-gui

2469a9ce 07/01/2011 12:45 pm Vangelis Koukis

Merge branch 'api-current' into ui-0.5

2da5f785 07/01/2011 12:43 pm Giorgos Verigakis

Make the dispatcher refresh on tag updates

Make a dummy ModifyInstance call when changing instance
tags in order to force process_net_status to be called on
the dispatcher.

98f36397 07/01/2011 11:32 am Giorgos Gousios

Logging configuration for the rapi logger

cff877fc 07/01/2011 10:43 am Vangelis Koukis

Merge branch 'api-current' into ui-0.5

Conflicts:
logic/dispatcher.py

85c6267a 07/01/2011 10:32 am Giorgos Gousios

Merge branch 'api-current' into helpdesk-gui

Conflicts:
aai/shibboleth.py

2ad02eee 06/30/2011 08:20 pm Giorgos Gousios

Merge branch 'api-current' of https://code.grnet.gr/git/synnefo into api-current

4ed2e471 06/30/2011 08:17 pm Giorgos Gousios

Fix problem with python-daemon incompatibilities

python-daemon 1.6 changed the way it handles pidfile imports so going
back to 1.5.5 (included in Debian squeeze) breaks the dispatcher.
Document the exact dependencies in deployment and ci files.

d8c8ebd0 06/30/2011 06:59 pm Christos Psaltis

Correct import from pidlockfile

d1387ed7 06/30/2011 06:36 pm Christos Psaltis

Merge remote-tracking branch 'origin/api-current' into ui-0.5

Conflicts:
api/util.py
logic/backend.py

658a825a 06/30/2011 06:25 pm Giorgos Verigakis

Use a default firewall profile on public networks

Uses settings.DEFAULT_FIREWALL_PROFILE in case an instance has no firewall tags defined.

Refs #659

ace4bd5d 06/30/2011 06:24 pm Giorgos Gousios

License headers for various files

refs #581

904df519 06/30/2011 06:24 pm Giorgos Gousios

Make pid file setting work for real

Create a pid file outside the daemon context, make sure it is deleted on
shutdown, offer option to set it from the cmdline

888355d1 06/30/2011 06:24 pm Giorgos Gousios

Move logging configuration to a module

2a0f327d 06/30/2011 06:24 pm Giorgos Gousios

Configuration for syslog, app-wide logging

513f8715 06/30/2011 06:24 pm Giorgos Gousios

Change configuration to print logs to the console

60d6a13b 06/30/2011 06:20 pm Giorgos Gousios

Take care of pidfile generation

7da1827f 06/30/2011 06:20 pm Giorgos Gousios

Daemonization + externally configured logging

3e65ce89 06/30/2011 06:06 pm Giorgos Verigakis

Merge branch 'api-current' of https://code.grnet.gr/git/synnefo into api-current

9b5b718a 06/30/2011 05:04 pm Giorgos Verigakis

Use a default firewall profile on public networks

Uses settings.DEFAULT_FIREWALL_PROFILE in case an instance has no firewall tags defined.

Refs #659

9541b89d 06/30/2011 04:46 pm Giorgos Gousios

Change configuration to print logs to the console

37ca953f 06/30/2011 04:24 pm Christos Psaltis

Merge remote-tracking branch 'origin/api-current' into ui-0.5

Conflicts:
logic/backend.py

77184fa1 06/30/2011 04:19 pm Giorgos Gousios

Merge branch 'logging' into api-current

Conflicts:
logic/backend.py

efff6193 06/30/2011 04:14 pm Giorgos Verigakis

Update firewall profile in the callback

Refs #527

746c6bf4 06/30/2011 03:41 pm Vangelis Koukis

Extend net notifications to include IPv6 addresses

Include support for autogenerated public IPv6 addresses,
extend the logic layer accordingly:

  • Extend the Synnefo Ganeti hook to include autogenerated
    IPv6 addresses in ganeti-net-status notifications over AMQP....
f040c416 06/30/2011 03:41 pm Vangelis Koukis

Use iallocator for CreateInstance() RAPI call

Do not specify the Ganeti node in CreateInstance() RAPI calls,
allow Ganeti to use an iallocator to determine instance placement.
Also make minor PEP8-related fixes to logic/callbacks.py.

c4367587 06/30/2011 03:30 pm Vangelis Koukis

Use iallocator for CreateInstance() RAPI call

Do not specify the Ganeti node in CreateInstance() RAPI calls,
allow Ganeti to use an iallocator to determine instance placement.
Also make minor PEP8-related fixes to logic/callbacks.py.

9cb903f9 06/29/2011 01:15 pm Vangelis Koukis

Extend net notifications to include IPv6 addresses

Include support for autogenerated public IPv6 addresses,
extend the logic layer accordingly:

  • Extend the Synnefo Ganeti hook to include autogenerated
    IPv6 addresses in ganeti-net-status notifications over AMQP....
33e00f02 06/28/2011 03:42 pm Giorgos Gousios

Per user invitation limits

refs: #705

0bc9e367 06/28/2011 10:27 am Giorgos Gousios

Merge branch 'api-current' into helpdesk-gui

Conflicts:
settings.py.dist

26563957 06/24/2011 06:10 pm Giorgos Verigakis

Add a PROTECTED firewall profile

Refs #659

2252a338 06/23/2011 10:24 am Giorgos Gousios

Replace custom email send code with Django's mailer

Thanks to [faidon] for the tip

32c20e24 06/21/2011 02:46 pm Giorgos Gousios

Merge branch 'api-current' into helpdesk-gui

a191bd4d 06/21/2011 01:07 pm Giorgos Verigakis

Merge branch 'master' of https://code.grnet.gr/git/synnefo into api-current

Conflicts:
api/images.py
api/networks.py
contrib/ganeti-hooks/kvm-vif-bridge
db/fixtures/images.json
db/models.py
logic/backend.py
logic/tests.py
settings.py.dist
tools/cloud

91826390 06/20/2011 03:32 pm Giorgos Verigakis

Add initial support for firewall profiles

Refs #659

c718de42 06/20/2011 12:54 pm Giorgos Gousios

Configuration for syslog, app-wide logging

f13691b3 06/20/2011 11:22 am Giorgos Gousios

Move logging configuration to a module

de081774 06/17/2011 04:43 pm Giorgos Gousios

Make pid file setting work for real

Create a pid file outside the daemon context, make sure it is deleted on
shutdown, offer option to set it from the cmdline

48130e66 06/17/2011 01:10 pm Giorgos Gousios

License headers for various files

refs #581

4dc0b46a 06/17/2011 01:02 pm Giorgos Gousios

Take care of pidfile generation

adee02b8 06/17/2011 12:48 am Giorgos Verigakis

Add proper license headers

dd0e2b2d 06/14/2011 03:08 pm Giorgos Gousios

Support for creating one-off user tokens

57d0082a 06/10/2011 09:52 am Giorgos Gousios

Daemonization + externally configured logging

f533f224 06/03/2011 04:35 pm Vangelis Koukis

Merge branches api-current and ui-0.4, minor fixes

Merge branches api-current and ui-0.4: * Fix merge conflicts * Fix minor bug in reconciliation mgmt command * Add comments in settings.py.dist * minor PEP8 fixes

e1cb42fe 06/03/2011 02:51 pm Vangelis Koukis

Merge branch 'images-0.4'

db7a3230 06/03/2011 02:46 pm Vangelis Koukis

Merge branch 'reconcilation'

a1dccf43 06/01/2011 06:42 pm Vangelis Koukis

Improve handling of ganeti-net-status messages

Improve construction and processing of ganeti-net-status notifications.
Fail with an informative exception if an invalid link value is specified
in a ganeti-net-status notification.

This shouldn't happen normally. It is usually the result of an administrator...

76a429fb 06/01/2011 05:23 pm Giorgos Gousios

Reconciliation command documentation + config options

882c0c1f 06/01/2011 04:36 pm Giorgos Gousios

Resolve forgoten conflict, some documentation

06a16b24 06/01/2011 02:08 pm Giorgos Verigakis

Use snf_null as the default link

4331aa1f 06/01/2011 01:14 pm Giorgos Gousios

Use the simpler amqp_connection mechanism

464a3579 06/01/2011 12:55 pm Giorgos Gousios

License header and a bit of documentation