From 6116a4107bc2050a429c295b405e2d57e0cba898 Mon Sep 17 00:00:00 2001 From: Michael Elkins Date: Fri, 17 Feb 2012 01:49:39 +0000 Subject: new script for reseting the labuser* accounts on rpki.net svn path=/branches/tk161/; revision=4348 --- rpkid/portal-gui/scripts/rpkigui-reset-demo.py | 38 ++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 rpkid/portal-gui/scripts/rpkigui-reset-demo.py (limited to 'rpkid/portal-gui/scripts/rpkigui-reset-demo.py') diff --git a/rpkid/portal-gui/scripts/rpkigui-reset-demo.py b/rpkid/portal-gui/scripts/rpkigui-reset-demo.py new file mode 100644 index 00000000..e910ab28 --- /dev/null +++ b/rpkid/portal-gui/scripts/rpkigui-reset-demo.py @@ -0,0 +1,38 @@ +# Copyright (C) 2012 SPARTA, Inc. a Parsons Company +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND SPARTA DISCLAIMS ALL WARRANTIES WITH +# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +# AND FITNESS. IN NO EVENT SHALL SPARTA BE LIABLE FOR ANY SPECIAL, DIRECT, +# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE +# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +# PERFORMANCE OF THIS SOFTWARE. + +# normally this would be a module docstring, but since this script is +# prepending with django boilerplate, that doesn't work +description = """ +This script is used to reset all of the labuser* accounts on demo.rpki.net back +to a state suitable for a new workshop. It removes all ROAs and Ghostbuster +issued by the labuser accounts. + +""" + +__version__ = '$Id$' + +from optparse import OptionParser +import logging +from rpki.gui.app.models import ROARequest, GhostbusterRequest + +if __name__ == '__main__': + parser = OptionParser(description=description) + (options, args) = parser.parse_args() + + for n in xrange(1, 32): + username = 'labuser%02d' % n + logging.info('removing objects for ' + username) + for cls in (ROARequest, GhostbusterRequest): + cls.objects.filter(issuer__handle=username).delete() -- cgit v1.2.3 From 4fa5b2f1db752697d4acc2364dafb5e6e1b67d47 Mon Sep 17 00:00:00 2001 From: Michael Elkins Date: Fri, 17 Feb 2012 02:03:21 +0000 Subject: end range should be 33 since it is not inclusive add output to give feedback svn path=/branches/tk161/; revision=4349 --- rpkid/portal-gui/scripts/rpkigui-reset-demo.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'rpkid/portal-gui/scripts/rpkigui-reset-demo.py') diff --git a/rpkid/portal-gui/scripts/rpkigui-reset-demo.py b/rpkid/portal-gui/scripts/rpkigui-reset-demo.py index e910ab28..4158079b 100644 --- a/rpkid/portal-gui/scripts/rpkigui-reset-demo.py +++ b/rpkid/portal-gui/scripts/rpkigui-reset-demo.py @@ -24,15 +24,13 @@ issued by the labuser accounts. __version__ = '$Id$' from optparse import OptionParser -import logging from rpki.gui.app.models import ROARequest, GhostbusterRequest if __name__ == '__main__': parser = OptionParser(description=description) (options, args) = parser.parse_args() - - for n in xrange(1, 32): + for n in xrange(1, 33): username = 'labuser%02d' % n - logging.info('removing objects for ' + username) + print 'removing objects for ' + username for cls in (ROARequest, GhostbusterRequest): cls.objects.filter(issuer__handle=username).delete() -- cgit v1.2.3 From c639e1b79b0fbd3b835f8f060de13414a6677095 Mon Sep 17 00:00:00 2001 From: Michael Elkins Date: Fri, 17 Feb 2012 02:05:37 +0000 Subject: delete objects through the irdb.models rather than the proxy models, to avoid issue with cascade deletes not working via proxy models svn path=/branches/tk161/; revision=4350 --- rpkid/portal-gui/scripts/rpkigui-reset-demo.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'rpkid/portal-gui/scripts/rpkigui-reset-demo.py') diff --git a/rpkid/portal-gui/scripts/rpkigui-reset-demo.py b/rpkid/portal-gui/scripts/rpkigui-reset-demo.py index 4158079b..38b878ea 100644 --- a/rpkid/portal-gui/scripts/rpkigui-reset-demo.py +++ b/rpkid/portal-gui/scripts/rpkigui-reset-demo.py @@ -24,7 +24,7 @@ issued by the labuser accounts. __version__ = '$Id$' from optparse import OptionParser -from rpki.gui.app.models import ROARequest, GhostbusterRequest +from rpki.irdb.models import ROARequest, GhostbusterRequest if __name__ == '__main__': parser = OptionParser(description=description) -- cgit v1.2.3 From f019d9705c298883207627300ffee90c7ef0764e Mon Sep 17 00:00:00 2001 From: Michael Elkins Date: Fri, 17 Feb 2012 17:53:14 +0000 Subject: also refresh the rescert cache svn path=/branches/tk161/; revision=4353 --- rpkid/portal-gui/scripts/rpkigui-reset-demo.py | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) (limited to 'rpkid/portal-gui/scripts/rpkigui-reset-demo.py') diff --git a/rpkid/portal-gui/scripts/rpkigui-reset-demo.py b/rpkid/portal-gui/scripts/rpkigui-reset-demo.py index 38b878ea..acfddabd 100644 --- a/rpkid/portal-gui/scripts/rpkigui-reset-demo.py +++ b/rpkid/portal-gui/scripts/rpkigui-reset-demo.py @@ -12,9 +12,7 @@ # OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR # PERFORMANCE OF THIS SOFTWARE. -# normally this would be a module docstring, but since this script is -# prepending with django boilerplate, that doesn't work -description = """ +""" This script is used to reset all of the labuser* accounts on demo.rpki.net back to a state suitable for a new workshop. It removes all ROAs and Ghostbuster issued by the labuser accounts. @@ -23,14 +21,14 @@ issued by the labuser accounts. __version__ = '$Id$' -from optparse import OptionParser -from rpki.irdb.models import ROARequest, GhostbusterRequest +from rpki.irdb.models import ROARequest, GhostbusterRequest, ResourceHolderCA +from rpki.gui.app.glue import list_received_resources -if __name__ == '__main__': - parser = OptionParser(description=description) - (options, args) = parser.parse_args() - for n in xrange(1, 33): - username = 'labuser%02d' % n - print 'removing objects for ' + username - for cls in (ROARequest, GhostbusterRequest): - cls.objects.filter(issuer__handle=username).delete() +for n in xrange(1, 33): + username = 'labuser%02d' % n + print 'removing objects for ' + username + for cls in (ROARequest, GhostbusterRequest): + cls.objects.filter(issuer__handle=username).delete() + print '... updating resource certificate cache' + conf = ResourceHolderCA.objects.get(handle=username) + list_received_resources(sys.stdout, conf) -- cgit v1.2.3