laas.git
5 years agoFix landing page directions for not-logged-in users
Sawyer Bergeron [Fri, 4 Jan 2019 14:38:43 +0000 (09:38 -0500)]
Fix landing page directions for not-logged-in users

Users will see a more informative landing page that directs them to log
in if they have not yet done so, rather than displaying actions they can
not yet take and having a required login get triggered later

Change-Id: I9812367930665614933551f780f4c6726ff3049c
Signed-off-by: Sawyer Bergeron <sawyerbergeron@gmail.com>
5 years agoMerge "Changed Button style class to btn-primary"
Parker Berberian [Thu, 3 Jan 2019 20:09:42 +0000 (20:09 +0000)]
Merge "Changed Button style class to btn-primary"

5 years agoChanged Button style class to btn-primary
Parker Berberian [Wed, 2 Jan 2019 22:54:24 +0000 (17:54 -0500)]
Changed Button style class to btn-primary

btn-primary has a handful of advantages over btn-default, including
consistency across browsers and correctly styling non-button
html tags

p.s. vim is best

Change-Id: I6e55a75a9fd48d64496fd83f43a7856af0c04cc0
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoAlert users that ssh key is required
Sawyer Bergeron [Thu, 3 Jan 2019 19:39:47 +0000 (14:39 -0500)]
Alert users that ssh key is required

Any users that have not uploaded an ssh key will see a message on the
landing page that they need to upload one. Message is not seen by people
who have already uploaded a key

Change-Id: I01667e161521d801090173d47815abbeff094907
Signed-off-by: Sawyer Bergeron <sawyerbergeron@gmail.com>
5 years agoMerge "Improve cleanup of hosts after booking"
Parker Berberian [Thu, 3 Jan 2019 19:23:29 +0000 (19:23 +0000)]
Merge "Improve cleanup of hosts after booking"

5 years agoMerge "Removes log button in deployment"
Parker Berberian [Thu, 3 Jan 2019 19:23:18 +0000 (19:23 +0000)]
Merge "Removes log button in deployment"

5 years agoMerge "Requires a Jumphost per POD"
Parker Berberian [Thu, 3 Jan 2019 19:23:05 +0000 (19:23 +0000)]
Merge "Requires a Jumphost per POD"

5 years agoMerge "Cleaning up look and feel"
Parker Berberian [Thu, 3 Jan 2019 19:17:36 +0000 (19:17 +0000)]
Merge "Cleaning up look and feel"

5 years agoCleaning up look and feel
Sawyer Bergeron [Thu, 3 Jan 2019 13:55:06 +0000 (08:55 -0500)]
Cleaning up look and feel

Network step is now much prettier

Change-Id: I72487e3a5f30e4c0339734674c53d4661f9c0104
Signed-off-by: Sawyer Bergeron <sawyerbergeron@gmail.com>
5 years agoDisable Edit Buttons
Sawyer Bergeron [Thu, 3 Jan 2019 17:51:51 +0000 (12:51 -0500)]
Disable Edit Buttons

Edit buttons are currently not functional due to major changes in how
the workflow works, so this commit disables them for the time being to
avoid confusion

Change-Id: I62dddbc25267e9da55c503b48fed4f05cea97c22
Signed-off-by: Sawyer Bergeron <sawyerbergeron@gmail.com>
5 years agoMerge "Implement Segmented Workflows"
Parker Berberian [Thu, 3 Jan 2019 16:09:13 +0000 (16:09 +0000)]
Merge "Implement Segmented Workflows"

5 years agoRequires a Jumphost per POD
Parker Berberian [Thu, 3 Jan 2019 15:49:29 +0000 (10:49 -0500)]
Requires a Jumphost per POD

It was assumed but never enforced that each pod configuration
elects at least one host as the "jumphost". This commit
makes that a requirement when creating a configuration.

Change-Id: If55f1aa231b3cba8713f325f158796d85466b02a
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoImplement Segmented Workflows
Sawyer Bergeron [Fri, 14 Dec 2018 21:05:47 +0000 (16:05 -0500)]
Implement Segmented Workflows

A major source of bugs has been how we've approached inlining
workflows. We no longer inline them as of this commit, and instead
use a stack structure. This commits the result of workflows to the
database before other workflows try to read them, so we don't have
to maintain a code path for when something is or isn't committed
to db.

This patchset allows for workflows to pass limited information
to preset selections

Change-Id: I3d040c7f3024c7420017ae4ec66a23219303dcb6
Signed-off-by: Sawyer Bergeron <sawyerbergeron@gmail.com>
5 years agoRemoves log button in deployment
Parker Berberian [Wed, 2 Jan 2019 21:51:35 +0000 (16:51 -0500)]
Removes log button in deployment

We had a button that would barf up XML logs for development
but forgot to disable it for the live dashboard

Change-Id: I1061ba967f077a103a7e1ae61d60d81cd9e4c443
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoQuick fix for dictionary access
Parker Berberian [Wed, 2 Jan 2019 21:33:37 +0000 (16:33 -0500)]
Quick fix for dictionary access

