1011 Commits

Author SHA1 Message Date
leigh-mil
1784318e0e Update seed_sample with new TO info 2019-05-31 13:07:03 -04:00
leigh-mil
7bec073f78 Delete things related to deleted columns and table 2019-05-31 13:07:03 -04:00
dandds
df06d1b62f Use application_role_id on environment_roles.
In the future, an `application_invitation1 will not refer to a `user` until
someone accepts the invitation; they'll only reference an
`application_role`. When a user is invited to an application, the
inviter can specify the environments the invitee should have access to.
For this to be possible, an `environment_role` should reference an
`application_role`, because no `user` entity will be known at that time.

In addition to updating all the models and domain methods necessary for
this change, this commit deletes unused code and tests that were
dependent on `environment_roles` having a `user_id` foreign key.
2019-05-31 11:21:20 -04:00
George Drummond
83adf1295c
/home no longer redirects and has add portfolio button 2019-05-30 09:33:33 -04:00
richard-dds
6a504fdf89
Merge pull request #834 from dod-ccpo/limit-concurrent-logins
Prevent multiple active sessions
2019-05-29 16:19:58 -04:00
leigh-mil
fc01fa6522
Merge pull request #849 from dod-ccpo/fix-remove-port-member
Fix removing portfolio member
2019-05-29 16:12:33 -04:00
richard-dds
857cd2adc1
Merge pull request #848 from dod-ccpo/logout-flash
Display a flash message when a user logs out
2019-05-29 16:02:06 -04:00
leigh-mil
7e8407ba1d Use portfolio_role_id in delete member url instead of user_id 2019-05-29 15:59:19 -04:00
richard-dds
c653cf2dbf Display a flash message when a user logs out 2019-05-28 16:55:52 -04:00
George Drummond
454181665c
Fix deleting application members from the team page 2019-05-28 15:41:31 -04:00
dandds
d82fd46a3c Mock out g in logging utils test.
This gives us better test isolation. Previously, we were manually
setting `g.current_user` with a factory instance and not cleaning it up
properly, which could break later tests.
2019-05-28 15:04:03 -04:00
dandds
96ae1bba9d
Merge pull request #845 from dod-ccpo/app-settings-role-id
Use role ID for app settings table
2019-05-28 11:43:56 -04:00
richard-dds
d2392cb3d0 Fix test 2019-05-28 10:45:36 -04:00
richard-dds
8fae9d0956 Tests for session_limiter 2019-05-28 10:45:36 -04:00
dandds
43ea922218 Simplify environment role updates in app settings.
Use ApplicationRole.id instead of User.id in forms. This eliminates the
need for the function that checks whether a user is in a given
application, because looking up the application role will raise an error
if the user is not.
2019-05-24 13:35:00 -04:00
dandds
129f5e3031 Rewrite function that builds form data for app environment roles form.
- Adds a property to ApplicationRole model so that it knows its related
  EnvironmentRole models.
- Rewrite the form data builder in the routes file so that it loops the
  application members and their environment roles to build the data
  structure.
2019-05-24 13:34:53 -04:00
leigh-mil
48fbc1c997
Merge pull request #840 from dod-ccpo/update-team-members-count
Update team members number on app index page
2019-05-24 10:15:28 -04:00
dandds
7f745302ec
Merge pull request #843 from dod-ccpo/app-team-role-id
Use application_role.id to reference users in team page forms.
2019-05-23 11:14:33 -04:00
leigh-mil
8980b04f7e Filter the roles relationship on applications to remove deleted roles 2019-05-23 11:07:54 -04:00
dandds
a332d1432e Use application_role.id to reference users in team page forms.
Membership in a resource should be decoupled from the users table.
2019-05-23 10:13:57 -04:00
dandds
4c4796ecc3
Merge pull request #841 from dod-ccpo/ppoc-role-id
Use portfolio_role.id for updating primary point of contact.
2019-05-23 10:11:33 -04:00
dandds
e3ace36466 Use portfolio_role.id for updating primary point of contact.
Our forms should rely on role IDs for displaying user information on the
portfolio page. This way they are decoupled from user table data and can
eventually rely on invitation user data where an invitation has been
sent but a user does not exist yet.
2019-05-22 15:59:04 -04:00
George Drummond
da6ac57812
Merge pull request #836 from dod-ccpo/sidebar
Applications users were invited to were not showing in the portfolios sidebar
2019-05-22 15:22:05 -04:00
leigh-mil
4df975acf9
Merge pull request #832 from dod-ccpo/add-app-audit-log
Add app audit log
2019-05-22 15:07:47 -04:00
montana-mil
2de4d1477a
Merge pull request #837 from dod-ccpo/default-env-roles-for-app-users
Use No Access as default role value for app users
2019-05-22 15:07:27 -04:00
leigh-mil
a1eb7ec935 Make sure all log events have portfolio and app ids (where applicable) 2019-05-22 13:08:44 -04:00
leigh-mil
927d1b7925 Add audit log to app settings page 2019-05-22 13:08:44 -04:00
leigh-mil
b3ecd1658c Add application_id column to AuditEvent
Use application_id and portfolio_id if the resource is a portfolio in AuditableMixin
Clean up some residual references to workspace
2019-05-22 13:08:44 -04:00
George Drummond
a9fac1ca59
Add in missing test 2019-05-22 11:19:14 -04:00
George Drummond
6487fe91ba
Applications users were invited to were not showing in the portfolios
sidebar
2019-05-22 11:19:13 -04:00
dandds
8add5b4e22 Filter deleted environment roles from top-level domain method. 2019-05-21 14:08:14 -04:00
Montana
c329e5ffcf Use No Access as default role value for app users
-adds unit tests for EnvironmentForm
-removes unused import from forms/team.py
2019-05-21 10:37:03 -04:00
richard-dds
32df561c6d
Merge pull request #827 from dod-ccpo/stig-notifications
Create Notification System
2019-05-20 09:51:09 -04:00
dandds
0cdba66b0c
Merge pull request #829 from dod-ccpo/portfolio-role-display
Use portfolio_role entity to display and update portfolio member info.
2019-05-20 09:37:55 -04:00
dandds
01a935f257
Merge pull request #822 from dod-ccpo/app-members-edit
App members edit
2019-05-17 14:08:06 -04:00
dandds
815632ed00 Handle setting no access for user environment roles:
- use constant for no access string
- update no access constant
- update language and permissions for rendering remove app member button
2019-05-17 14:00:45 -04:00
dandds
0dc0397702 Update user's environment role on the team page.
- Includes adjustments to the applications.update_team route
- Adds hidden environment ID to the HTML form
2019-05-17 14:00:45 -04:00
George Drummond
b71402955c
Failing tests 2019-05-17 13:25:10 -04:00
dandds
c8682c0897 Use portfolio_role entity to display and update portfolio member info.
Previously, we were encoding the portfolio_role.user_id as part of the
form data for the portfolio admin page. This was convenient because it
allowed us to easily determine certain display attributes in the
template. Instead, we should rely on the PortfolioRole as the source of
truth for member information. This commit adds:

- Portfolio.owner_role to return the PortfolioRole of the owner
- explicitly passes the PortfolioRole IDs for the PPoC and current user
  to the template
- PortfolioRole.full_name for deriving the member name
2019-05-16 08:04:48 -04:00
richard-dds
fe5def3a92 Send notification emails on some http errors 2019-05-15 15:01:49 -04:00
richard-dds
d8e75668b0 Log notifications at the time of sending 2019-05-15 14:57:46 -04:00
richard-dds
9399b34a56 Autouse notification_sender fixture 2019-05-15 14:57:46 -04:00
richard-dds
9ba1def91c Use separate queue method for notifications 2019-05-15 14:57:46 -04:00
richard-dds
9e97df79f5 Mock out app NotificationSender during testing 2019-05-15 14:57:46 -04:00
richard-dds
97b9d84c38 Select only recipient emails from the db 2019-05-15 14:57:46 -04:00
richard-dds
df7f72245a Send notification when we encounter an error 2019-05-15 14:57:46 -04:00
richard-dds
c03b69b351 More idiomatic initialization of notification_sender 2019-05-15 14:57:46 -04:00
richard-dds
a6c5f484b9 Add NotificationSender, one test 2019-05-15 14:57:46 -04:00
dandds
f7c3fe572b Raise error if CRL download fails.
The download method for Libcloud objects returns a boolean, which means
that our CRL download could fail silently. The RackspaceCRLProvider
would not raise an error until it tried to open the full path for the
downloaded resource. This checks the return status of the download call
and raises an error if the download failed. For reference:

https://libcloud.readthedocs.io/en/latest/storage/api.html#libcloud.storage.base.StorageDriver.download_object
2019-05-15 14:38:33 -04:00
montana-mil
a3c808a09f
Merge pull request #819 from dod-ccpo/handle-none-checkbox-value
Catch None values for IsNumber validator
2019-05-15 11:58:22 -04:00