Feature #849

snf-admin should be made as a simple web interface

Added by Faidon Liambotis over 12 years ago. Updated over 12 years ago.

Status:Closed Start date:07/17/2011
Priority:High Due date:
Assignee:Giorgos Verigakis % Done:

100%

Category:Admin Spent time: -
Target version:v0.6.2

Description

Changes such as the ones that can be made in the snf-admin command-line tool, should be possible via a simple web interface, since people doing such changes may not always have console access. Nothing fancy or RESTful, just a plain ol' Django app that can do some changes. Perhaps even the Django admin interface could suffice (which currently can't work).


Related issues

related to Synnefo - Feature #995: Admin tool to collect and display statistics from the Syn... Assigned 08/04/2011 11/11/2011

Associated revisions

Revision 1f06d8ff
Added by Giorgos Verigakis over 12 years ago

Initial import of the admin web interface

Refs #849

Revision f5c6e3f4
Added by Giorgos Verigakis over 12 years ago

Add some Ganeti stats on admin home

Refs #849
Refs #995

Revision 4416efc0
Added by Giorgos Verigakis over 12 years ago

Add metadata support in image tab

Refs #849

Revision 89ea9dbc
Added by Giorgos Verigakis over 12 years ago

Add user deletion support

Fixes #849

Revision 5f75e534
Added by Giorgos Verigakis over 12 years ago

Add user deletion support

Fixes #849

Revision 4dddae29
Added by Giorgos Verigakis over 12 years ago

Add metadata support in image tab

Refs #849

Revision 17852fe9
Added by Giorgos Verigakis over 12 years ago

Add some Ganeti stats on admin home

Refs #849
Refs #995

Revision 3f94a1ae
Added by Giorgos Verigakis over 12 years ago

Initial import of the admin web interface

Refs #849

Revision df641826
Added by Giorgos Verigakis over 12 years ago

Fix bug that prevented images from being listed

Refs #849

Revision 811a68f5
Added by Giorgos Verigakis over 12 years ago

Admin UI improvements

  • Add a banner
  • Append a link to user and server in images_info

Refs #849

Revision d1ceb341
Added by Giorgos Verigakis over 12 years ago

Be more verbose for multiple choices attributes

Refs #849

Revision 92ebf9c9
Added by Giorgos Verigakis over 12 years ago

Add some notes about the admin tools

Refs #849

Revision 53d1692a
Added by Giorgos Verigakis over 12 years ago

Fix banner placement

Refs #849

Revision e1f81736
Added by Giorgos Verigakis over 12 years ago

Admin web interface improvements

  • Require format on image register
  • Log all actions that modify the DB

Refs #849

Revision 42e7c590
Added by Giorgos Verigakis over 12 years ago

Admin web interface improvements

  • Require format on image register
  • Log all actions that modify the DB

Refs #849

Revision 337f8ac3
Added by Giorgos Verigakis over 12 years ago

Fix banner placement

Refs #849

Revision 9999b451
Added by Giorgos Verigakis over 12 years ago

Add some notes about the admin tools

Refs #849

Revision 870c24a0
Added by Giorgos Verigakis over 12 years ago

Admin improvements

  • Flavors use the deleted flag instead of deleting the object.
  • SynnefoUsers use the DELETED state instead of deleting the object.
  • Object lists do not show deleted objects.

Refs #849
Refs #1055

Revision 89c358a3
Added by Giorgos Verigakis over 12 years ago

Add state filters in the admin web interface

Refs #849

History

#1 Updated by Vangelis Koukis over 12 years ago

  • Category set to Admin
  • Status changed from New to Assigned
  • Assignee set to Giorgos Verigakis
  • Priority changed from Medium to Low
  • Target version set to v0.7

#2 Updated by Vangelis Koukis over 12 years ago

  • Target version changed from v0.7 to v0.5.5

The web app initially should be en par with the current snf-admin command-line tool.

Whenever new functionality gets implemented in the logic layer, both the command-line and the web-based interface will be updated to support it.

#3 Updated by Vangelis Koukis over 12 years ago

  • Priority changed from Low to High

#4 Updated by Vangelis Koukis over 12 years ago

Also, both the command-line and the web tool should produce an initial, overall, dashboard-like view with vital system stats.

For the command-line tool, explore the addition of a "stats" category.
For the web-based tool, explore the addition of an initial dashboard-like display.

The stats could include total number of VMs, number of users, backend Disk (free/used/total), backend Memory (free/used/total), distribution of VMs per Image, number of users, number of total invitations, perhaps a top-10 of invitation senders, and other links to custom infrastructure. The backend numbers can be retrieved over RAPI.

#5 Updated by Giorgos Verigakis over 12 years ago

A first implementation has been submitted to the admin branch (visible at /admin). However we need a way to restrict access to everything under /admin in order to be able to go into production.

#6 Updated by Giorgos Verigakis over 12 years ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100

#7 Updated by Kostas Papadimitriou over 12 years ago

  • Target version changed from v0.5.5 to v0.6

#8 Updated by Vangelis Koukis over 12 years ago

  • Status changed from Closed to Assigned

Looks nice, a few comments:

  • Return HTTP 403 instead of "Unauthorized" string.
  • Servers tab is unaligned, "Updated" field is wrapped incorrectly, Image field is empty.
  • snf-admin should report the types of users supported in the help text for snf-admin user modify --type
  • Please update README.admin and README.upgrade with documentation on the admin interface
  • Need to log meticulously throughout the admin webif

#9 Updated by Vangelis Koukis over 12 years ago

A few more things:

  • VERY IMPORTANT: Make sure to verify every deletion, since this can be disastrous with Django's cascading deletes. I accidentally a flavor, and all the VMs went away with it too.
  • This also applies to the snf-admin command line tool, the warning for deleting a user should apply almost everywhere [--force, etc].
  • it would be great if whenever a foreign key value is needed a combobox or some form of autocompletion was used, so the user may only input valid values.

#10 Updated by Vangelis Koukis over 12 years ago

Also:

  • there should be a way to see all Servers, deleted=True or not.
  • there should be a way to filter Servers [later, when we have custom Images, on Images too], initially based on the owner.
  • How many Servers may be displayed? Support for pagination?

#11 Updated by Vangelis Koukis over 12 years ago

Also:

  • image register operations should have a mandatory type argument, "dump", "ntfsclone" or otherwise. When the administrator registers a new image, he/she needs to specify its type. This applies both to the command-line and web admin tool.

#12 Updated by Giorgos Verigakis over 12 years ago

For future reference, Django 1.3 allows finer control of what happens when you delete rows that have foreign keys:

https://docs.djangoproject.com/en/1.3/ref/models/fields/#django.db.models.ForeignKey.on_delete

#13 Updated by Giorgos Verigakis over 12 years ago

  • Status changed from Assigned to Closed

#14 Updated by Giorgos Verigakis over 12 years ago

  • Status changed from Closed to Assigned

#15 Updated by Vangelis Koukis over 12 years ago

  • Target version changed from v0.6 to v0.6.1

#16 Updated by Vangelis Koukis over 12 years ago

  • Target version changed from v0.6.1 to v0.6.2

#17 Updated by Vangelis Koukis over 12 years ago

  • Target version changed from v0.6.2 to 67

#18 Updated by Vangelis Koukis over 12 years ago

  • Status changed from Assigned to Closed
  • Target version changed from 67 to v0.6.2

The functionality has been implemented and merged into master, closing ticket.

Also available in: Atom PDF