1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-12-22 19:07:54 +01:00
Commit Graph

124 Commits

Author SHA1 Message Date
Christopher Kolstad
c17a1980a2
Add service layer
This simplifies stores to just be storage interaction, they no longer react to events.

Controllers now call services and awaits the result from the call.

When the service calls are returned the database is updated.
This simplifies testing dramatically, cause you know that your state is
updated when returned from a call, rather than hoping the store has
picked up the event (which really was a command) and reacted to it.

Events are still emitted from eventStore, so other parts of the app can
react to events as they're being sent out.

As part of the move to services, we now also emit an application-created
event when we see a new client application.

Fixes: #685
Fixes: #595
2021-01-21 10:59:19 +01:00
Christopher Kolstad
43801f1f13
Add Tags and tag types
- First iteration of api for tags and tag-types
- Documentation in place
- Adds three new tables
   - tag_types
   - tags
   - feature_tag
- Tagging a feature is adding a row in the feature_tag
  join table

* #665

Co-authored-by: Simen Bekkhus <sbekkhus91@gmail.com>
Co-authored-by: Ivar Conradi Østhus <ivarconr@gmail.com>
2021-01-14 13:09:05 +01:00
Ivar Conradi Østhus
a1ac0249a9 fix: cleanup test console output 2021-01-06 18:06:56 +01:00
Ivar Conradi Østhus
e279a700b8 fix: add unit test for lastSeenAt being updated 2020-12-22 11:05:00 +01:00
Ivar Conradi Østhus
834010982e fix: DROP schema before create 2020-12-22 11:05:00 +01:00
Ivar Conradi Østhus
cdfba8f7b1 feat: Adds last-seen dat on toggles
When an application updates metrics for a toggle we now
stores the timestamp on the toggle when it was last seen
used by an application. This will make it much easier to
detect toggles not in use anymore.

