3 All notable changes to this project will be documented in this file.
5 The format is based on [Keep a Changelog](http://keepachangelog.com/)
6 and this project adheres to [Semantic Versioning](http://semver.org/).
11 * Add HTTP support using Flask/flask-restplus
12 * Add APIs for component (list, show, add, update, status change)
13 * Add APIs for data format (list, show, add, update, status change)
14 * Change the default value for `enforce_image` from true to false
15 * Enhance Docker image creation to generate the dcae-cli configuration at runtime rather than at build time
16 * Fix format_description to handle no description case
17 * Add filtering by name, version for GET /components
21 * Fix Format class definition of "description" to match JSON schema
25 * Upgrade to use docker 4.x.x from docker-py 1.x.x
29 * Change to policy reconfiguration functions to pass consul_host as a parameter
33 * Add Policy Configuration Support.
34 * Update and improve the Help Text that is displayed to the user.
35 * Component Spec schema additions for parameters section (policy, volumes).
36 * Component Spec schema updates to make the following required: (designer_editable, sourced_at_deployment, policy_editable).
40 * Fix dependency conflict with python-consul
41 * Fix psycopg2 warning by requiring psycopg2-binary
42 * Use Docker client from env when checking images
50 * Make server url (url to webserver that has static artifacts like json schemas) a configuration parameter
51 * Seeding configuration is no longer a fatal issue
52 * Setup database connection via manual user inputs if seed config not there
53 * Seeding profiles is no longer a fatal issue
54 * Dynamically fetch Docker login credentials from Consul to use to authenticate when creating Docker client.
55 * Make docker login key into a configuration param
56 * Clean up the hard coupling to the user configuration particularly in the discovery module
60 * Add data format generate command
61 * Fix issue with data router config keys
65 * Improve error message when inputs map is missing item. Show the specific parameters that are causing issues.
69 * Enhance to support parameters that are sourced at deployment
70 * Provide new command line arg --inputs-file
71 * Use inputs file to bind values to generated configuration for parameters that have been specified to be `sourced_at_deployment` true.
75 * Rip out Docker related code and use common python-dockering library
76 - Using 1.2.0 of python-dockering supports Docker exec based health checks
77 * Add support for volumes
78 * Add support for special DNS configuration in Docker containers to enable use of Consul DNS interface
82 * Use port mappings from component spec when running Docker containers
86 * Define the data structure for the input dmaap map items for data router that are passed in `--dmaap-file`. Enhance the json schema.
87 * Create the appropriate delivery url
88 * Enhance spec validation for cdap. Throw error when cdap specs have data router subscribes.
89 * Verify container is up in order to construct and to display data router subscriber delivery urls
93 * Define the data structure for the input dmaap map items that are passed in `--dmaap-file`. Create and use json schema for validation and applying defaults.
94 * Group config keys by `streams_publishes`, `streams_subscribes`, and `services_calls` in generating the application config for both Docker and CDAP
98 * Fix issue where components with dashes can't be found when running components that depend upon them. This one addressed the issue in the catalog and in the config creation part of discovery.
99 * Fix misleading "missing downstream component" warning that should be an error.
103 * Fix issue where components with dashes can't be found when running components that depend upon them.
104 EDIT: This one addressed the issue in the catalog
108 * Enhance the `component dev` command to print all the environment variables needed to work with the platform for development
109 * Display the component type in the `catalog list` view
113 * Add fields `cli_version` and `schema_path` to both the components and data formats tables to be used as metadata which can be used for debugging.
117 * (Re)Initialize both config and profiles by first grabbing files from Nexus
118 * Change `--reinit` to be eager and to be used to reinit config and profiles
119 * Remove *default* profile
120 * Replace the use of backports.tempfile with a combo of pytest `tmpdir` and `monkeypatch`
124 * Update sqlalchemy and catalog to support postgres and remove mysql support. Still compatible with sqlite.
125 * Add the `catalog` command used to tap into the shared catalog
126 * Change the `component` and the `data_format` command to be for the particular user of the dcae-cli
127 * Changes to support component spec v3: folding of the auxiliary specs into the component spec and adding of the property artifacts
128 * Add the ability to publish components and data formats
132 * Enhance `component run` to take in dmaap json using the `--dmaap-file` option. This is used to generate configuration that will provide client-side dmaap configuration.
136 * Enhance `component dev` to take in dmaap json using the `--dmaap-file` option. This is used to generate configuration that will provide client-side dmaap configuration.
137 * Make json schema remote file paths configurable.
141 * Enhance component list view to show running instances. The standard view shows number of deployments associated with a component and an expanded view that show details of those deployments.
145 * Fix queries to find unhealthy and defective instances to force dashes to be dots to ensure proper matching
149 * Expand the undeploy command to include undeploying defective instances
150 * Remove suffix from name to fix mis-naming
154 * Go back to setting of uid, expose setting of db url
155 * Add ability to *reinit* configuration via `--reinit`
159 * Make CDAP Parameters follow parameters definitions