pharos-tools.git
5 years agoFix Missing Static Assets 23/63923/1
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>
5 years agoFixed serialization 77/63877/1
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>
5 years agoFix error in Booking cleanup task 77/63777/1
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>
5 years agoFix clear_delta() function 73/63673/1
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>
5 years agoAdded template 71/63671/2
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>
5 years agoFix Typo 67/63667/1
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>
5 years agoAdds migrations 65/63665/1
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>
5 years agoRemoved references to old code 35/63535/1
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>
5 years agoLab as a Service 2.0 85/63385/7
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>
5 years agoDevelopment Override Compose File 19/63219/3
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>
5 years agoUpdate Postgres Usage 23/63223/1
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>
5 years agoUse Upstream Rabbitmq Docker Container 81/63081/1
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>
5 years agoBump Python Cryptography Library Version 79/63079/1
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>
5 years agochange ',' to '.' in settings.py 25/60025/1
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>
6 years agoMerge "Limit User Booking Length and Extensions"
Parker Berberian [Fri, 13 Apr 2018 18:49:48 +0000 (18:49 +0000)]
Merge "Limit User Booking Length and Extensions"

6 years agoMerge "Gracefully Handle Missing Jenkins Utilization for Dev Pod"
Parker Berberian [Fri, 13 Apr 2018 18:24:29 +0000 (18:24 +0000)]
Merge "Gracefully Handle Missing Jenkins Utilization for Dev Pod"

6 years agoImplement Booking Cleanup Task 97/54497/3
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>
6 years agoGracefully Handle Missing Jenkins Utilization for Dev Pod 71/53171/3
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>
6 years agoLimit User Booking Length and Extensions 87/52687/2
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>
6 years agoMerge "Allow Configuring 'DEFAULT_EMAIL_FROM' in Django" stable/fraser
Parker Berberian [Wed, 28 Feb 2018 15:05:26 +0000 (15:05 +0000)]
Merge "Allow Configuring 'DEFAULT_EMAIL_FROM' in Django"

6 years agoAllow Configuring 'DEFAULT_EMAIL_FROM' in Django 83/52783/1
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>
6 years agoLink AUP from dashboard 81/52481/1
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>
6 years agoMerge "Provide Interface for Booking Deletion"
Parker Berberian [Mon, 19 Feb 2018 21:17:12 +0000 (21:17 +0000)]
Merge "Provide Interface for Booking Deletion"

6 years agoProvide Interface for Booking Deletion 29/52129/4
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>
6 years agoMerge "Expose Limited User Info Through API"
Parker Berberian [Mon, 19 Feb 2018 20:58:15 +0000 (20:58 +0000)]
Merge "Expose Limited User Info Through API"

6 years agoMerge "Remove the Booking Notification Cleanup Task"
Parker Berberian [Mon, 19 Feb 2018 20:54:11 +0000 (20:54 +0000)]
Merge "Remove the Booking Notification Cleanup Task"

6 years agoMerge "Remove RSA Files from Repo"
Parker Berberian [Mon, 19 Feb 2018 20:52:28 +0000 (20:52 +0000)]
Merge "Remove RSA Files from Repo"

6 years agoExpose Limited User Info Through API 67/52267/1
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>
6 years agoChange opsys Label to Operating System 17/52217/1
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>
6 years agoMerge "Ensure DEBUG is set as a Boolean"
Parker Berberian [Mon, 12 Feb 2018 14:21:00 +0000 (14:21 +0000)]
Merge "Ensure DEBUG is set as a Boolean"

6 years agoMerge "Use userprofile.email_addr in User List"
Parker Berberian [Mon, 12 Feb 2018 14:20:52 +0000 (14:20 +0000)]
Merge "Use userprofile.email_addr in User List"

6 years agoEnsure DEBUG is set as a Boolean 73/51973/1
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>
6 years agoPull DEBUG Var From Environment 69/51969/1
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>
6 years agoUse userprofile.email_addr in User List 67/51967/1
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>
6 years agoRemove the Booking Notification Cleanup Task 13/51513/1
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>
6 years agoRemove RSA Files from Repo 09/51509/1
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>
6 years agoMerge "Add User-ID Field in Booking API Serializer"
Parker Berberian [Wed, 31 Jan 2018 17:33:27 +0000 (17:33 +0000)]
Merge "Add User-ID Field in Booking API Serializer"

6 years agoAdd User-ID Field in Booking API Serializer 99/50799/1
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>
6 years agoAdd Nullable Lab Field to Resources 71/50371/2
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