closes #642
2020-12-22 11:05:00 +01:00
Ivar Conradi Østhus
79fc089a35 fix: stateService undefined 2020-12-17 19:43:01 +01:00
Ivar Conradi Østhus
b644071a34 feat: Add technical support for projects 2020-11-23 21:47:51 +01:00
Ivar Conradi Østhus
9c384dfae7
feat: Allow migration style import (#645) 2020-11-03 14:56:07 +01:00
Ivar Conradi Østhus
ce0c66d127 fix: add TTL to sessions 2020-10-02 16:32:05 +02:00
Ivar Conradi Østhus
0204a52d9b fix: failing tests for 409 2020-09-25 22:31:35 +02:00
Ivar Conradi Østhus
4a3c136167
feat: Remove applications (#635) 2020-09-25 09:39:12 +02:00
Ivar Conradi Østhus
6568457ed8
feat: Add support for toggle types (#618) 2020-08-06 11:18:52 +02:00
Ivar Conradi Østhus
91eab0550c fix: exporting only feature toggles as yaml should not crash
fixes #615
2020-07-30 23:57:17 +02:00
Ivar Conradi Østhus
5675f99e78
fix: add user-store (#590) 2020-05-12 23:05:26 +02:00
Ivar Conradi Østhus
d01c9d2dac
fix: use airbnb lint rules directly (#583)
This drops usage of finn-eslint rules as they are no
longer maintained.
2020-04-14 22:29:11 +02:00
Ivar Conradi Østhus
b912768923
feat: move secrets to settings (#577)
* feat: move secrets to settings

* feat: Add better support for detailed db options.

Added db field in options to allow better control of
db-options. Especially important to allow special chars
in database password which might lead to an invaid url
when defined as a database-url.

* fix: integrate logger with knex logger

* fix: remove secret option from all examples

* fix: more options.js unit tests

* fix: added settings-store e2e tests
2020-04-13 22:38:46 +02:00
Ivar Conradi Østhus
7a410508cb
feat: api supports context fields (#564)
* feat: api supports context fields

* fix: typo for cotnext group in event-differ
2020-02-27 21:26:18 +01:00
Ivar Conradi Østhus
d1fd5d3900 fix: e2e tests should only set up one database per test file (#504)
* fix: e2e tests should only set up one database per test file

* fix: Allow e2e-tests to reset db content
2020-02-20 08:34:29 +01:00
ivaosthu
704c3afc15 Revert "debug: test not destroying db in test-setup"
This reverts commit 9fe70f84dc.
2020-02-20 08:34:29 +01:00
ivaosthu
96d5413b70 debug: test not destroying db in test-setup 2020-02-20 08:34:29 +01:00
ivaosthu
a9e215bfca revert: destroy db at test-init 2020-02-20 08:34:29 +01:00
ivaosthu
d9b2c6d1cb chore: do not destroy db on startup 2020-02-20 08:34:29 +01:00
ivaosthu
d01fbdeac4 chore: remove old test-setup hacks 2020-02-20 08:34:29 +01:00
ivaosthu
3e4ab827d3 chore: add more logging if test-db destroy fails 2020-02-20 08:34:29 +01:00
ivaosthu
3cb4e1b57f chore: test db-pool on travis 2020-02-20 08:34:28 +01:00
ivaosthu
ec4d169874 debug: travis with postgres 10 2020-02-20 08:34:28 +01:00
ivaosthu
f62d992be7 chore: debugging travis by ignoring import tests 2020-02-20 08:34:28 +01:00
ivaosthu
e5d4cec107 chore: increase test-logging 2020-02-20 08:34:28 +01:00
Moritz Johner
d0f57a68b2 feat: add db query latency metrics (#473)
* feat: add db metrics
Signed-off-by: Moritz Johner <beller.moritz@googlemail.com>

* fix: use base unit

Signed-off-by: Moritz Johner <beller.moritz@googlemail.com>
2020-02-20 08:34:27 +01:00
Ivar Conradi Østhus
62b97ca828 fix: none authentication should have a mock user (#449)
This also fix the bug introduces where authentication mode triggers readOnly mode in the UI.
2020-02-20 08:34:25 +01:00
ivaosthu
ccaab0c47b fix: LogProvider as option injected to unleash.
Instead of instructing users to do static calls
in to Unleash, she should instead be allwed to
specify the log provider as an option to Unleash.

This commit introduces the "getLogger" option,
a function responsible for creating a logger.
2020-02-20 08:34:24 +01:00
Benjamin Ludewig
a06d2c04bb Refactored state-service, schemas, added e2e tests #395 2020-02-20 08:34:22 +01:00
Benjamin Ludewig
9065c5ee88 feat: Added import & export through stateService #395 2020-02-20 08:34:22 +01:00
ivaosthu
f51500ec78 fix: override field changed name to contextName 2020-02-20 08:34:20 +01:00
ivaosthu
df5ef09008 feat: Add suppport for variant overrides 2020-02-20 08:34:20 +01:00
ivaosthu
c25e994322 fix: Update variant protocol 2020-02-20 08:34:20 +01:00
ivaosthu
82bf748341 fix: variant tests more stable 2020-02-20 08:34:20 +01:00
Juan Hoyos
3623052c36 feat: Added feature toggle variants 2020-02-20 08:34:20 +01:00
Benjamin Ludewig
abe4f8cf16 Use full name instead of perms, 403 error message now includes expected permission 2020-02-20 08:34:19 +01:00
Benjamin Ludewig
df7509e381 feature: Add action specific user permissions 2020-02-20 08:34:19 +01:00
ivaosthu
e256db29a5 fix(http-status): Client errors should use 400 status codes 2020-02-20 08:34:19 +01:00
ivaosthu
cdf623e70f chore: Upgrade ava to 1.0.1 2020-02-20 08:34:18 +01:00
ivaosthu
a7382419d5 chore(modernize): Remove unused files 2020-02-20 08:34:17 +01:00
ivaosthu
8a53d8dca2 chore: Fix formatting all the things 2020-02-20 08:34:15 +01:00
Ivar Conradi Østhus
054e87cf4a Include user information on revive
Closes #327
2020-02-20 08:34:11 +01:00
ivaosthu
c544f81fba Bugfix: more informative name validation errors
Will know tell the user if the toggle name is already
in use by an active feature toggle or an archived toggle.

Also brings lates unleash-frontend fix, which prevents an
invalid form from submitting.

closes: #290, #291
2020-02-20 08:34:07 +01:00
ivaosthu
d7c1360cc7 A bit of house-keeping 2020-02-20 08:34:07 +01:00
ivaosthu
f4feab89f3 Implement authentication support for Unleash UI.
Closes: #261, #233, #232, #231
2020-02-20 08:34:06 +01:00
ivaosthu
1695a35555 Add unit tests for archived toggles 2020-02-20 08:34:06 +01:00