6561 Commits

Author SHA1 Message Date
graham-dds
fa9986f9bf Styling for Obligated Funding section of reports 2019-11-26 16:16:32 -05:00
graham-dds
60ad0d1844 Add datetime.now() as a reports view variable
This mocks the datetime of data retrieval from the CSP
2019-11-26 16:16:32 -05:00
dandds
205d50f7f4
Merge pull request #1214 from dod-ccpo/circleci-config-fix
Try different CircleCI config.
2019-11-26 13:08:32 -05:00
dandds
c577815b0d Try different CircleCI config.
Seems like the branch filters don't work like I thought they did. For
now, we will not bother building the frontend asssets with the CDN URL
and will branch builds like we were previously.
2019-11-26 11:41:07 -05:00
graham-dds
92ae191f37
Merge pull request #1199 from dod-ccpo/reporting-refactor-part-1
Reporting refactor part 1
2019-11-25 16:37:49 -05:00
dandds
1d98a7f951
Merge pull request #1207 from dod-ccpo/logging-improvements
Logging improvements
2019-11-25 15:48:46 -05:00
dandds
a53c9e7cc6
Merge pull request #1211 from dod-ccpo/compile-k8s-config
Script for compiling K8s config.
2019-11-25 14:44:33 -05:00
dandds
d5865c1ab3 Script for compiling K8s config. 2019-11-25 14:24:53 -05:00
graham-dds
0303434561 First pass at new reporting designs
This commit lays out the genral structure and provides necessary
data for the new reporting page designs.

Some of the data generated by the report domain classes (including
the mock CSP reporting class) was modified to fit new designs. This also
included removing data that was no longer necessary. Part of the newly
mocked data includes the idea of "expended" data per CLIN or task order.
This was was mocked simply by using a 75% of the obligated funds fo a
given object. Tests were also written for these new/ modifed reporting
functions.

As for the front end, this commit only focuses on the high-level markup
layout. This includes splitting the large reporting index page into
smaller component templates for each of the major sections of the report.
2019-11-25 13:12:35 -05:00
graham-dds
7a0dc4d264 Add properties to portfolio model
1. Funding duration

Returns a tuple of the earliest period of performance start date and
latest period of performance end date for all active task order in a  portfolio.

2. Days to funding expiration
Returns the numbei of days between today and the lastest
period performance end date of all active task orders

3. Active task orders
Returns a list of a portfolio's active task orders a
2019-11-25 13:12:35 -05:00
graham-dds
4f2a75b64f Add active CLINS property to portfolio model 2019-11-25 13:12:34 -05:00
graham-dds
d4cc887f80 add signed_at field to TaskOrderFactory 2019-11-25 13:12:34 -05:00
graham-dds
e685b32193 Remove budget chart 2019-11-25 13:12:34 -05:00
graham-dds
06600a8237 Add "is_active" property to CLIN model 2019-11-25 13:12:34 -05:00
graham-dds
dc73963cb9 Add accordion macro 2019-11-25 13:12:34 -05:00
tomdds
4d72d8dece
Merge pull request #1206 from dod-ccpo/azure-key-vault
Initial Setup for Consuming FlexVol in AKS
2019-11-25 12:00:11 -05:00
tomdds
bc9e4fd142 Include new KeyVault env vars in both diff and apply sections of deploy readme 2019-11-25 11:52:15 -05:00
dandds
4d4c873c73 Enable uwsgi logging again.
Updates the K8s config to enable extended uWSGI JSON logging again. This
commit updates the name of the ConfigMap for the uWSGI config to avoid
confusion.
2019-11-25 11:38:29 -05:00
tomdds
f8e95ae104 Initial FlexVol Setup
This commit is the first part of consuming secrets from the Azure Key Vault. This will set up the required services to consume Azure's RBAC controls in the cluster, an identity to read the secrets, and the tool (FlexVol) to mount the secrets.
2019-11-25 11:19:55 -05:00
Jay R. Newlin (PromptWorks)
018229dcd8
Merge pull request #1202 from dod-ccpo/ghost-inspector-we20191122
Ghost Inspector updates week ending 11/22/2019
2019-11-25 10:54:01 -05:00
dandds
9ae20b4a2a JSON logging for Celery workers.
This enables JSON logging for Celery workers if the LOG_JSON conig value
is set. It uses the same JsonFormatter class used by the Flask
applications. That class has been updated in two ways:

- It takes a `source` kwarg to define the log source for the formatter.
- The `msg` attribute of the log record is formatted with any arguments
  that may have been passed. This is necessary for Celery to render task
  type, completion time, etc. into the log output.
