- Adding, updating and renaming environments are meant to be
enterprise only features, as such, this PR moves these operations out
of this server
- We still keep sortOrder updating, toggling on/off and getting one,
getting all, so we can still work with environments in the OSS version
as well.
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
Adds environment support
This PR adds environments as a first-class concept in Unleash.
It necessitated a full rewrite on how we connect feature <-> strategy, as well as a rethink on which levels environments makes sense.
This enables PUTs on strategy configurations for a feature, since all strategies now have ids.
This also updates export/import format. The importer handles both formats, but export is no longer possible in version 1 of the export format, only in version 2, with strategy configurations for a feature as a separate object.
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
Co-authored-by: Ivar Conradi Østhus <ivarconr@gmail.com>
* feat: setup user feedback service
* fix: map rows
* feat: add tests
* wrap service calls in try catch
* fix: add test for retrieving feedback on user
* feat: add fake user feedback store
* fix: check ffor feedback id in controller
* feat: add test for bad request
* chore: expose an endpoint to really delete a toggle
- To provide a way to run end-to-end tests without cluttering
our demo instance with way too many feature-toggles, making this
endpoint available will allow end-to-end tests to clean up properly
after themselves
feat: Add Reset token functionality
This allows admin users to create a reset token for other users. Thus allowing resetting their password.
Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
fixes: #778
* feat: Handle database connection errors with 500
- If database goes away while unleash is running, unleash now stays
running, but all api endpoints will return 500.
- This includes our health endpoint, which allows k8s or similar
orchestrators to decide what should be done, rather than Unleash
terminating unexpectedly
This sets up the typescript compiler.
Allowing gradual migration to typescript.
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
Co-authored-by: Ivar Conradi Østhus <ivarconr@gmail.com>
Co-authored-by: Fredrik Oseberg <fredrik.oseberg@getunleash.ai>
Co-authored-by: Clint Checkett <clintchecketts@churchofjesuschrist.org>
fixes: #676