Parker Berberian [Mon, 3 Dec 2018 18:38:37 +0000 (13:38 -0500)]
BUG FIX: Properly decodes ssh public keyfile
Because of how Python3 changed how it handled strings,
the byte string read from the user's keyfile was not directly
serializable. This decodes the bytes into a unicode string, assuming UTF-8 encoding.
Change-Id: I5f723a61fb577fa6d4e76e701ef529521ab389ba
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Tue, 20 Nov 2018 16:19:55 +0000 (11:19 -0500)]
Fixed Misc Bugs
Some corner cases that cause issues recently came to our attention.
Fixes issues in the booking workflow and the Notification system.
Change-Id: Ie16118ba1bdbeff86bb41a16dc783337b921d527
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Tue, 20 Nov 2018 16:19:55 +0000 (11:19 -0500)]
Fix all flake8 errors
The flake8 command in test.sh finds no longer finds any errors.
This may form a basis of a jenkins verify job as a sort of 'weak compile-time checks'
The flake8 command will not complain about line length, and will not complain about
django's manage.py file
Change-Id: Ic47cb4fc7ada55e64485661ab6881aef475018ff
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Trevor Bramwell [Wed, 7 Nov 2018 22:05:28 +0000 (22:05 +0000)]
Merge "Rewrite Notification subsystem"
Parker Berberian [Wed, 24 Oct 2018 19:12:32 +0000 (15:12 -0400)]
Rewrite Notification subsystem
In this commit:
- delete a lot of really bad and / or unused code
- redesign a much simpler Notification model
- create and send notifications to the user's inbox on booking start & end
- migrations
- emails user when booking is ready and when it ends
Not in this commit:
- Creating notifications from lab messages
- warning messages when a booking is about to end
- creating "summary" notifications when e.g. a booking has been fulfilled by a lab
Change-Id: I69b4dc36c3f2bce76d810106baadeef5a562cc7d
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Trevor Bramwell [Thu, 1 Nov 2018 23:18:47 +0000 (23:18 +0000)]
Merge "Restrict Postgres to version 10"
Trevor Bramwell [Wed, 31 Oct 2018 21:35:30 +0000 (21:35 +0000)]
Merge "Improved Collaborators UX"
Trevor Bramwell [Wed, 31 Oct 2018 21:34:59 +0000 (21:34 +0000)]
Merge "Fixes for access creation and removal"
Trevor Bramwell [Wed, 31 Oct 2018 21:34:13 +0000 (21:34 +0000)]
Merge "Fixed Indentation"
Trevor Bramwell [Wed, 31 Oct 2018 21:34:01 +0000 (21:34 +0000)]
Merge "Hides information about your booking from other users"
Trevor Bramwell [Wed, 31 Oct 2018 21:33:07 +0000 (21:33 +0000)]
Merge "Fix Booking List"
Parker Berberian [Mon, 29 Oct 2018 16:53:09 +0000 (12:53 -0400)]
Fixed Indentation
This is a pretty complex html file that we will have to modify soon,
so I made sure that every tag is opened and closed at the correct height.
The correct height for a tag is 4 spaces more indented than its parent
Change-Id: Ie356b61746477f65304f38c019f471e5cae1aa94
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Fri, 26 Oct 2018 15:43:48 +0000 (11:43 -0400)]
Improved Collaborators UX
Some small improvements based on feedback from Trevor.
- Changed lable from "users" to "collaborators" to try and be more clear
- Do not show your own name in the dropdown by default
- You cannot select yourself as a collaborator
Change-Id: Ie2e9070232765ed9eabe6657924ed8addaa0165a
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Fri, 26 Oct 2018 14:52:14 +0000 (10:52 -0400)]
Hides information about your booking from other users
If a user is not the owner or a collaborator on a booking,
they should be kept from seeing the booking detail page which may
contain credentials, etc from the lab fulfilling the booking.
Change-Id: I27c383a0e1d017b5d02a7c9a37676f6a968c9270
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Fri, 26 Oct 2018 14:41:44 +0000 (10:41 -0400)]
Forces hostnames to not be empty
Previously, when a host was 'added' but not given a hostname, it was
excluded from the list of hosts sent to the backend for processing.
By explicitly adding each host to the result, we avoid this and
force the checking of an empty hostname (which will correctly fail).
Change-Id: Ia533bc23baf558a5e297dab629dbf47fb4704d7f
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Trevor Bramwell [Wed, 24 Oct 2018 22:36:59 +0000 (15:36 -0700)]
Restrict Postgres to version 10
Postgres 11 was just released and the images does not yet support
automatic data upgrades. Restricting it to 10 should keep users from
running into issues when using/testing the dashboard.
Change-Id: I7758cb01b5c6c0c75166536fc0d99277995d5da0
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
Parker Berberian [Tue, 23 Oct 2018 20:11:36 +0000 (16:11 -0400)]
Fixes for access creation and removal
Fixes include:
- creating ssh access jobs for users with ssh keys
- ensuring vpn access is revoked after booking ends
Creates ssh access jobs with the user's ssh keys, if they exist
Change-Id: Ia2e9f0c5a2f90b45732a5767a62b87a5a5492b94
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 24 Oct 2018 14:04:41 +0000 (10:04 -0400)]
Fix Booking List
The table that lists all active bookings at /booking/list/
was using booking.user. This doesn't exist anymore, changed to booking.owner
Change-Id: I76c8d498f4dbe64d88c4c6f7b5e380559b125e44
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Tue, 23 Oct 2018 19:57:46 +0000 (19:57 +0000)]
Merge "Fix Missing Static Assets"
Parker Berberian [Tue, 23 Oct 2018 19:53:07 +0000 (19:53 +0000)]
Merge "Fixed serialization"
Parker Berberian [Tue, 23 Oct 2018 19:52:54 +0000 (19:52 +0000)]
Merge "Fix error in Booking cleanup task"
Parker Berberian [Tue, 23 Oct 2018 19:52:45 +0000 (19:52 +0000)]
Merge "Fix clear_delta() function"
Parker Berberian [Tue, 23 Oct 2018 19:52:35 +0000 (19:52 +0000)]
Merge "Added template"
Parker Berberian [Tue, 23 Oct 2018 19:52:17 +0000 (19:52 +0000)]
Merge "Fix Typo"
Parker Berberian [Tue, 23 Oct 2018 19:52:06 +0000 (19:52 +0000)]
Merge "Adds migrations"
Trevor Bramwell [Tue, 23 Oct 2018 17:52:31 +0000 (10:52 -0700)]
Fix Missing Static Assets
collectstatic copies the static assets to STATIC_ROOT (which is set to
'/static'), instead of the static directory under pharos_dashboard.
Updating the static volume, which is served from NGINX to include these
files should fix the missing assets.
Change-Id: I19288e9825c1513684e4ee5f8a9542b1a0ceeeb1
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
Parker Berberian [Mon, 22 Oct 2018 14:42:02 +0000 (10:42 -0400)]
Fixed serialization
There was no need to serialize he dict ourselves.
JsonResponse wants to recieve a dict.
Change-Id: I2af1d9d8f0ccec4644e64ffce0de6005773be786
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Fri, 19 Oct 2018 14:35:29 +0000 (10:35 -0400)]
Fix error in Booking cleanup task
added a missing function call that was causing celery to fail to clean up Jobs.
Change-Id: I07a5e576d3dfcac320be206cc3235d17d4b286e0
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 17 Oct 2018 17:34:56 +0000 (13:34 -0400)]
Fix clear_delta() function
NetworkConfig.clear_delta() appeared to be a noop, but can set the delta to
a nonempty string if delta is None.
This reverts a change I made here: https://gerrit.opnfv.org/gerrit/#/c/63385/6..7/dashboard/src/api/models.py
Change-Id: I72661ca9d889801fb6183943c8ae0e5e38cc960a
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 17 Oct 2018 17:15:00 +0000 (13:15 -0400)]
Added template
This template should not have been removed.
Change-Id: Ic794ee40f45bd44af6fa976983b1c93660c8bb1c
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 17 Oct 2018 15:37:01 +0000 (11:37 -0400)]
Fix Typo
In one of the patchsets of LaaS 2.0 a typo was added.
Change-Id: I02ff24bea345279df6643c0b1a4358ab2eff1d31
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 17 Oct 2018 15:33:45 +0000 (11:33 -0400)]
Adds migrations
In reviewing the LaaS 2.0 code, models were changed without the accompanying migrations.
Change-Id: Ibdba456d9650c7d7d8750328852f27866a899328
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Mon, 15 Oct 2018 18:03:26 +0000 (14:03 -0400)]
Removed references to old code
With the LaaS 2.0 rewrite, there was still some old/dead/broken code being referenced.
This patch fixes that.
Change-Id: I25803652bc59bba1e416e526d205742c52f14a65
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 10 Oct 2018 20:06:47 +0000 (16:06 -0400)]
Lab as a Service 2.0
See changes here:
https://wiki.opnfv.org/display/INF/Pharos+Laas
Change-Id: I59ada5f98e70a28d7f8c14eab3239597e236ca26
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Trevor Bramwell [Fri, 5 Oct 2018 23:05:20 +0000 (16:05 -0700)]
Development Override Compose File
Now that images are built and hosted for the dashboard and worker
container the compose file can reference upstream images instead of
ones locally built.
A second compose file is added which overrides compose configuration so
that images are built locally.
Initial commands for running the container are moved into 'init.sh'
which gets copied into the image, since the current images cannot be ran
by themselves as they require the command listed in the compose file.
The compose version bumped from 2 to 3 as there are no version 2
specific features being used that need to be modified.
Change-Id: I23813a859a676ba009cba8f5a62b7153da006eef
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
Trevor Bramwell [Sat, 6 Oct 2018 00:00:45 +0000 (17:00 -0700)]
Update Postgres Usage
Setting POSTGRES_{DB,USER,PASSWORD} variables removes the need to volume
mount the script for specifying the user and database.
Change-Id: I7ee958c8d36702d1afd701e026b642ac84440ee8
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
Trevor Bramwell [Mon, 1 Oct 2018 17:28:17 +0000 (10:28 -0700)]
Use Upstream Rabbitmq Docker Container
The upstream rabbitmq container supports specifying the default admin
user and password through the environment variables:
RABBITMQ_DEFAULT_USER and RABBITMQ_DEFAULT_PASS.
Utilizing these variables removes the need to build a rabbitmq container
specific to the Pharos LaaS Dashboard.
Change-Id: I390d7fa9254a0f28b374235254caff59b219cd87
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
Trevor Bramwell [Mon, 1 Oct 2018 16:59:50 +0000 (09:59 -0700)]
Bump Python Cryptography Library Version
The underlying OpenSSL version changed in an upstream container which
cryptography==1.4 did not support. Bumping the cryptography library
fixes the build as they introduce broader support for OpenSSL versions
in their newer releases.
Change-Id: Ibd2f73aefebb39cc4121b77fa38aecb32b8494ae
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
wutianwei [Fri, 20 Jul 2018 01:31:43 +0000 (09:31 +0800)]
change ',' to '.' in settings.py
Change-Id: I4f4a3419eef2aba407d772b39be62214b6b7142e
Signed-off-by: wutianwei <wutianwei1@huawei.com>
Parker Berberian [Fri, 13 Apr 2018 18:49:48 +0000 (18:49 +0000)]
Merge "Limit User Booking Length and Extensions"
Parker Berberian [Fri, 13 Apr 2018 18:24:29 +0000 (18:24 +0000)]
Merge "Gracefully Handle Missing Jenkins Utilization for Dev Pod"
Sawyer Bergeron [Mon, 26 Mar 2018 21:07:55 +0000 (17:07 -0400)]
Implement Booking Cleanup Task
Jira: PHAROS-344
Two new settings in config.env allow setting
1) how "stale" an expired booking can get before being culled and
2) how many expired bookings are kept around before culling
If either condition is met, expired bookings will be deleted until
both are false.
Change-Id: I6b091e93c6fe5d47b75ebf5325b717fa898c773c
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Sawyer Bergeron [Tue, 6 Mar 2018 17:07:05 +0000 (12:07 -0500)]
Gracefully Handle Missing Jenkins Utilization for Dev Pod
Jira: PHAROS-364
Change-Id: I0641c658914e600672151d7c0d1661acba794f0f
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Sawyer Bergeron [Mon, 26 Feb 2018 22:52:25 +0000 (17:52 -0500)]
Limit User Booking Length and Extensions
Jira: PHAROS-363
Bookings can now only be 3 weeks upon creation with a maximum of 2
1 week extensions.
Change-Id: I677770de3f62f188d23e60be6d71b42b25bf007e
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Parker Berberian [Wed, 28 Feb 2018 15:05:26 +0000 (15:05 +0000)]
Merge "Allow Configuring 'DEFAULT_EMAIL_FROM' in Django"
Trevor Bramwell [Tue, 27 Feb 2018 23:00:46 +0000 (15:00 -0800)]
Allow Configuring 'DEFAULT_EMAIL_FROM' in Django
This sets the default 'FROM' address in the header of outgoing emails
from the system. Making this configurable allows users to specify the
address notification emails come from.
Change-Id: Ibe229ef503847411f4879d5715392f816a455733
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
Sawyer Bergeron [Thu, 22 Feb 2018 21:18:56 +0000 (16:18 -0500)]
Link AUP from dashboard
Jira: PHAROS-361
Link and associated text below booking confirmation button now
direct users to Wiki#AUP and inform them that they agree to those
policies by continuing.
Change-Id: I18953cc71691a03290cbce979fbf500081ca3c10
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Parker Berberian [Mon, 19 Feb 2018 21:17:12 +0000 (21:17 +0000)]
Merge "Provide Interface for Booking Deletion"
Sawyer Bergeron [Tue, 13 Feb 2018 22:53:56 +0000 (17:53 -0500)]
Provide Interface for Booking Deletion
Jira: PHAROS-355
User can now delete their own booking by going to the detail view of their booking
and clicking 'delete'
Change-Id: I279da364c2a5dfd03b877d1236c610d0fef563bc
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Parker Berberian [Mon, 19 Feb 2018 20:58:15 +0000 (20:58 +0000)]
Merge "Expose Limited User Info Through API"
Parker Berberian [Mon, 19 Feb 2018 20:54:11 +0000 (20:54 +0000)]
Merge "Remove the Booking Notification Cleanup Task"
Parker Berberian [Mon, 19 Feb 2018 20:52:28 +0000 (20:52 +0000)]
Merge "Remove RSA Files from Repo"
Sawyer Bergeron [Fri, 16 Feb 2018 20:50:22 +0000 (15:50 -0500)]
Expose Limited User Info Through API
Jira: PHAROS-362
Exposes info such as username and user email throught the API to facilitate
better backend integration
Change-Id: I8948f399000ffe41d5b75941f4a4195caaea91f4
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Sawyer Bergeron [Thu, 15 Feb 2018 21:05:37 +0000 (16:05 -0500)]
Change opsys Label to Operating System
Jira: PHAROS-360
This makes the booking UI more intuitive by clarifying a field
Change-Id: Ic7806e72a1ab94d650064c2c8e8820853385c356
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Parker Berberian [Mon, 12 Feb 2018 14:21:00 +0000 (14:21 +0000)]
Merge "Ensure DEBUG is set as a Boolean"
Parker Berberian [Mon, 12 Feb 2018 14:20:52 +0000 (14:20 +0000)]
Merge "Use userprofile.email_addr in User List"
Trevor Bramwell [Fri, 9 Feb 2018 19:08:55 +0000 (11:08 -0800)]
Ensure DEBUG is set as a Boolean
Since os.environ only allows strings DEBUG needs to be converted.
Assigning DEBUG to the comparison of the strings is enough to get the
correct value out.
Change-Id: Ie104d2fc5de5906ad2830c5ed7cff3b1c0fda3c5
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
Trevor Bramwell [Fri, 9 Feb 2018 19:08:55 +0000 (11:08 -0800)]
Pull DEBUG Var From Environment
This is explictily set in settings.py and can't be changed without
modifying the file.
Change-Id: If2f06e25857e15405470254731f17765619f369a
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
Sawyer Bergeron [Fri, 9 Feb 2018 17:02:44 +0000 (12:02 -0500)]
Use userprofile.email_addr in User List
Jira: None
User List view in dashboard now uses the generally populated userprofile.email_addr
field instead of user.email
Change-Id: I1585ddf3cde293d33351a2ea036aa0a343fdd8b1
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Trevor Bramwell [Fri, 2 Feb 2018 21:37:23 +0000 (13:37 -0800)]
Remove the Booking Notification Cleanup Task
These are created by the notification django-app, but that app is no
longer used or installed.
This change should also keep the worker container from continuously
restarting.
Change-Id: Ifbdf15e7011375f3818179048ec6be4a83a53917
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
Trevor Bramwell [Fri, 2 Feb 2018 21:31:13 +0000 (13:31 -0800)]
Remove RSA Files from Repo
Since these are in the .gitignore file they shouldn't be in the repo.
Change-Id: Iaf4da94863d4edf10bdce924d33023ca2d679c64
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
Parker Berberian [Wed, 31 Jan 2018 17:33:27 +0000 (17:33 +0000)]
Merge "Add User-ID Field in Booking API Serializer"
Sawyer Bergeron [Thu, 18 Jan 2018 21:01:07 +0000 (16:01 -0500)]
Add User-ID Field in Booking API Serializer
Jira: None
Change-Id: I217cf26b078461fa2300ee666bd4c2775c62316b
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Sawyer Bergeron [Wed, 10 Jan 2018 16:44:23 +0000 (11:44 -0500)]
Add Nullable Lab Field to Resources
Jira: PHAROS-347
Resources are now possible to associate with lab instances upon creation
Change-Id: Id8abbcc448a6d840d55e4bf5130dbec22c8bc58f
Sawyer Bergeron [Fri, 5 Jan 2018 21:07:13 +0000 (16:07 -0500)]
Implement Booking Modification Interface
Jira: PHAROS-330
Users can change start date if it has not already occurred, and
can change end date, purpose, and both installer and scenario.
Standard checks apply similar to when initially creating a booking.
Change-Id: Ibae7fe91a58bd6e0741db065265c05c3823bdc27
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Jack Morgan [Tue, 9 Jan 2018 18:47:24 +0000 (18:47 +0000)]
Merge "Create Lab Model"
Sawyer Bergeron [Tue, 9 Jan 2018 15:12:20 +0000 (10:12 -0500)]
Fixes for Recent Merge
Jira: None
In a recent large merge, some code was lost in translation.
This commit fixes a missing line in requirements.txt and
removes a couple lines in dispatchers.py that lost relevance.
Change-Id: I5ddf67fc1da6df40f84d60668cd59e6a1975912d
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Sawyer Bergeron [Tue, 9 Jan 2018 15:38:23 +0000 (10:38 -0500)]
Create Lab Model
Jira: PHAROS-346
Allows admin to instantiate lab instances
Change-Id: I67f8ceb3bc76d4cdd09fb6f3a0b715af312f6f83
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Jack Morgan [Tue, 9 Jan 2018 00:13:33 +0000 (00:13 +0000)]
Merge "Adds missing Password workflow metadata"
Jack Morgan [Tue, 9 Jan 2018 00:13:27 +0000 (00:13 +0000)]
Merge "Skeleton for Apex Support"
Jack Morgan [Tue, 9 Jan 2018 00:13:19 +0000 (00:13 +0000)]
Merge "Experimental Compass Support"
Jack Morgan [Tue, 9 Jan 2018 00:13:15 +0000 (00:13 +0000)]
Merge "Experimental JOID Support"
Jack Morgan [Tue, 9 Jan 2018 00:13:13 +0000 (00:13 +0000)]
Merge "Experimental Fuel Support"
Jack Morgan [Tue, 9 Jan 2018 00:13:08 +0000 (00:13 +0000)]
Merge "Allows for manual addition of bookings"
Jack Morgan [Tue, 9 Jan 2018 00:12:59 +0000 (00:12 +0000)]
Merge "Adds update workflow"
Jack Morgan [Tue, 9 Jan 2018 00:12:54 +0000 (00:12 +0000)]
Merge "Adds workflows to deploy and clean hosts"
Jack Morgan [Tue, 9 Jan 2018 00:12:49 +0000 (00:12 +0000)]
Merge "Adds Credential Manipulation"
Jack Morgan [Tue, 9 Jan 2018 00:12:40 +0000 (00:12 +0000)]
Merge "Adds ability to capture and image hosts"
Jack Morgan [Tue, 9 Jan 2018 00:12:35 +0000 (00:12 +0000)]
Merge "Added sensor and rules"
Jack Morgan [Tue, 9 Jan 2018 00:12:25 +0000 (00:12 +0000)]
Merge "Initial Commit for new LaaS Software"
Jack Morgan [Mon, 8 Jan 2018 23:59:01 +0000 (23:59 +0000)]
Merge "Add .gitignore and .gitreview"
Jack Morgan [Mon, 8 Jan 2018 23:56:29 +0000 (23:56 +0000)]
Merge "Implement Notification Framework with Initial Email Support"
Jack Morgan [Mon, 8 Jan 2018 23:56:21 +0000 (23:56 +0000)]
Merge "Add Dashboard OS Selection Menu on Booking"
Sawyer Bergeron [Fri, 15 Dec 2017 19:35:40 +0000 (14:35 -0500)]
Implement Notification Framework with Initial Email Support
JIRA: None
Notification/notifier objects are now created with title,
content, sender, associated resource, and recipient and there is
now support for emails at the very least to be sent as notifications.
Change-Id: I456cf0e901d9a1e2a1e7d187dcc03d28fca003fb
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Fatih Degirmenci [Wed, 20 Dec 2017 22:40:56 +0000 (23:40 +0100)]
Add .gitignore and .gitreview
Change-Id: Ia4a79ed3e0712b22cb1cb57d9dc718bec6eb2020
Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
Parker Berberian [Wed, 20 Dec 2017 18:46:10 +0000 (13:46 -0500)]
Adds missing Password workflow metadata
JIRA: None
Adds missing password workflow metadata.
Previous commit missed the password_workflow.yaml file that
describes the password workflow
Change-Id: I8e9b8efda9ec7c4565680e6a7edcae7bb883ae60
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 18:44:02 +0000 (13:44 -0500)]
Skeleton for Apex Support
JIRA: None
Plumbing for the automatic installation of Apex.
Doesn't actually do anything yet.
Change-Id: I5c83fdd89d0b8a0a70b2f513b20a649de030a575
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 18:41:41 +0000 (13:41 -0500)]
Experimental Compass Support
JIRA: None
Very basic compass support.
Just runs the compass ./quickstart.sh script
Change-Id: I8ddb1aab83ae20c1eae997b6e5cd637ec4dcfed1
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 18:37:25 +0000 (13:37 -0500)]
Experimental JOID Support
JIRA: None
Adds experimental support for automatically installing joid.
Only works with virtual deployments currently.
Change-Id: I4536c694c0008f9a5537a89b00871bc6a05301db
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 18:34:13 +0000 (13:34 -0500)]
Experimental Fuel Support
JIRA: None
Adds a workflow and actions that (tries to) install fuel.
Currently only works with virtual deployments.
Change-Id: Iac18fbd5df6ed262e623feb627ac58ec43f0a66d
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 18:30:31 +0000 (13:30 -0500)]
Allows for manual addition of bookings
JIRA: None
The added action takes a booking id from the dashboard and manually adds it
to the list of bookings it tracks. This allows us to have a much easier transition
to using a fully automated system after manually tracking all bookings.
Change-Id: I83ebe2a4aabad2ce7d59b3d80659fc6438fda7f4
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 18:26:23 +0000 (13:26 -0500)]
Adds update workflow
JIRA: None
Adds a workflow and code that installs the chosen operating system on
a free host, updates it, and captures the new disk image.
This ensures that when we provision a new host, it is relatively up to date.
Change-Id: I553e4c8c1715add47ebfe7d853f884f242813ab2
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 18:21:16 +0000 (13:21 -0500)]
Adds workflows to deploy and clean hosts
JIRA: PHAROS-322
JIRA: PHAROS-333
Adds the workflows that deploy a host on the start of a booking
and cleans the host at the end of the booking automatically.
Change-Id: Ice1477df5caf12386402528c4e59637bf0f46670
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 18:13:34 +0000 (13:13 -0500)]
Adds Credential Manipulation
JIRA: PHAROS-327
Adds password_workflow, which sets a random password on the given host
and stores it encrypted in the datastore.
Also provides the actions to create and delete vpn users. Access information
is stored encrypted in the datastore.
Once the dashboard has email capabilities, we can automatically send out this info
and not have to store it. At the moment though, we have no other way to automatically
generate it and still be able to (manually) pass that info to the developer who books the pod.
Change-Id: I3e4fcfef748f20878bd7603f8ed1a0c7557c0763
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 18:04:12 +0000 (13:04 -0500)]
Adds ability to capture and image hosts
JIRA: PHAROS-322
Adds the action metadata files, action code, and workflow definitions
that allows us to image a selected host with any disk image or operating system.
For example, to install ubuntu on host "pod4", run
st2 run pharoslaas.fog_imageWorkflow host=pod4 os=ubuntu
Change-Id: I9cb0bf031f19313b3b9ad6c5e3ed11dff4ea2039
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 17:55:28 +0000 (12:55 -0500)]
Added sensor and rules
JIRA: PHAROS-318
Adds pharos.py which talks with the pharos dashboard to detect when bookings
are created and stores the needed information in the stackstorm datastore.
By default, the sensor will poll the dashboard every 30 seconds to check for changes.
The dashboard sensor will dispatch the triggers defined in dashboard_listener.yaml.
The rules in rules/* links the triggers thrown by the api sensor to workflows which will
do the work of deploying / cleaning the hosts.
Change-Id: I7411a16ebbb48739a8f1f5b924dea6493c400071
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Parker Berberian [Wed, 20 Dec 2017 17:48:17 +0000 (12:48 -0500)]
Initial Commit for new LaaS Software
JIRA: PHAROS-318
The old code I had in here was super beta and no good. I reworked the code
to use Stackstorm instead of trying to roll my own automation services.
This commit adds a README, install scripts, and the skeleton of a stackstorm
pack
Change-Id: Ia1c0c29e23316ad0e635c9c181c9a68fdacee664
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Jack Morgan [Thu, 14 Dec 2017 01:20:51 +0000 (01:20 +0000)]
Merge "Add Boolean Option for Dev Pod in API"
Jack Morgan [Thu, 14 Dec 2017 01:19:21 +0000 (01:19 +0000)]
Merge "Fix Gitignore for Oauth Keys"
Jack Morgan [Thu, 14 Dec 2017 01:18:58 +0000 (01:18 +0000)]
Merge "Integrate Initial Email Support"