All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Changed provider credentials rotation so it uses the provider ID instead of a product ID.
- Removed the
--product
flag from thecredentials rotate
command.
- Changed makefiles to the mage build system to bring back some of the automated releases on tags.
- Add more details on error cases where a different status code was received.
- Add more helpful logs when using grafton to send request to an API with logging enabled.
- Add
platformID
toResourceBody
of the client.
-
Add the optional
platform_id
field to the resource provisioning payload.That new field will allow advanced platform use cases.
- Refresh documentation and readme
- Improve error logs
Grafton ❤️ Credential rotations! 🎉🎉
- Add
--credential
options to configure the type of credentials supported. Defaults to multiple. - Add credential rotation tests based on the type of credentials supported.
--plan
and--new-plan
must be have different values in order for resize operation to work
- Travis build on go 1.12
- Golangci lint in favour of gometalinter which is deprecated
- Code coverage to travis
- Travis build for go 1.9 and 1.10
- go dep support
- Faulty region name on acceptance test didn't follow format defined on spec
- Exit code when tests pass/fail
- Fixed the fake connector expecting
application/x-www-form-urlencoded
for authorization codes even when using json - Fixed the fake connector overwriting the Authorization header when providing a body
- Added a fix for the /v1/ being omitted from the path
- Added support for setting plan, region on serve and using them
- Build with go modules on go1.11
- releases are handled by promulgate
verbose
mode now correctly shows all HTTP header fields and body
grafton serve
runs a local version of the Connector API- Plan features can be passed during provision with
--features
flag as JSON - Update go-manifold
- Add mini-marketplace to Grafton as a new command, with provision, deprovision and SSO
- Support latest go versions
- Provisioning the same resource test passes if the provider chooses to respond with a callback.
- Resource features: the resource provisioning endpoint now receives additional data describing the selected values for customizable features when provisioning the resource.
- The change plan endpoint also receives new feature data for resource plan changes
- The acceptance tests have been updated to allow for feature data to be supplied as a JSON object string through
plan-features/PLAN_FEATURES
andnew-plan-features/NEW_PLAN_FEATURES
- Resource measures spec: allows Manifold to pull information about a resource features usage
- Resource measures acceptance test
- Add
label
field to resource
- The Grafton mock connector API now supports a JSON message body to POST /oauth/tokens, as described in the provider documentation
credentials list
cmd for providers to list their OAuth Credentialscredentials delete
cmd for providers to delete their OAuth Credentials
credentials rotate
cmd for providers to rotate their OAuth Credentials
- Rename dependency from
Sirupsen/logrus
tosirupsen/logrus
- Grafton no longer errors if a
message
is not provided with a 201 Created response to a credential provisioning request.
- Grafton no longer returns an error if a 204 Response is returned from a Plan Change request.
- Introduced the cleanup acceptance test set, which tests to ensure any half-created resources can be cleaned up.
- Added a teardown step to the resize acceptance tests, ensuring a resource can be resized back to it's original plan.
- The Grafton Client now returns an
ErrMissingMsg
on a200
,201
, or202
request missing amessage
property. - The Grafton client now differentiates between an error and a message returned from the provider, a message will be returned if a provider sends a valid message despite whether or not it was an error response.
- The Grafton client now takes a
logrus.Entry
, when provided Grafton will push error logs to the provided logger.
- The
grafton test
command now validates the credential names it receives. - The main
grafton
package now exports a functionValidCredentialName
for testing whether or not a given credential name is valid. - Dependencies for bootstrapping the build are now vendored using glide.
- A bug has been fixed which resulted in all of the error acceptance tests failing despite the response returned from the provider.
- The grafton client now returns
grafton.Error
if the received response conforms to the responses expected in theprovider.yaml
swagger specification. - The main
grafton
package now exports a functionIsFatal
which returns whether or not an error is considered to be fatal to a provision, plan change, or deprovisioning flow.
- The main
grafton
package now exports a functionCreateSsoURL
for deriving an SSO URL.
- A backwards incompatible change was accidently introduced in
v0.6.5
,/v1
would always be appended to the url, instead,/v1
will only be appended if the provided url does not end with/v1
.
- If a trailing slash is provided for the base url, Grafton will no longer
generate urls with duplicate
/
between path segments. - Update README to include working example using
grafton test
/v1
will always be prepended to the base url given to Grafton
- A resource can now be queried during the provisioning flow instead of after it's completed.
- A failing ErrorCase will not cause the rest of the test runs to abort early.
- Make the error messages for SSO error cases match the status code they're looking for.
- Don't require a message on 204 responses, which won't have a body.
- Initial release from our public git repository.
- Detect, display, and fail on invalid status code responses during grafton test.
- The credentials flag on grafton test, which was not used, has been removed.
- Correct the RunsInside logic, so dependent features are not run when an outer feature fails.
- Display cleaner error messages when grafton fails to connect to your provider implementation.
- Handle and report on missing
message
fields in provider responses.