6 years agoImplement Booking Modification Interface 33/50133/4
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>
6 years agoMerge "Create Lab Model"
Jack Morgan [Tue, 9 Jan 2018 18:47:24 +0000 (18:47 +0000)]
Merge "Create Lab Model"

6 years agoFixes for Recent Merge 03/50303/2
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>
6 years agoCreate Lab Model 05/50305/2
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>
6 years agoMerge "Adds missing Password workflow metadata"
Jack Morgan [Tue, 9 Jan 2018 00:13:33 +0000 (00:13 +0000)]
Merge "Adds missing Password workflow metadata"

6 years agoMerge "Skeleton for Apex Support"
Jack Morgan [Tue, 9 Jan 2018 00:13:27 +0000 (00:13 +0000)]
Merge "Skeleton for Apex Support"

6 years agoMerge "Experimental Compass Support"
Jack Morgan [Tue, 9 Jan 2018 00:13:19 +0000 (00:13 +0000)]
Merge "Experimental Compass Support"

6 years agoMerge "Experimental JOID Support"
Jack Morgan [Tue, 9 Jan 2018 00:13:15 +0000 (00:13 +0000)]
Merge "Experimental JOID Support"

6 years agoMerge "Experimental Fuel Support"
Jack Morgan [Tue, 9 Jan 2018 00:13:13 +0000 (00:13 +0000)]
Merge "Experimental Fuel Support"

6 years agoMerge "Allows for manual addition of bookings"
Jack Morgan [Tue, 9 Jan 2018 00:13:08 +0000 (00:13 +0000)]
Merge "Allows for manual addition of bookings"

6 years agoMerge "Adds update workflow"
Jack Morgan [Tue, 9 Jan 2018 00:12:59 +0000 (00:12 +0000)]
Merge "Adds update workflow"

6 years agoMerge "Adds workflows to deploy and clean hosts"
Jack Morgan [Tue, 9 Jan 2018 00:12:54 +0000 (00:12 +0000)]
Merge "Adds workflows to deploy and clean hosts"

6 years agoMerge "Adds Credential Manipulation"
Jack Morgan [Tue, 9 Jan 2018 00:12:49 +0000 (00:12 +0000)]
Merge "Adds Credential Manipulation"

6 years agoMerge "Adds ability to capture and image hosts"
Jack Morgan [Tue, 9 Jan 2018 00:12:40 +0000 (00:12 +0000)]
Merge "Adds ability to capture and image hosts"

6 years agoMerge "Added sensor and rules"
Jack Morgan [Tue, 9 Jan 2018 00:12:35 +0000 (00:12 +0000)]
Merge "Added sensor and rules"

6 years agoMerge "Initial Commit for new LaaS Software"
Jack Morgan [Tue, 9 Jan 2018 00:12:25 +0000 (00:12 +0000)]
Merge "Initial Commit for new LaaS Software"

6 years agoMerge "Add .gitignore and .gitreview"
Jack Morgan [Mon, 8 Jan 2018 23:59:01 +0000 (23:59 +0000)]
Merge "Add .gitignore and .gitreview"

6 years agoMerge "Implement Notification Framework with Initial Email Support"
Jack Morgan [Mon, 8 Jan 2018 23:56:29 +0000 (23:56 +0000)]
Merge "Implement Notification Framework with Initial Email Support"

6 years agoMerge "Add Dashboard OS Selection Menu on Booking"
Jack Morgan [Mon, 8 Jan 2018 23:56:21 +0000 (23:56 +0000)]
Merge "Add Dashboard OS Selection Menu on Booking"

6 years agoImplement Notification Framework with Initial Email Support 03/49103/3
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>
6 years agoAdd .gitignore and .gitreview 23/49423/1
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>
6 years agoAdds missing Password workflow metadata 05/49405/1
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>
6 years agoSkeleton for Apex Support 03/49403/1
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>
6 years agoExperimental Compass Support 01/49401/1
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>
6 years agoExperimental JOID Support 99/49399/1
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>
6 years agoExperimental Fuel Support 97/49397/1
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>
6 years agoAllows for manual addition of bookings 95/49395/1
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>
6 years agoAdds update workflow 93/49393/1
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>
6 years agoAdds workflows to deploy and clean hosts 89/49389/1
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>
6 years agoAdds Credential Manipulation 87/49387/1
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>
6 years agoAdds ability to capture and image hosts 85/49385/1
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>
6 years agoAdded sensor and rules 81/49381/1
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>
6 years agoInitial Commit for new LaaS Software 79/49379/1
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>
6 years agoMerge "Add Boolean Option for Dev Pod in API"
Jack Morgan [Thu, 14 Dec 2017 01:20:51 +0000 (01:20 +0000)]
Merge "Add Boolean Option for Dev Pod in API"

