Skip to content

Commit a176211

Browse files
authored
Corrections to LD migration docs (#539)
* Swap step 2 and 3 * Turn mentions of ConfigCat Dashboard into links + minor corrections * Improve limit exceeded message
1 parent 2850a34 commit a176211

File tree

2 files changed

+76
-73
lines changed

2 files changed

+76
-73
lines changed

website/docs/advanced/migration-from-ld-translation.mdx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,9 @@ The tables below show the possible translation issues.
104104
### Limitations
105105

106106
:::info
107-
Usually these issues arise when you are on a lower plan, and hitting a subscription limit. If this prevents you from
108-
migrating to ConfigCat, feel free to <a href="https://configcat.com/support/?prefilled=ld-import-limit" target="_blank">contact us</a>.
107+
Usually these issues arise when you are on a lower plan, and hitting a subscription limit. If that's the case,
108+
feel free to <a href="https://configcat.com/support/?prefilled=ld-import-limit" target="_blank">contact us</a>,
109+
we are happy to raise your limits temporarily so you can fully explore the product and evaluate it at your pace.
109110
:::
110111

111112
<table>

website/docs/advanced/migration-from-ld.mdx

Lines changed: 73 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ process while providing information on the technical differences between the two
1414
Migration can be done on a LaunchDarkly project basis, and migration of a project usually consists of the following
1515
three steps:
1616
1. Migrating LaunchDarkly feature flags and segments to ConfigCat
17-
1. Migrating LaunchDarkly teams and permissions to ConfigCat
1817
1. Adjusting the code of your applications to use ConfigCat instead of LaunchDarkly
18+
1. Migrating LaunchDarkly teams and permissions to ConfigCat
1919

2020
ConfigCat provides a wizard-like tool that is able to do the heavy lifting for step 1. However, there is currently
2121
no automation for step 2 and 3. So please expect these steps to require some manual work.
@@ -37,8 +37,8 @@ organization that you want to host the products corresponding to the projects yo
3737
You will also need to have the Organization Admin permission in that ConfigCat organization to be able to create
3838
products.
3939

40-
* If the target ConfigCat organization does not exist yet, you can create one by <a target="_blank" href="https://app.configcat.com/auth/signup">
41-
signing up</a>. During the signup process, you will have the opportunity to create your own organization, in which
40+
* If the target ConfigCat organization does not exist yet, you can create one by
41+
<a target="_blank" href="https://app.configcat.com/auth/signup">signing up</a>. During the signup process, you will have the opportunity to create your own organization, in which
4242
you will have the Organization Admin permission by default.
4343
* Otherwise, you will need to get an invitation to the target ConfigCat organization, and after joining, you will
4444
need to request the Organization Admin permission.
@@ -57,8 +57,8 @@ behavior as closely as possible.
5757

5858
### Using the import tool
5959

60-
To launch the import tool, open the dropdown menu in the top left corner of the ConfigCat Dashboard, navigate to the
61-
Organization Overview page, then click the card labeled "Import from LaunchDarkly".
60+
To launch the import tool, open the dropdown menu in the top left corner of the [ConfigCat Dashboard](https://app.configcat.com/organization),
61+
navigate to the Organization Overview page, then click the card labeled "Import from LaunchDarkly".
6262

6363
<img alt="Launching the import tool" src="/docs/assets/migration-from-ld/launch-import-tool_192dpi.png" width="1366" height="768" decoding="async" loading="lazy" />
6464

@@ -172,71 +172,9 @@ In either case, it's highly recommended to download and go through the report. I
172172
issues, and also includes links to the original and imported entities, which can make it easier for you to look into and
173173
resolve the issues.
174174

175-
## Migrate LaunchDarkly teams and permissions to ConfigCat
176-
177-
At the moment, ConfigCat doesn't offer a tool or other automated solution for migrating your teams and permissions from
178-
LaunchDarkly since there are fundamental differences between the user management and permission systems of the two
179-
services.
180-
181-
LaunchDarkly allows more fine-grained access control over resources, while ConfigCat's permission system was designed to
182-
be simpler and easier to understand, at the expense of fewer possibilities for fine-tuning access control.
183-
184-
Therefore, we can only give you some pointers, but this task will inevitably require some effort on your part.
185-
186-
As the first step, we recommend getting familiar with ConfigCat's user management and permission system. You
187-
can find the basic concepts in the following guides:
188-
* [Organization & Roles](../../organization)
189-
* [Team Management Basics](../team-management/team-management-basics)
190-
191-
As you can see from this, ConfigCat doesn't use the concept of teams and roles of LaunchDarkly. You can't define such
192-
entities at the organization level, but *permission groups* per product instead.
193-
194-
### Map LaunchDarkly roles to ConfigCat permission groups
195-
196-
Permission groups roughly correspond to LaunchDarkly roles, with a few key differences:
197-
* They are scoped to the product where they are defined.
198-
* There are no [built-in roles](https://launchdarkly.com/docs/home/account/built-in-roles) like Reader or Writer. To
199-
recreate these in ConfigCat, you will need to define the corresponding permission groups in each relevant product.
200-
However, LaunchDarkly's Admin and Owner roles can't really be represented using permission groups. ConfigCat supports
201-
the concept of [Organization Admin role](../../organization/#organization-admin-role) but it's an organization-level
202-
permission. You can assign this to users on invite or on your organization's "Members & Roles" page as shown in the
203-
next section.
204-
* To migrate [custom roles](https://launchdarkly.com/docs/home/account/custom-roles) to ConfigCat, you will need to
205-
translate the [policies](https://launchdarkly.com/docs/home/account/role-concepts#policies) they define to the fixed
206-
set of permissions offered by ConfigCat permission groups. Obviously, this won't be entirely possible in every case.
207-
208-
With this in mind, create the necessary permission groups in your products, based on the roles defined in your
209-
LaunchDarkly organization.
210-
211-
To set up permission groups for a product, open the ConfigCat Dashboard, select the product on the sidebar, and choose
212-
"Permission Groups" in the top menu.
213-
214-
<img alt="Launching the import tool" src="/docs/assets/migration-from-ld/permission-groups_192dpi.png" width="1366" height="768" decoding="async" loading="lazy" />
215-
216-
### Invite users to ConfigCat and assign them to permission groups
217-
218-
Permission groups also act as per-product teams. Once created, you can assign users to them, who will then have the
219-
permissions specified by the permission group. (A user can only be a member of a single permission group at a time
220-
though.) This is how you map your LaunchDarkly teams to ConfigCat.
221-
222-
However, users don't yet exist in ConfigCat at this point. You need to invite them to ConfigCat first. To do this,
223-
follow [these instructions](../team-management/team-management-basics/#invite-others-to-collaborate).
224-
225-
When inviting users, you will need to choose a product, more specifically, a permission group to invite them to.
226-
This means that they will be automatically assigned to the specified permission groups after signing up. So,
227-
as you have already created the permission groups, ideally you can immediately invite your users to the right
228-
permission groups. (Of course, you may need to do this in batches.)
229-
230-
It can easily happen that you want to add a user to more than one product. In such cases, invite the user to
231-
one of the products (it doesn't matter which one), then, after they've signed up, navigate to the "Members & Roles" page of your
232-
organization, and assign them to the other products too, using the "Change roles" feature of the "Members & Roles"
233-
table.
234-
235-
<img alt="Launching the import tool" src="/docs/assets/migration-from-ld/member-and-roles_192dpi.png" width="1366" height="768" decoding="async" loading="lazy" />
236-
237175
## Adjust the code of your applications
238176

239-
The final step in the migration process is to adjust the code of your applications to use ConfigCat instead of
177+
The next step in the migration process is to adjust the code of your applications to use ConfigCat instead of
240178
LaunchDarkly to evaluate your feature flags.
241179

242180
This will also require more or less manual work, depending on what API your applications currently use for feature flag
@@ -304,8 +242,9 @@ Let's see now step by step how to convert this code to ConfigCat:
304242
```
305243
1. Replace the LaunchDarkly SDK key with the ConfigCat one.
306244
307-
You can obtain it from the ConfigCat Dashboard, by selecting the config containing the imported feature flag on the
308-
sidebar, and clicking the "VIEW SDK KEY" button in the top right corner of the page.
245+
You can obtain it from the [ConfigCat Dashboard](https://app.configcat.com/organization), by selecting the config
246+
containing the imported feature flag on the sidebar, and clicking the "VIEW SDK KEY" button in the top right corner
247+
of the page.
309248
1. Instead of a LaunchDarkly client instance, obtain a ConfigCat one:
310249
311250
```js
@@ -505,4 +444,67 @@ you can integrate such tools with ConfigCat to replicate LaunchDarkly's analytic
505444
* [Amplitude](../../integrations/amplitude#experiments)
506445
* [Google Analytics](../../integrations/google-analytics)
507446
* [Mixpanel](../../integrations/mixpanel#experiments)
508-
* [Twilio Segment](../../integrations/segment#analytics)
447+
* [Twilio Segment](../../integrations/segment#analytics)
448+
449+
## Migrate LaunchDarkly teams and permissions to ConfigCat
450+
451+
To complete the migration process, you will also need to migrate your teams and permissions from LaunchDarkly.
452+
453+
At the moment, ConfigCat doesn't offer a tool or other automated solution for this task since there are fundamental
454+
differences between the user management and permission systems of the two services.
455+
456+
LaunchDarkly allows more fine-grained access control over resources, while ConfigCat's permission system was designed to
457+
be simpler and easier to understand, at the expense of fewer possibilities for fine-tuning access control.
458+
459+
Therefore, we can only give you some pointers, but this task will inevitably require some effort on your part.
460+
461+
As the first step, we recommend getting familiar with ConfigCat's user management and permission system. You
462+
can find the basic concepts in the following guides:
463+
* [Organization & Roles](../../organization)
464+
* [Team Management Basics](../team-management/team-management-basics)
465+
466+
As you can see from this, ConfigCat doesn't use the concept of teams and roles of LaunchDarkly. You can't define such
467+
entities at the organization level, but *permission groups* per product instead.
468+
469+
### Map LaunchDarkly roles to ConfigCat permission groups
470+
471+
Permission groups roughly correspond to LaunchDarkly roles, with a few key differences:
472+
* They are scoped to the product where they are defined.
473+
* There are no [built-in roles](https://launchdarkly.com/docs/home/account/built-in-roles) like Reader or Writer. To
474+
recreate these in ConfigCat, you will need to define the corresponding permission groups in each relevant product.
475+
However, LaunchDarkly's Admin and Owner roles can't really be represented using permission groups. ConfigCat supports
476+
the concept of [Organization Admin role](../../organization/#organization-admin-role) but it's an organization-level
477+
permission. You can assign this to users on invite or on your organization's "Members & Roles" page as shown in the
478+
next section.
479+
* To migrate [custom roles](https://launchdarkly.com/docs/home/account/custom-roles) to ConfigCat, you will need to
480+
translate the [policies](https://launchdarkly.com/docs/home/account/role-concepts#policies) they define to the fixed
481+
set of permissions offered by ConfigCat permission groups. Obviously, this won't be entirely possible in every case.
482+
483+
With this in mind, create the necessary permission groups in your products, based on the roles defined in your
484+
LaunchDarkly organization.
485+
486+
To set up permission groups for a product, open the [ConfigCat Dashboard](https://app.configcat.com/organization),
487+
select the product on the sidebar, and choose "Permission Groups" in the top menu.
488+
489+
<img alt="Launching the import tool" src="/docs/assets/migration-from-ld/permission-groups_192dpi.png" width="1366" height="768" decoding="async" loading="lazy" />
490+
491+
### Invite users to ConfigCat and assign them to permission groups
492+
493+
Permission groups also act as per-product teams. Once created, you can assign users to them, who will then have the
494+
permissions specified by the permission group. (A user can only be a member of a single permission group at a time
495+
though.) This is how you map your LaunchDarkly teams to ConfigCat.
496+
497+
However, users don't yet exist in ConfigCat at this point. You need to invite them to ConfigCat first. To do this,
498+
follow [these instructions](../team-management/team-management-basics/#invite-others-to-collaborate).
499+
500+
When inviting users, you will need to choose a product, more specifically, a permission group to invite them to.
501+
This means that they will be automatically assigned to the specified permission groups after signing up. So,
502+
as you have already created the permission groups, ideally you can immediately invite your users to the right
503+
permission groups. (Of course, you may need to do this in batches.)
504+
505+
It can easily happen that you want to add a user to more than one product. In such cases, invite the user to
506+
one of the products (it doesn't matter which one), then, after they've signed up, navigate to the "Members & Roles" page of your
507+
organization, and assign them to the other products too, using the "Change roles" feature of the "Members & Roles"
508+
table.
509+
510+
<img alt="Launching the import tool" src="/docs/assets/migration-from-ld/member-and-roles_192dpi.png" width="1366" height="768" decoding="async" loading="lazy" />

0 commit comments

Comments
 (0)