Skip to content

Latest commit

 

History

History
754 lines (494 loc) · 17.6 KB

CHANGES.adoc

File metadata and controls

754 lines (494 loc) · 17.6 KB

Changes

This document describes the relevant changes between releases of the OCM API SDK.

0.1.107 Jun 18 2020

  • Update to model v0.0.63

    • cluster: Remove support for expiration_timestamp

    • Added top-level Notify endpoint to AMS

0.1.106 Jun 9 2020

  • Update to metamodel v0.0.29:

    • pr_check: Lock in dependency versions for test pipeline

    • Fix setter for Poll request params

  • Update to model v0.0.62:

    • Add subscription notify endpoint

  • Update to model v0.0.61:

    • accounts_mgmt: Add 'fields' parameter to all list-requests

    • accounts_mgmt: Support for Labels resources

  • Update to model v0.0.60:

    • Add parameters 'offset' and 'tail' to log resource

0.1.105 May 21 2020

  • Update to model 0.0.59:

    • Add feature_toggle endpoint and api model

0.1.104 May 15 2020

  • Update to model v0.0.58

    • AddOns: Add docs_link attribute

    • Update to metamodel v0.0.28

0.1.102 May 15 2020

  • Update to model v0.0.57:

    • AddOnInstallations: Remove DELETE operation

    • Added Label to Account

  • Update to metamodel v0.0.28:

    • OpenAPI: Fix expected response

0.1.101 May 5 2020

  • Update to model 0.0.56

    • Add Labels to Organization

0.1.100 Apr 23 2020

  • Update to model 0.0.55

    • Add enabled field to region

    • Adding metrics.nodes to api model

    • Adding cluster ingresses endpoint

    • ClusterNodes: Add ComputeMachineType

    • Network: Added HostPrefix

0.1.99 Apr 7 2020

  • Update to model 0.0.54

    • Add HealthState field to Cluster type

    • Refactor alerts and operator conditions to contain only 'CriticalAlerts' and 'OperatorsConditionFailing'

    • Adding computeNodesSockets to cluster metrics

    • Fix pull secret deletion path

    • Remove unsupported cluster state

    • Add machine type category

  • Update to metamodel 0.0.27

    • Update file header year to 2020

0.1.98 Apr 6 2020

  • Update to model 0.0.53

    • Add pull secret deletion

    • Products: Add product attribute to cluster object

    • Products: Support for top-level cluster types

    • Add ClusterOperatorsConditions type

    • Add ClusterAlertsFiring type and field in ClusterMetrics

0.1.97 Mar 26 2020

  • Update to model 0.0.52

    • Add Subscription Model changes.

0.1.96 Mar 24 2020

  • Update to model 0.0.50

    • Add Ingress type

    • Add sockets to cluster_metrics_type

0.1.95 Mar 22 2020

  • Update to model 0.0.48:

    • Fix OpenID attributes.

    • Add Cluster API listening method.

0.1.94 Mar 19 2020

  • Update to model 0.0.47:

    • Add ClusterAdminEnabled flag.

    • Add PullSecrets endpoint.

    • Fix LDAPIdentityProvider attribute name.

0.1.93 Mar 18 2020

  • Update to model 0.0.46:

    • Add missing fields for add-on installation

    • Add operator name to add-ons

0.1.92 Mar 11 2020

  • Update to model 0.0.45:

    • Add Organizations field to GitHub IDP

0.1.91 Mar 5 2020

  • Update to model 0.0.42:

    • Add client_secret attribute to GitHub identity provider.

0.1.90 Mar 2 2020

  • Request new tokens when the OpenID server returns error code invalid_grant during the refresh token grant.

  • Check that responses from the OpenID server contain application/json in the Content-Type header, and improve the error messages generated in that case so that they contain a summary of the content.

  • Honor cookies sent by the OpenID and API servers.

0.1.89 Feb 26 2020

  • Update to metamodel 0.0.26.

    The more relevant change in the new version of the metamodel is the new operation_id attribute added to error objects and error messages. An error object like this:

    {
      "kind": "Error",
      "id": "401",
      "href": "/api/clusters_mgmt/v1/errors/401",
      "code": "CLUSTERS-MGMT-401",
      "reason": "My reason",
      "operation_id": "456"
    }

    Will result in the following error string (in one single line):

    identifier is '401', code is 'CLUSTERS-MGMT-401' and
    operation identifier is '456': My reason

    This addresses issue 150.