the line .labs needed to be changed to ['labs']

Change-Id: I6d2aa2eca0413186ddf482aba7f01e4e53c0265b
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoAdded missing migration file
Parker Berberian [Wed, 2 Jan 2019 19:57:06 +0000 (14:57 -0500)]
Added missing migration file

Change-Id: I7582360e3e5522cf06798200f80e5585864e945e
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoImprove cleanup of hosts after booking
Parker Berberian [Wed, 2 Jan 2019 18:59:39 +0000 (13:59 -0500)]
Improve cleanup of hosts after booking

Previously, the database query was not reliably detecting
hosts which were to be released and made available
for new bookings. This should now take all bookings that
are over and have been cleaned by the lab, and make the
hosts available for reuse.

Change-Id: I040c2e02ac48d7bfde3fc1cf6bac4e59a48c8933
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoMerge "Abstract Out Inline CSS for Account Views"
Parker Berberian [Wed, 2 Jan 2019 15:22:55 +0000 (15:22 +0000)]
Merge "Abstract Out Inline CSS for Account Views"

5 years agoMerge "Removed document.open()"
Parker Berberian [Wed, 2 Jan 2019 14:38:37 +0000 (14:38 +0000)]
Merge "Removed document.open()"

5 years agoMerge "Fixes creation of ssh access job"
Parker Berberian [Wed, 2 Jan 2019 14:38:24 +0000 (14:38 +0000)]
Merge "Fixes creation of ssh access job"

5 years agoMerge "Renders Pod Destriptor File earlier"
Parker Berberian [Wed, 2 Jan 2019 14:38:04 +0000 (14:38 +0000)]
Merge "Renders Pod Destriptor File earlier"

5 years agoRenders Pod Destriptor File earlier
Parker Berberian [Fri, 9 Nov 2018 16:10:03 +0000 (11:10 -0500)]
Renders Pod Destriptor File earlier

Currently, the PDF is rendered 'on-demand' every time you
visit the booking detail page. This change renders the pdf once
and saves it in the booking model. Advantages:
- saves computation of re-rendering pdf constantly
- fixes issue where pdf fails to render after booking expires

Change-Id: I58d20fadce088d78ebd22f1d6f67cab371823542
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoRemoved document.open()
Parker Berberian [Fri, 21 Dec 2018 18:32:00 +0000 (13:32 -0500)]
Removed document.open()

Some versions of some browsers dont play nice with a document.open() and document.write(),
So I am manipulating the DOM manually instead of writing the response itself.

Change-Id: Ib852be55dfcb4e360a5cfd89e5e3e2b845d6322a
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoFixes creation of ssh access job
Parker Berberian [Fri, 21 Dec 2018 15:55:13 +0000 (10:55 -0500)]
Fixes creation of ssh access job

Minor changes that allows the ssh job to be created.
Django model creation can become very complex when you
go beyond the model.object.create() method, and this
just fixes the order of operations.

Change-Id: I811f26149365067bdd15f2466f8ba9211c3ef901
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoMerge "Force Lab Selection on POD Creation"
Parker Berberian [Wed, 19 Dec 2018 14:50:26 +0000 (14:50 +0000)]
Merge "Force Lab Selection on POD Creation"

5 years agoAbstract Out Inline CSS for Account Views
Sawyer Bergeron [Tue, 4 Dec 2018 20:30:42 +0000 (15:30 -0500)]
Abstract Out Inline CSS for Account Views

Change-Id: I2da02fa7865b618c583d15cca9ef256c62f19286
Signed-off-by: Sawyer Bergeron <sawyerbergeron@gmail.com>
5 years agoForce Lab Selection on POD Creation
Parker Berberian [Fri, 14 Dec 2018 15:31:34 +0000 (10:31 -0500)]
Force Lab Selection on POD Creation

Currently, a user can leave the "Define Hardware" step without choosing
which lab thier pod should be at. This causes errors later in the
pod creation process.

This commit forces one lab to be selected before they can leave the first step.

Change-Id: I7315bc8781ebeb66bcd32fdba30535100b59a3ff
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoChecks Sub Project Leads
Parker Berberian [Fri, 14 Dec 2018 14:29:25 +0000 (09:29 -0500)]
Checks Sub Project Leads

Fatih Pointed out to me the existence of ptl's of sub projects,
which show up differently in the INFO.yaml files.

This commit also adds support for gerrit.opnfv.org and git.opnfv.org links.
I don't remember why we were only accepting github links, but that seems strange.

Change-Id: Ica64c4ee7d5c0ce4fa6bfbcbabb1c4ca7cf06018
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoMerge "Add Nav Button Disabling Behavior"
Parker Berberian [Wed, 5 Dec 2018 16:13:13 +0000 (16:13 +0000)]
Merge "Add Nav Button Disabling Behavior"

5 years agoAdd Nav Button Disabling Behavior
Sawyer Bergeron [Tue, 4 Dec 2018 19:01:41 +0000 (14:01 -0500)]
Add Nav Button Disabling Behavior

