mirror of
https://github.com/Unleash/unleash.git
synced 2025-11-10 01:19:53 +01:00
This commit changes the features-tables:
- drop columns 'strategy' and 'parameters'
- add column 'strategies' of type json.
- migrates existing strategy-mappings in to the new format.
The idea is that the 'strategies' column should contain a json-array
of strategy-configuration for the toggle:
```
[{
"name" : "strategy1",
"parameters": { "name": "vale" }
}]
```
To make sure to not break exiting clients the api is extended with a
mapping layer (adding old fields to the json-respons, and mapping
to the new format on create/update a feature toggle.
this commit is first step in solving #102
14 lines
367 B
SQL
14 lines
367 B
SQL
--create old columns
|
|
ALTER TABLE features ADD "parameters" json;
|
|
ALTER TABLE features ADD "strategy_name" varchar(255);
|
|
|
|
--populate old columns
|
|
UPDATE features
|
|
SET strategy_name = f.strategies->0->>'name',
|
|
parameters = f.strategies->0->'parameters'
|
|
FROM features as f
|
|
WHERE f.name = features.name;
|
|
|
|
--drop new column
|
|
ALTER TABLE features DROP COLUMN "strategies";
|