0.1.88 Feb 20 2020

  • Remove service and version parameters from the builder of the authentication handler. This is a backwards compatibility breaking change that requires changes in the code that creates the authentication handler. For example, if the current code is like this:

    handler, err := authentication.NewHandler().
            Logger(logger).
            Service("clusters_mgmt").
            Version("v1").
            Public("...").
            KeysFile("...").
            KeysURL("...").
            ACLFile("...").
            Next(next).
            Build()
    if err != nil {
            ...
    }

    It will need to be changed to this:

    handler, err := authentication.NewHandler().
            Logger(logger).
            Public("...").
            KeysFile("...").
            KeysURL("...").
            ACLFile("...").
            Next(next).
            Build()
    if err != nil {
            ...
    }

    Note that the only change required is removing the calls to the Service and Version methods of the builder. The handler will now extract those values from the request URL.

    This is specially important for programs that use the same authentication handler for multiple services.

  • Update to metamodel 0.0.25:

    • Run the gofmt command only once for all generated files instead of running it once per each generated file.

    • Avoid generating code with constructs that would then be simplified by the -s flag of the gofmt command.

0.1.87 Feb 14 2020

  • Preserver order of attributes of JSON documents sent to the log when debug mode is enabled.

  • Update to metamodel 0.0.24:

    • Add Content-Type to responses sent by the generated server code.

    • Don’t require developer to explicitly remove the /api when using the server code.

    • Remove redundant quotes from error responses sent by the generated server code.

0.1.86 Feb 13 2020

  • Update to model 0.0.41:

    • Add target_namespace and install_mode attributes to AddOn type.

    • Add state attribute to AWSInfrastructureAccessRole type.

0.1.85 Feb 12 2020

  • Update to metamodel 0.0.23:

    • Fix missing OpenAPI paths due to incorrect use of append.

0.1.84 Feb 5 2020

  • Add method to update flavour.

0.1.83 Feb 3 2020

  • Check content type of HTTP responses and return an error if it isn’t JSON.

  • Update to model 0.0.39:

    • Add types and resources for cluster operator metrics.

    • Add deleting and removed states to AWS infrastructure access role grant status.

0.1.82 Jan 23 2020

  • Update to model 0.0.38:

    • Add search and order parameters to the method that lists registry credentials.

    • Add labels parameter to the method that lists subscriptions.

    • Add types and resources for management of AWS infrastructure access roles.

0.1.81 Jan 16 2020

  • Add ability to intercept request and response using a transport middleware of type http.RoundTripper.

0.1.80 Jan 13 2020

  • Add body details in case of error from token provider.

0.1.79 Jan 9 2020

  • Update to metamodel 0.0.22:

    • Fix generation of OpenAPI paths so that all the characters are lower case.

0.1.78 Jan 8 2020

  • Fix URL prefix for the logs service.

  • Update to metamodel 0.0.21:

    • Use JSON iterator instead of the default JSON Go package.

0.1.77 Jan 8 2020

  • Don’t require Go 1.13.

  • Update to model 0.0.37:

    • Add new service_logs service.

    • Add types and resources for machine types.

0.1.76 Jan 3 2020

  • Update to model 0.0.36:

    • Add types and resources for AWS infrastructure access roles.

    • Add GCP flavour and change AWS flavour to contain also the instance type.

0.1.75 Jan 1 2020

  • Update to model 0.0.35:

    • Add CurrentAccess support.

0.1.74 Dec 31 2019

  • Update to model 0.0.33:

    • Add the CreatedAt and UpdatedAt attributes to the Subscription type.

0.1.73 Dec 24 2019

  • Update to model 0.0.32:

    • Replace AddOns with AddOnInstallations.

0.1.72 Dec 19 2019

  • Update to model 0.0.31:

    • Add ban_code attribute to Account type.

0.1.71 Dec 19 2019

  • Authentication handler sends 401 instead of 511.

  • Authentication handler sends the WWW-Authenticate response header.

  • Authentication handler doesn’t send authentication failures to the log.

0.1.70 Dec 18 2019

  • Update to metamodel 0.0.20:

    • Fix conversion of errors to JSON so that the kind attribute is generated correctly.

  • Add authentication handler.

0.1.69 Dec 17 2019

  • Update to model 0.0.30:

    • Add support for ClusterUUID field.

0.1.68 Dec 12 2019

  • Update to metamodel 0.0.19:

    • Don’t fail on wrong kind.

0.1.67 Dec 12 2019

  • Don’t check kinds of add-ons installations.

0.1.66 Dec 12 2019

  • Update to model 0.0.29:

    • Allow subscription identifier on role binding.

0.1.65 Dec 10 2019

  • Update to model 0.0.28:

    • Add AddOnInstallation type.

0.1.64 Dec 4 2019

  • Update to model 0.0.27:

    • Add resource_name and resource_cost attributes to the add-on type.

0.1.63 Dec 2 2019

  • Update to model 0.0.26:

    • Remove obsolete aws and version fields from the Flavour type.

    • Add instance type fields to the Flavour type.

    • Add AWSVolume and AWSFlavour types.

    • Add attributes required for BYOC.

    • Fix direction of Body parameters of updates.

