A route's domain cannot be changed

[#77585430]

Signed-off-by: Matthew Sykes <matthew.sykes@gmail.com>
Prevent cascading deletes with quotas

- Deleting a quota definition that is still associated to an
organization raises an association error

[#75551980]
Raise error with right message for service creation feature flag

[#65996262]
Raise an error when invalid guids are set

[#77647762]

Signed-off-by: Mike Dalessio <mdalessio@pivotal.io>
Setting or removing invalid guids now raises an exception.

- added test coverage to vcap_relations_spec
- and to model_controller_spec
- note that there are no API docs changes, despite the checksum update.

[#77647762]

Signed-off-by: Mike Dalessio <mdalessio@pivotal.io>
Merge branch 'invalid_guid_handling'

[#77647762]
Retry blobstore saves

Fog local isn't safe for concurrent use meaning that if a blob is deleted at
the same time that one is saved it is possible for the delete to remove the
parent directories of the saving blob, causing the save to fail. Since we're using
the blobstore from multiple processes we can't take an in-process lock, and we
don't want to get in to using file locking over NFS, so instead we're going to just
retry saving a few times which should avoid the issue.

[#77666874]

Signed-off-by: Michael Fraenkel <fraenkel@us.ibm.com>
EnvironmentVariableGroup blueprint now makes objects with unique names.

- updated specs to not specify names where it's not relevant to the test.

[#77942432]
Expanding coverage of "encrypted attribute" shared spec

- allowing for storage column of different name than the attribute (e.g., App#environment_json)
- allowing for varying salt column names
- adding coverage on salt length
- calling the shared spec from EnvironmentVariableGroup and App specs
- specifying the salt column in existing specs
- removing duplicate coverage from EnvironmentVariableGroup spec

[#77942432]
Created VCAP::CloudController::Encryptor::FieldEncryptor and specs

- to standardize how we encrypt fields in ccdb
- and to make it stupid simple for developers to encrypt fields

Subsequent commits will use FieldEncryptor across all models.

[#77942432]
Using FieldEncryptor for App#environment_json

[#77942432]
Using FieldEncryptor for EnvironmentVariableGroup#environment_json

[#77942432]
Using FieldEncryptor for ServiceAuthToken#token

[#77942432]
Using FieldEncryptor for ServiceBinding#credentials

[#77942432]
Using FieldEncryptor for ServiceBroker#auth_password

[#77942432]
Using FieldEncryptor for ServiceInstance#credentials

[#77942432]
Add app restage audit event

[#77429142]

Signed-off-by: Graeme Davison <gdavison@pivotallabs.com>
Handle query params properly

* Handle both query params and posted params

[#78365570]
Add reserved routes api

New endpoint to check if a route exists

[#77036016]

Signed-off-by: Matthew Sykes <matthew.sykes@gmail.com>
Stacks can be deleted if no apps are associated

[#77903772]

Signed-off-by: Luan Santos <lsantos@pivotal.io>