Change-Id: I81bb064d83e1dc6df8658cd4cfa2a400c7e723ca
Signed-off-by: Sawyer Bergeron <sawyerbergeron@gmail.com>
5 years agoMerge "Removed Vanilla Form Submission"
Parker Berberian [Mon, 3 Dec 2018 19:22:36 +0000 (19:22 +0000)]
Merge "Removed Vanilla Form Submission"

5 years agoBUG FIX: Properly decodes ssh public keyfile
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>
5 years agoRemoved Vanilla Form Submission
Parker Berberian [Wed, 28 Nov 2018 18:38:45 +0000 (13:38 -0500)]
Removed Vanilla Form Submission

On google chrome, using vanilla html forms, eg:
document.getElementById("Form_id").submit();
does not properly set the CSRF header from the cookies.
This results in 403 unauthorized errors in chrome when doing certain things.

This is possibly an issue to do with how chrome handles iframes differently from firefox.

To fix, we replaced basic forms with serialized XMLHttpRequests,
which are more common in this codebase anyway.

Change-Id: I93e92cd326c8bba47408b66a95d9d5d806c154f6
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
5 years agoFixed Misc Bugs
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>
5 years agoFix all flake8 errors
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>
6 years agoMerge "Rewrite Notification subsystem"
Trevor Bramwell [Wed, 7 Nov 2018 22:05:28 +0000 (22:05 +0000)]
Merge "Rewrite Notification subsystem"

6 years agoRewrite 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>
6 years agoMerge "Restrict Postgres to version 10"
Trevor Bramwell [Thu, 1 Nov 2018 23:18:47 +0000 (23:18 +0000)]
Merge "Restrict Postgres to version 10"

6 years agoMerge "Improved Collaborators UX"
Trevor Bramwell [Wed, 31 Oct 2018 21:35:30 +0000 (21:35 +0000)]
Merge "Improved Collaborators UX"

6 years agoMerge "Fixes for access creation and removal"
Trevor Bramwell [Wed, 31 Oct 2018 21:34:59 +0000 (21:34 +0000)]
Merge "Fixes for access creation and removal"

6 years agoMerge "Fixed Indentation"
Trevor Bramwell [Wed, 31 Oct 2018 21:34:13 +0000 (21:34 +0000)]
Merge "Fixed Indentation"

6 years agoMerge "Hides information about your booking from other users"
Trevor Bramwell [Wed, 31 Oct 2018 21:34:01 +0000 (21:34 +0000)]
Merge "Hides information about your booking from other users"

6 years agoMerge "Fix Booking List"
Trevor Bramwell [Wed, 31 Oct 2018 21:33:07 +0000 (21:33 +0000)]
Merge "Fix Booking List"

6 years agoFixed Indentation
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>
6 years agoImproved Collaborators UX
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>
6 years agoHides information about your booking from other users
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>
6 years agoForces hostnames to not be empty
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>
6 years agoRestrict Postgres to version 10
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>
6 years agoFixes for access creation and removal
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>
6 years agoFix Booking List
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>
6 years agoMerge "Fix Missing Static Assets"
Parker Berberian [Tue, 23 Oct 2018 19:57:46 +0000 (19:57 +0000)]
Merge "Fix Missing Static Assets"

6 years agoMerge "Fixed serialization"
Parker Berberian [Tue, 23 Oct 2018 19:53:07 +0000 (19:53 +0000)]
Merge "Fixed serialization"

6 years agoMerge "Fix error in Booking cleanup task"
Parker Berberian [Tue, 23 Oct 2018 19:52:54 +0000 (19:52 +0000)]
Merge "Fix error in Booking cleanup task"

6 years agoMerge "Fix clear_delta() function"
Parker Berberian [Tue, 23 Oct 2018 19:52:45 +0000 (19:52 +0000)]
Merge "Fix clear_delta() function"

6 years agoMerge "Added template"
Parker Berberian [Tue, 23 Oct 2018 19:52:35 +0000 (19:52 +0000)]
Merge "Added template"

6 years agoMerge "Fix Typo"
Parker Berberian [Tue, 23 Oct 2018 19:52:17 +0000 (19:52 +0000)]
Merge "Fix Typo"

6 years agoMerge "Adds migrations"
Parker Berberian [Tue, 23 Oct 2018 19:52:06 +0000 (19:52 +0000)]
Merge "Adds migrations"

6 years agoFix Missing Static Assets
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>
6 years agoFixed serialization
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>
6 years agoFix error in Booking cleanup task
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>
6 years agoFix clear_delta() function
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>
6 years agoAdded template
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>
6 years agoFix Typo
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>
6 years agoAdds migrations
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>
6 years agoRemoved references to old code
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>
6 years agoLab as a Service 2.0
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>
6 years agoDevelopment Override Compose File
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>
6 years agoUpdate Postgres Usage
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>
6 years agoUse Upstream Rabbitmq Docker Container
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>
6 years agoBump Python Cryptography Library Version
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>
6 years agochange ',' to '.' in settings.py
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
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
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
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"
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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>