0.1.62 Nov 28 2019

  • Update to model 0.0.25:

    • Allow patching role binding.

0.1.61 Nov 25 2019

  • Update to metamodel 0.0.18:

    • Add stage URL and securitySchemes to the generated OpenAPI specifications.

0.1.60 Nov 23 2019

  • Update to model 0.0.24:

    • Fix directions of paging parameters.

    • Fix direction of Body parameter of Update.

    • Add default values to paging parameters.

    • Update to metamodel 0.0.17.

  • Update to metamodel 0.0.17:

    • Add semantic checks.

    • Add support for default values.

    • Check default values of paging parameters.

0.1.59 Nov 20 2019

  • Update to model 0.0.23:

    • Add infra nodes to FlavourNodes.

    • Refactor flavour nodes.

0.1.58 Nov 19 2019

  • Update to metamodel 0.0.16:

    • Add simple conversion from AsciiDoc to Markdown.

0.1.57 Nov 19 2019

  • Update to metamodel 0.0.15:

    • Add support for the version metadata resource.

0.1.56 Nov 19 2019

  • Update to model 0.0.22:

    • Add socket_total_by_node_roles_os metric query.

0.1.55 Nov 17 2019

  • Update to model 0.0.21:

    • Added add-on resources and types.

    • Added subscription reserved resources collection.

0.1.54 Nov 17 2019

  • Drop support for developers.redhat.com.

  • Update to metamodel 0.0.14:

    • Add Poll method to clients that have a Get method.

0.1.53 Nov 14 2019

  • Update to model 0.0.20:

    • Query resource quota from root and delete by identifier.

  • Update to metamodel 0.0.13:

    • Fix imports of helpers and errors packages.

0.1.52 Nov 8 2019

  • Update to model 0.0.19:

    • Added identifiers to role binding type.

0.1.51 Nov 7 2019

  • Update to model 0.0.18:

    • Added support to search role bindings and resource quota.

0.1.50 Nov 4 2019

  • Update to metamodel 0.0.12:

    • Add OpenAPI specification generator.

0.1.49 Oct 28 2019

  • Update to model 0.0.17:

    • Added Disconnected, DisplayName and ExternalClusterID attributes to the cluster authorization request type.

0.1.48 Oct 27 2019

  • Update to model 0.0.16:

    • Added ResourceReview resource to the authorizations service.

  • Update to metamodel 0.0.11:

    • Improve parsing of initialisms.

    • Fix the method not allowed code.

    • Send not found when server returns nil target.

    • Generate service and version servers.

    • Don’t generate files with execution permission.

0.1.47 Oct 25 2019

  • Update to metamodel 0.0.10:

    • Make HTTP adapters stateless.

0.1.46 Oct 24 2019

  • Update to model 0.0.15:

    • Added search parameter to the accounts List method.

0.1.45 Oct 24 2019

  • Update to model 0.0.14:

    • Added SKU type.

    • Improved organizations.

    • Improved roles.

0.1.44 Oct 15 2019

  • Upate to model 0.0.13:

    • Added AccessTokenAuth type.

    • Added auths attribute to AccessToken type.

  • Update to metamodel 0.0.9:

    • Generate shorter adapter names.

    • Use constants from the http package.

    • Shorter read and write names.

    • Rename SetStatusCode to Status.

    • Improve naming of variables.

    • Set default status.

    • Move errors and helpers generators to separate files.

0.1.43 Oct 10 2019

  • Update to model 0.0.12:

    • Add access_review resource.

0.1.41 Oct 10 2019

  • Update to model 0.0.11:

    • Add export_control_review resource.

0.1.40 Oct 7 2019

  • Update to model 0.0.10:

    • Add cpu_total_by_node_roles_os metric query.

0.1.39 Oct 7 2019

  • Update to model 0.0.9:

    • Add type attribute to the ResourceQuota type.

    • Add config_managed attribute to the RoleBinding type.

0.1.38 Sep 17 2019

  • Update to model 0.0.8:

    • Update methods don’t return body.

0.1.37 Sep 16 2019

  • Update to model 0.0.7:

    • Add search parameter to the List method of the subscriptions resource.

0.1.36 Sep 16 2019

  • Update to model 0.0.6:

    • Remove the creator attribute of the Cluster type.

  • Update to metamodel 0.0.7:

    • Add Copy method to builders.

0.1.35 Sep 12 2019

  • Update to model 0.0.5:

    • Add order parameter to the methods to list accounts and subscriptions.

0.1.34 Sep 11 2019

  • Use access token that is about to expire if there is no other mechanism to obtain a new one.

  • Update to model 0.0.3:

    • Add order parameter to the collections that suport it.

    • Add cloud providers collection.