2019-11-25 10:13:37 -05:00
dandds
e56e0d8619 Log DOD ID for user when available. 2019-11-25 09:47:01 -05:00
leigh-mil
eab8cbdd56
Merge pull request #1200 from dod-ccpo/add-ccpo-script
Add CCPO user script
2019-11-25 09:47:00 -05:00
leigh-mil
6de93d7181
Merge pull request #1203 from dod-ccpo/new-portfolio-validation
Bugfixes
2019-11-25 09:46:27 -05:00
leigh-mil
25a5cb136c
Merge pull request #1196 from dod-ccpo/revoke-env-access
Catch CSP exceptions and display a flash message with the error
2019-11-22 14:46:34 -05:00
dandds
1ec0352c5c
Merge pull request #1205 from dod-ccpo/cd-workflow-fixes
Do not run test workflow for merges to main branches.
2019-11-22 13:12:54 -05:00
dandds
41bab4f594 Do not run test workflow for merges to main branches.
We should not run a redundant testing workflow on merges to master or
staging.

This also includes a quick fix to configure the FLASK_ENV for the main
site.
2019-11-22 12:56:17 -05:00
tomdds
9b59e803d1
Merge pull request #1204 from dod-ccpo/fix-upload-header
Fix Upload Header
2019-11-22 11:57:53 -05:00
tomdds
4df68bab23 Add BLOB_STORAGE_URL config
Our content security policy in non-dev environments didn't allow uploading to azure blob storage. This adds a configurable blob storage base URL to allow regions to specify which storage endpoint they expect the upload request to use.
2019-11-22 11:56:27 -05:00
dandds
5cc032b655
Merge pull request #1183 from dod-ccpo/cdn
Set up a CDN
2019-11-22 11:26:39 -05:00
leigh-mil
d186728526 Change order of if/elif statement for ApplicationRole display_status
Since an invite that is expired has a status of 'pending', the ordering
of the if/elif statement needs to be switched so it checks to see if the
invite is expired before seeing if it is pending.
2019-11-22 09:50:26 -05:00
leigh-mil
778cda0924 Add script for giving a user CCPO permissions from the command line 2019-11-22 09:44:11 -05:00
leigh-mil
20a2abd36b Update valid prop on MultiCheckboxInput to return true if the field is optional 2019-11-22 09:33:39 -05:00
leigh-mil
62cdcbe6dc Remove some leftover 'watch' attributes from Vue components 2019-11-22 09:22:47 -05:00
leigh-mil
4cba564c97 Catch CSP exceptions and display a flash message with the error 2019-11-22 08:49:16 -05:00
leigh-mil
c2975fff69
Merge pull request #1192 from dod-ccpo/app-member-status-labels
Status labels on app members table
2019-11-22 08:23:26 -05:00
Jay R. Newlin (PromptWorks)
6e63172ab4 Ghost Inspector updates week ending 11/22/2019 2019-11-21 17:28:47 -05:00
dandds
08fc530223 Add config value for CDN origin.
This value is set as the Access-Control-Allow-Origin header value for
the application. When using Azure CDN, the CDN will consume this header
when it populates its cache and use it on subsequent requests.

It would be possible to make this the same as the Flask SERVER_NAME
value. We explicitly set SERVER_NAME for Celery worker processes because
they need that information to contruct URLs outside of the request cycle
(Flask can infer the server name within a request cycle). I decided not
to rely on SERVER_NAME though because it has side effects:

- It determines what `url_for` uses as the host domain (which would be
  fine).
- It makes it so that the Flask app can only server requests to that
  domain (probably fine, but it felt like too big a side effect).

Additionally, SERVER_NAME does not include the scheme. For all of these
reasons I opted to make CDN_ORIGIN a separate config value.
2019-11-21 16:43:22 -05:00
dandds
c6187466a3 Configure staging with different FLASK_ENV, include sub-route for CDN_URL. 2019-11-21 16:43:22 -05:00
dandds
293854ece6 CircleCI config for passing CDN url to the Docker image.
The workflows need to split since we're passing different parameters to
the Docker build at the beginning of the workflow.
2019-11-21 16:42:42 -05:00
richard-dds
8e12c6bfbd Add CDN config for staging 2019-11-21 16:42:42 -05:00
richard-dds
e29163f65a Add CDN config for prod 2019-11-21 16:42:42 -05:00
richard-dds
5ca20222fc Run build-prod in CI 2019-11-21 16:42:42 -05:00
richard-dds
4c693cf9c0 Fix bad rebase 2019-11-21 16:42:42 -05:00
richard-dds
8ddd9fab96 Add docker arg for CDN_URL 2019-11-21 16:42:42 -05:00
richard-dds
5e9a3f0ba6 Add STATIC_URL and ASSET_URL config in base.ini 2019-11-21 16:42:42 -05:00
richard-dds
4c5a4f29b8 Allow static_url domain in prod 2019-11-21 16:42:42 -05:00
richard-dds
c10aedd4dc Override flask's url_for 2019-11-21 16:42:42 -05:00
richard-dds
7ace430dee Use url_for for all static paths 2019-11-21 16:42:42 -05:00
dandds
436cbcffe4
Merge pull request #1194 from dod-ccpo/staging-server-name
Set SERVER_NAME correctly for staging Celery workers.
2019-11-21 16:37:27 -05:00