Commit Graph

79 Commits

Author SHA1 Message Date
dandds
ceb8cdc198 update state machine enum 2020-02-11 15:18:45 -05:00
dandds
facaae5cb1 Merge branch 'staging' into billing-owner 2020-02-11 14:50:11 -05:00
dandds
10014e696d Merge branch 'staging' into environment-role-creation 2020-02-11 12:12:45 -05:00
tomdds
ccbc61f34f Merge branch 'staging' into azure-initial-mgmt-grp 2020-02-10 17:44:19 -05:00
tomdds
0705b47e4d Merge branch 'staging' into fix-kv-secret-update 2020-02-10 17:04:11 -05:00
tomdds
e6d5369cb0 Ensure credential updates properly merge values.
Previously updating the credentials would delete values from the existing crednetials if they weren't also present in the update. This adds a method for merging credentials to the KeyVaultCredentials model and adds tests to both the cloud provider and model.
2020-02-10 16:14:42 -05:00
graham-dds
5b60a54dbc Remove fixture-based reporting methods
These methods probably can be reused to handle real Azure reporting data
2020-02-10 14:49:04 -05:00
graham-dds
2f1c57aef4 Add fn to prepare Azure reporting data for views 2020-02-10 14:49:04 -05:00
dandds
23aeb77821 create billing owner 2020-02-09 16:46:29 -05:00
dandds
45dbf9454e models for creating billing owner 2020-02-09 14:52:29 -05:00
eb4201d6e3 correct data class name 2020-02-06 11:26:08 -05:00
7559875d64 resolve conflict with staging 2020-02-06 10:19:47 -05:00
6420cce4fc initial mgmt group stage data classes extend the management group data class 2020-02-06 10:13:27 -05:00
dandds
872500099e Merge branch 'staging' into environment-role-creation 2020-02-06 05:57:06 -05:00
tomdds
13aca270ca Remove unused code in both the cloud interfaces and environment models. Also add tests for some untested code in the cloud interface. 2020-02-05 14:48:54 -05:00
38e92e427b resolve conflict with staging 2020-02-05 12:21:00 -05:00
tomdds
aaa4b401b5 Fix LGTM issues 2020-02-04 17:42:08 -05:00
tomdds
350e648beb Added tests for get and set secret 2020-02-04 17:39:31 -05:00
tomdds
e702c42fa5 Merge branch 'staging' into environment-mgmt-grp-provisioning 2020-02-04 17:05:24 -05:00
tomdds
4d11f7217e Add missing test for create_principal_admin_role 2020-02-04 16:43:06 -05:00
graham-dds
ff842f5051 Add cloud method to get reporting data
Adds a method to `azure_cloud_provider` to query the Cost Management API
for usage data per invoice.  For now, this query is relatively static.
We're always calling the API at the billing invoice section scope,
with the widest timeframe possible (one year), and with the same
requested dataset. As the scope of the application's reporting needs
changes, this function may change to be more general and/or revert back
to the SDK.
2020-02-04 16:07:06 -05:00
tomdds
ca4feaa403 post-rebase fixes 2020-02-04 15:39:03 -05:00
tomdds
bcb552134b Update tests for environment management group provisioning 2020-02-04 15:21:41 -05:00
1378fcfc15 merge conflict 2020-02-04 15:21:27 -05:00
8c5f532ca1 azure initial management group creation 2020-02-04 08:09:24 -05:00
dandds
bb7cbf00cd Add microsoft domain to AAD user names. 2020-02-03 11:17:42 -05:00
dandds
6b8d9d1d65 Celery wrapper for creating a user. 2020-02-02 14:42:44 -05:00
tomdds
61e891258b Merge branch 'staging' into azure-subscriptions 2020-01-31 17:00:43 -05:00
tomdds
6952a533e2 Merge branch 'staging' into product-purchase-provisioning 2020-01-31 15:50:31 -05:00
tomdds
bbed83d897 Update AADP Purchase url and respose format to newer schema. 2020-01-31 15:50:10 -05:00
tomdds
53dcb94046 Merge branch 'staging' into azure-subscriptions 2020-01-31 15:43:08 -05:00
tomdds
9acbeeb824 Add display name to subscription creation payload
Also extracts environment -> subscription payload construction to it's own method.
2020-01-31 14:42:38 -05:00
graham-dds
e32e211966 Make Upload related classes more generic
Renames Python classes that refer to Upload to something to FileService.
We added this change because these classes now handle downloading as
well as uploading.
2020-01-31 13:17:00 -05:00
graham-dds
a7770d8a6a Add method to download TOs from Azure 2020-01-31 13:17:00 -05:00
tomdds
6b8ea41925 Make AADP purchase quantity configurable
Also remove a few constant params from the payload model.
2020-01-30 22:12:28 -05:00
29b69a7d5d code formatting 2020-01-30 16:50:32 -05:00
tomdds
afcc4d16cd Add functionality for creating and verifying subscriptions.
Currently the create call will be consumed by on-demand requests from the frontend, and the 2 stage create will be used by the enviroment management group provisioning to verify an initial subscription was created.
2020-01-30 15:58:09 -05:00
7e4340e7e4 resolve merge conflict with staging 2020-01-30 15:57:06 -05:00
7493b9c3d6 premium product purchase unit tests. 2020-01-30 14:48:16 -05:00
tomdds
33c6e8c68c Merge CSP secret handling implementations and refine updating. 2020-01-29 18:22:21 -05:00
tomdds
0bc0e15134 Merge branch 'staging' into azure-config-values 2020-01-29 16:50:44 -05:00
tomdds
d4dd581b7a Implement principal creation and admin elevation provisioning features. 2020-01-29 16:17:28 -05:00
dandds
abd03be806 Store and pull tenant creds from Key Vault.
The tenant ID should be hashed and used as the key for the JSON blob of
relevant creds for any given tenant. Azure CSP interface methods that
need to source creds should call the internal `_source_creds` method,
either with a `tenant_id` or no parameters. That method will source the
creds. If a tenant ID is provided, it will source them from the Key
Vault. If not provided, it will return the default creds for the app
registration in the home tenant.
2020-01-29 10:49:27 -05:00
tomdds
144312863c Draft implementations of remote admin creation and root management group ownership. 2020-01-28 20:14:50 -05:00
tomdds
7bf6b9addc Remove creds from payloads and passthroughs. 2020-01-28 14:12:04 -05:00
dandds
ef8f92b678 Merge branch 'staging' into app-env-provisioning 2020-01-26 18:56:29 -05:00
dandds
37a5218a1d Split and barrel cloud module for merge. 2020-01-26 18:38:02 -05:00
tomdds
5b0a523e92 Use more specific imports for cloud models and exceptions. 2020-01-26 15:52:55 -05:00
tomdds
d02d47615e First step in breaking out cloud.py
Move cloud.py to a module init. Move policy with it. Update related unit tests. Also adds a patch to state machine test to prevent randomness in mock from failing test.
2020-01-26 14:03:09 -05:00
dandds
8810a59e0a Orchestration for creating app management groups.
This adds:
- A Celery beat task for enqueuing application creation tasks
- A Celery task for creating the application
- Payload and Response dataclasses for creating management groups

It also does some incidental cleanup.
2020-01-26 12:23:33 -05:00