6 years agoMerge "Fix Gitignore for Oauth Keys"
Jack Morgan [Thu, 14 Dec 2017 01:19:21 +0000 (01:19 +0000)]
Merge "Fix Gitignore for Oauth Keys"

6 years agoMerge "Integrate Initial Email Support"
Jack Morgan [Thu, 14 Dec 2017 01:18:58 +0000 (01:18 +0000)]
Merge "Integrate Initial Email Support"

6 years agoAdd Dashboard OS Selection Menu on Booking 25/48225/5
Sawyer Bergeron [Fri, 1 Dec 2017 17:11:12 +0000 (12:11 -0500)]
Add Dashboard OS Selection Menu on Booking

JIRA: PHAROS-326

Implement dropdown menu on pod booking page for user to
select base OS, as well as associated support in API and
pod status/booking status views

This patch includes the migration file mentioned by Parker Berbarian

Change-Id: I46a7b0e5e7020a89bc8fa0fe53c10bbda14a2e2d
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
6 years agoAdd Boolean Option for Dev Pod in API 53/48753/1
Sawyer Bergeron [Tue, 12 Dec 2017 19:29:52 +0000 (14:29 -0500)]
Add Boolean Option for Dev Pod in API

Change-Id: I4f0a0fc0ac5d81ae9454e6cece060032f9b806f7
JIRA: None

6 years agoIntegrate Initial Email Support 87/48487/2
Sawyer Bergeron [Wed, 6 Dec 2017 21:48:31 +0000 (16:48 -0500)]
Integrate Initial Email Support

JIRA: None

Integrate ability for users to change email presented to admins
with field initially filled with user's Jira associated email address
This amend takes into account a streamlining change
suggested by Parker Berbarian

Change-Id: I677ce669f200e5cad70c198737118f0b7925bac5
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
6 years agoMerge "Abstract Hard-Coded URLs to Config File"
Jack Morgan [Thu, 7 Dec 2017 19:39:00 +0000 (19:39 +0000)]
Merge "Abstract Hard-Coded URLs to Config File"

6 years agoFix Gitignore for Oauth Keys 75/48275/1
Sawyer Bergeron [Fri, 1 Dec 2017 20:37:17 +0000 (15:37 -0500)]
Fix Gitignore for Oauth Keys

JIRA: None

Gitignore file now properly ignores src/account/rsa.pem
and src/account/rsa.pub

Change-Id: I370a7d68cd2726540e4c7c294cc2de779f854f7a
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
6 years agoAbstract Hard-Coded URLs to Config File 09/46709/1
Sawyer Bergeron [Fri, 3 Nov 2017 18:36:19 +0000 (14:36 -0400)]
Abstract Hard-Coded URLs to Config File

JIRA: PHAROS-317

The Jenkins URL configuration now works the same as the Jira URL configuration,
with a base URL in the config.env file, with settings.py calculating the final URLs
to be used in adapter.py.

Change-Id: I79b4784ab39afdb789a24e4c0f1e8a3ae3566421
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
6 years agoAdd 'staticfiles' Template Tag to Base Template 95/44595/1
Trevor Bramwell [Mon, 9 Oct 2017 21:46:24 +0000 (14:46 -0700)]
Add 'staticfiles' Template Tag to Base Template

Without this tag the dashboard HTML will fail to render because it
doesn't have a reference to the 'static' template tag.

Change-Id: Id56d3b460dc848508c8ae549e7781ea876bdc52b
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
6 years agoServe the OPNFV Logo Locally 37/44137/1
Trevor Bramwell [Tue, 3 Oct 2017 19:21:12 +0000 (12:21 -0700)]
Serve the OPNFV Logo Locally

Because the logo is currently being pulled from an external HTTP site,
the site is being listed as insecure.

Adding the OPNFV logo to static content should fix the warning and keep
the previous error of the logo being moved from happening.

Change-Id: I13cf83aa612f5589e304699f808ff7b105611fc4
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
6 years agoRename pharos-dashboard and pharos-validator 15/42815/1
Trevor Bramwell [Fri, 22 Sep 2017 19:23:36 +0000 (12:23 -0700)]
Rename pharos-dashboard and pharos-validator

As subdirectories of the pharos-tools repo, there is little need to keep
the pharos prefix.

