-
Notifications
You must be signed in to change notification settings - Fork 0
Fill gaps from assistant conversations: step-by-step Flightcontrol migration #44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 2 commits
cefcefd
1b18125
48512f5
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -132,9 +132,46 @@ Your organization has a module catalog that has our standard library of modules | |
| | **S3 bucket**<br />`s3` | `rvn-s3` | Buckets with policies, encryption, versioning, and lifecycle rules. | | ||
| | **Job Scheduler**<br />`scheduler` or `fargate-scheduler` | Not available yet | Job scheduler support is still coming. | | ||
|
|
||
| ## Migrating services | ||
| ## Step-by-step migration | ||
|
|
||
| There is no one-click or automatic migration from Flightcontrol to Ravion. You recreate your config in `ravion.yaml`, provision or import each module in Ravion, and cut traffic over yourself. Migration is piecemeal. You move one service at a time and both platforms keep running side by side until you're done. | ||
|
|
||
| <Steps> | ||
| <Step title="Complete the human setup in Ravion"> | ||
| Sign in to [Ravion](https://app.ravion.com) with your Flightcontrol credentials, then connect your AWS account and Git repository. Full checklist in [Start here](/start-here#human-setup). | ||
|
|
||
| Ravion and Flightcontrol share the same organization and memberships, but all other data is separate. | ||
| </Step> | ||
|
|
||
| <Step title="Draft your ravion.yaml with an AI agent"> | ||
| Give your agent the [Docs MCP server](/mcp/overview), then paste your existing Flightcontrol config (for example `flightcontrol.json`) into the chat and ask the agent to produce a `ravion.yaml` draft. | ||
|
|
||
| Point the agent at [Start here (human + agent)](/start-here) and this page so it has the mapping table above and the [project config file workflow](/config-as-code/project-config-file#agent-tips). | ||
|
|
||
| Verify the draft against the mapping table before applying anything. `rvn-ecs-web` and `rvn-ecs-worker` both require an `rvn-ecs-cluster`, and `rvn-cloudfront` is now opt-in per service instead of always-on. | ||
| </Step> | ||
|
|
||
| Log into [Ravion](https://app.ravion.com) with your Flightcontrol credentials. | ||
| <Step title="Decide provision vs. import for each service"> | ||
| - **Provision new in Ravion** for ECS services and static sites. It's easier to cut traffic over by updating DNS than to import running load balancers and CloudFront distributions. | ||
| - **Import existing** stateful resources like RDS, ElastiCache, S3, and CloudFront distributions you want to keep. Follow [Import into a standard module](/migrate/import-into-standard-module) or [Import into a Terraform Stack](/migrate/import-into-terraform-stack) — both include agent prompts. | ||
| </Step> | ||
|
|
||
| <Step title="Apply the config and set up pipelines"> | ||
| Apply `ravion.yaml` with a dry run first, then for real. Ravion provisions the new infrastructure alongside your Flightcontrol resources in the same AWS account. Add pipeline config so builds and deploys run on push. See [Project config file](/config-as-code/project-config-file) and [Pipelines](/pipelines/overview). | ||
| </Step> | ||
|
|
||
| <Step title="Cut traffic over one service at a time"> | ||
| Deploy the service in Ravion, verify it's healthy, then update DNS to point at the Ravion load balancer or CloudFront distribution. Leave the Flightcontrol service running until you've confirmed the cutover. | ||
|
|
||
| **Do not redeploy in Flightcontrol during migration.** New deploys go through Ravion from this point on. The Flightcontrol service keeps serving old traffic until DNS moves and you delete it. | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. change this to only be for things that are imported. other like ecs can continue to be deployed via FC, no problem.
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Scoped it to imported resources only; provisioned-new services (ECS, static sites) can keep deploying via Flightcontrol until DNS moves. |
||
| </Step> | ||
|
|
||
| <Step title="Delete the migrated Flightcontrol services"> | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. we need a big warning here to not delete an imported service from FC, contact support to have us remove it from your account, we are working on self serve delete from FC without destroy
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Added a Warning in that step: never delete an imported service in Flightcontrol (it destroys the AWS resources Ravion now manages) — contact support to have it removed without destroy, self-serve coming.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. but remove the stop deploying anything, that not accurate |
||
| Once each service is fully cut over, remove it from Flightcontrol so you're not paying for duplicate infrastructure. Stateful resources you imported into Ravion are already shared and don't need to be recreated. | ||
| </Step> | ||
| </Steps> | ||
|
|
||
| ## Migrating services | ||
|
|
||
| **Ravion can be used alongside Flightcontrol at the same time**. They both use the same Organization and memberships, but all other data is separate. So you can migrate piecemeal, service by service, instead of all at once. | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
remove this line
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed.