syndesisio / syndesis-rest

The API for Syndesis - a flexible, customizable, cloud-hosted platform that provides core integration capabilities as a service. It leverages Red Hat's existing product architecture using OpenShift Online/Dedicated and Fuse Integration Services.
https://syndesis-staging.b6ff.rh-idev.openshiftapps.com/api/v1/
Apache License 2.0
6 stars 17 forks source link

Add API to manage tech extensions #758

Closed nicolaferraro closed 7 years ago

nicolaferraro commented 7 years ago

This adds a API to manage tech extensions.

Supported operations are:

API are published under "/api/v1beta1". Beta api are disabled by default. They can be enabled with toggles (env var on Deployment):

FEATURES_API_V1BETA1_ENABLED=true
FEATURES_FILESTORE_ENABLED=true

I've put a toggle also for the "v1" api, but it's enabled by default.

When a binary artifact is uploaded, it's stored in "/extensions/[id]" into the filestore (same id of the entity in the jsondb). The artifact can be retrieved later (not implemented yet) by ID or GAV. A retrieval by GAV will require first a lookup into the jsondb.

Fixed some issues found with the filestore now that it's integrated in the loop (initialization on a dirty db was not working, added auto-detection of DB type, fixed PG connection management).

Added also IT tests (and done manual testing on Openshift).

jimmibot commented 7 years ago

@nicolaferraro, thanks! @KurtStam, please review this.

nicolaferraro commented 7 years ago

np, closing this and opening separate PRs