Change-Id: Ica3d79411f409df638647300036c0664183c2725
Signed-off-by: Trevor Bramwell <tbramwell@linuxfoundation.org>
6 years agoMerge "Adds various conveniences for hosters." stable/euphrates
Jack Morgan [Tue, 19 Sep 2017 23:28:01 +0000 (23:28 +0000)]
Merge "Adds various conveniences for hosters."

6 years agoMerge "Adds Experimental support for Joid"
Jack Morgan [Tue, 19 Sep 2017 23:27:58 +0000 (23:27 +0000)]
Merge "Adds Experimental support for Joid"

6 years agoMerge "Adds VPN Handler"
Jack Morgan [Tue, 19 Sep 2017 23:27:56 +0000 (23:27 +0000)]
Merge "Adds VPN Handler"

6 years agoMerge "Adds configuration files"
Jack Morgan [Tue, 19 Sep 2017 23:27:54 +0000 (23:27 +0000)]
Merge "Adds configuration files"

6 years agoMerge "Bash scripts for remote host deployment"
Jack Morgan [Tue, 19 Sep 2017 23:27:53 +0000 (23:27 +0000)]
Merge "Bash scripts for remote host deployment"

6 years agoMerge "Add Dashboard Listener"
Jack Morgan [Tue, 19 Sep 2017 23:27:51 +0000 (23:27 +0000)]
Merge "Add Dashboard Listener"

6 years agoMerge "Adds SQLite DataBase"
Jack Morgan [Tue, 19 Sep 2017 23:27:49 +0000 (23:27 +0000)]
Merge "Adds SQLite DataBase"

6 years agoMerge "Adds Fuel Installation Capability"
Jack Morgan [Tue, 19 Sep 2017 23:27:47 +0000 (23:27 +0000)]
Merge "Adds Fuel Installation Capability"

6 years agoMerge "Adds Libvirt Handler"
Jack Morgan [Tue, 19 Sep 2017 23:27:44 +0000 (23:27 +0000)]
Merge "Adds Libvirt Handler"

6 years agoMerge "Adds the Free and Open-source Ghost (FOG)"
Jack Morgan [Tue, 19 Sep 2017 23:27:39 +0000 (23:27 +0000)]
Merge "Adds the Free and Open-source Ghost (FOG)"

6 years agoMerge "LaaS Base functionality"
Jack Morgan [Tue, 19 Sep 2017 23:27:32 +0000 (23:27 +0000)]
Merge "LaaS Base functionality"

6 years agoMerge "Fix Booking API"
julien zhang [Mon, 11 Sep 2017 14:20:17 +0000 (14:20 +0000)]
Merge "Fix Booking API"

6 years agoAdds various conveniences for hosters.
Parker Berberian [Mon, 21 Aug 2017 13:50:22 +0000 (09:50 -0400)]
Adds various conveniences for hosters.

JIRA: N/A

Adds documentation, as well as:
source/stop.sh: stops the pharos listener and any running deployment
source/deploy.sh: manually starts a deployment on the given host

Patchset2: improved and updated README

Change-Id: I918ca3bdf03a32f7a16d851d7ea7ebc968d66720
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
6 years agoAdds Experimental support for Joid
Parker Berberian [Mon, 21 Aug 2017 13:47:46 +0000 (09:47 -0400)]
Adds Experimental support for Joid

JIRA: N/A

Adds a joid installer object, and needed configuration / scripts.

Currently, this only works with a no-ha scenario.

Change-Id: Ib3076d0341e47d3bebe89ae1b22e87547fe3f524
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
6 years agoAdds VPN Handler
Parker Berberian [Mon, 21 Aug 2017 13:45:02 +0000 (09:45 -0400)]
Adds VPN Handler

JIRA: N/A

adds a vpn handler in source/api/vpn.py
vpn.py contains a formal interface definition as well as a specific
implementation using LDAP. If your lab's vpn does not use LDAP, you may
create a new vpn handler that properly extends the abstract vpn class
and it should be fine.

Change-Id: I31e8d8477dfed913c4da864d3ff3b49e988d64b1
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
6 years agoAdds configuration files
Parker Berberian [Mon, 21 Aug 2017 13:42:28 +0000 (09:42 -0400)]
Adds configuration files

JIRA: N/A

Adds yaml files in conf/ to fit the laas software into your lab
infrastructure.
Each installer (Fuel, joid, etc) will also have their own config file,
which will point also to their own network and domain config file.

Change-Id: I0bcd57399b9f3f12aa351604fd03ae92de1ba93b
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>