0.1.33 Sep 10 2019

  • Update to model 0.0.2:

    • Add DisplayName attribute to Subscription type.

  • Update to metamodel 0.0.5:

    • Fix generation of field names for query parameters.

    • Remove query and path fields from request objects.

    • Remove unused imports.

0.1.32 Sep 03 2019

  • Makefile generates code using the ocm-api-metamodel v0.0.4.

  • Generated servers parse request query parameters.

0.1.31 Aug 28 2019

  • Generated servers enforce no trailing slashes as well send 'Content-Type` header.

0.1.30 Aug 27 2019

  • Renamed package to github.com/openshift-online/ocm-sdk-go.

0.1.29 Aug 26 2019

  • Generated servers can handle routes with and without trailing slashes.

  • Clone metamodel for code generation

  • Clone model for code generation

  • Rename main package

0.1.28 Aug 22 2019

  • Add Context parameter to Server methods.

0.1.27 Aug 22 2019

  • Add generated servers.

  • Changes ClusterRegistration response type from long to string .

0.1.26 Aug 13 2019

  • Add support for the compute_nodes_cpu and compute_nodes_memory metrics.

0.1.25 Aug 11 2019

  • Add support for quota summary.

  • Fix the data type of the cluster registration expiration date.

0.1.24 Jun 28 2019

  • Automatically select the deprecated OpenID server when authenticating with user name and password.

0.1.23 Jun 27 2019

  • Don’t show cluster admin credentials in the debug log.

0.1.22 Jun 27 2019

  • Don’t send warnings about toke issuer when no tokens are used.

  • Fix the names of the methods used to set the V values of the glog logger.

0.1.21 Jun 26 2019

  • Added methods to get connection attributes like token URL, client identifier, etc.

0.1.20 Jun 26 2019

  • Switch from developers.redhat.com to sso.redhat.com.

0.1.19 Jun 25 2019

  • Added GetMethod and GetPath methods to HTTP requests.

  • Added Header method to HTTP responses.

0.1.18 Jun 21 2019

  • Added support for the expiration_timestamp attribute of the Cluster type.

0.1.17 Jun 20 2019

  • Added support for the name attribute of the Dashboard type.

  • Added to lists a new Get method to get elements by index.

0.1.16 Jun 19 2019

  • Added to response types getter methods that return the value of the parameter and a boolean flag that indicates if there is actually a value.

0.1.15 Jun 19 2019

  • Add support for the versions collection.

0.1.14 Jun 4 2019

  • Redact sensitive fields in debug logs.

  • Don’t crash when there is no response.

0.1.13 May 22 2019

  • Added support for building objects with attributes that are lists of structs.

0.1.12 May 20 2019

  • Added support for deleting subscriptions.

  • Added Prometheus metrics.

0.1.11 May 15 2019

  • Increase token slack to one minute.

0.1.10 May 8 2019

  • Improved support for contexts, adding the BuildContext, TokensContext and SendContext methods.

Important
This version breaks backwards compatibility in the Logger interface, as all the methods require now a first ctx parameter.

0.1.9 May 3 2019

  • Added cluster credentials resource.

0.1.8 May 2 2019

  • Moved basic cluster metrics to the metrics attribute.

  • Added Empty method to lists and struct typess.

0.1.7 May 1 2019

  • Always close connections used to request access tokens.

0.1.6 Apr 23 2019

  • Add typed interface.

0.1.5 Apr 17 2019

  • Changed package path to github.com/openshift-online/uhc-sdk-go.

0.1.4 Apr 3 2019

  • Don’t panic when no refresh token is provided.

0.1.3 Mar 27 2019

  • Don’t close body in round tripper.

0.1.2 Mar 23 2019

  • Add support for offline access tokens.

0.1.1 Jan 25 2019

  • Change the glog logger so that it uses --v=0 for errors, warnings and information messages and --v=1 for debug messages.

0.1.0 Jan 24 2019

  • Renamed the project from api-client to uhc-sdk.

  • Moved the command line tool to a new uhc-cli project.

0.0.13 Jan 24 2019

  • Add context and timeout parameters to all requests.

  • Scrub password from debug log.

0.0.12 Dec 19 2018

  • Add TrustedCAs parameter to the connection builder.

0.0.11 Dec 17 2018

  • Check that T is passed to the testing logger.

0.0.10 Nov 27 2018

  • Implement terminal check correctly for macOS.

0.0.9 Nov 22 2018

  • Don’t include the testing logger in the binary.

  • Added support for printing refresh tokens.

  • Added support for setting the OpenID scopes.

  • Added a new StdLogger that sends log messages to the standard output and error streams.