Flipt aims to provide an upgrade process which requires zero downtime with minimal steps.
Currently, Flipt supports four relational database backends and uses a migration process to manage their schema.Each new release of Flipt might include updates to database migrations.
The release notes on GitHub for each Flipt release should signify whether it does or not.You can find the releases and release notes on GitHub.Before upgrading your Flipt instances to a new version, you may need to run the flipt migrate command against your database.The Flipt binary is self-contained and has all necessary migrations baked in.
You should use the version of Flipt you’re attempting to upgrade to.
If you attempt to upgrade to a new version of Flipt before running migrations, then Flipt will fail fast on startup with a message like the following.
migrations pending, please backup your database and run `flipt migrate`
We strongly recommend that you perform a backup of your Flipt database
before doing any migrations. While we strive to ensure that Flipt is error
free and production ready, we can’t guarantee perfection.
First, run flipt -v to see the version you have installed.
You want this to be the version you’re attempting to upgrade to.
Once you have identified the version you have installed is the target version you are upgrading to, you can run flipt migrate (In this instance I am upgrading to Flipt v1.20.0).
Now you can update your running instance(s) of Flipt to match the same version.
We design our migrations to be compatible with older Flipt server versions, so it’s safe for you to keep running Flipt while the migrations are run and after they have finished.
As previously mentioned, we recommend you backup your database before performing any upgrades.
Flipt doesn’t currently come with any built-in downgrade tooling.
Our suggestion, if you need to revert to an previous version of Flipt, is to restore your database using a backup from when it was backing the target older version.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Flipt","colors":{"primary":"#7C3AED","light":"#BA97F5","dark":"#4F3292"},"logo":{"light":"https://mintcdn.com/flipt/DEE1Qcfhk5tfKCOi/logo/light-logo.svg?fit=max\u0026auto=format\u0026n=DEE1Qcfhk5tfKCOi\u0026q=85\u0026s=a6aa20ecf9af822ec8f6786b13555d76","dark":"https://mintcdn.com/flipt/DEE1Qcfhk5tfKCOi/logo/dark-logo.svg?fit=max\u0026auto=format\u0026n=DEE1Qcfhk5tfKCOi\u0026q=85\u0026s=74c8d34f5f0e2577e2bfd72dbd3ea254"},"favicon":"https://mintcdn.com/flipt/DEE1Qcfhk5tfKCOi/favicon.svg?fit=max\u0026auto=format\u0026n=DEE1Qcfhk5tfKCOi\u0026q=85\u0026s=7aaeb0cac086fb85002ba070f5ddbc32","api":{"openapi":["https://raw.githubusercontent.com/flipt-io/flipt/main/openapi.yaml","https://raw.githubusercontent.com/flipt-io/flipt/refs/heads/v2/rpc/flipt/openapi.yaml","https://raw.githubusercontent.com/flipt-io/flipt/refs/heads/v2/rpc/v2/environments/openapi.yaml","https://raw.githubusercontent.com/flipt-io/flipt/refs/heads/v2/rpc/v2/evaluation/openapi.yaml"],"playground":{"display":"simple"},"mdx":{"auth":{"method":"bearer"},"server":"http://localhost:8080"}},"background":{"image":"https://mintcdn.com/flipt/VG7J2soXPDNctRM3/background.png?fit=max\u0026auto=format\u0026n=VG7J2soXPDNctRM3\u0026q=85\u0026s=5009659e8144412bf683a7e68d47c78c","color":{"dark":"#121212"}},"navbar":{},"footer":{"socials":{"website":"https://www.flipt.io/","twitter":"https://twitter.com/flipt_io","discord":"https://www.flipt.io/discord","github":"https://git.new/flipt"}},"seo":{"metatags":{"og:type":"website","og:site_name":"Flipt Docs"},"indexing":"all"},"integrations":{"ga4":{"measurementId":"G-Q8MF5LZSNS"}},"banner":{"content":"🎉 **New:** MCP server for Flipt v2. Let AI assistants manage and evaluate your feature flags. [Learn more](https://docs.flipt.io/v2/tooling/model-context-protocol).","dismissible":true},"contextual":{"options":["copy","view","mcp"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"flipt","hasAudioNarration":false,"actualSubdomain":"flipt","customDomains":["docs.flipt.io"],"gitSource":{"type":"github","owner":"flipt-io","repo":"docs","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"edits":true},"entitlements":{},"buildId":"6aedaafc7d3fe39d4f38346c","clientVersion":"0.0.4088","searchFilterCounts":[{"language":"default","tag":"v1","count":112},{"language":"default","tag":"Documentation","count":109},{"language":"default","tag":"API Reference","count":83},{"language":"default","tag":"v2","count":81},{"language":"default","tag":"Guides","count":25},{"language":"default","tag":"Configuration","count":23},{"language":"default","tag":"CLI","count":22},{"language":"default","tag":"Authentication","count":20},{"language":"default","tag":"Commands","count":20},{"language":"default","tag":"Operations Guides","count":17}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"v1/operations/upgrading","slug":"/v1/operations/upgrading","pageMetadata":{"title":"Upgrading","description":"This document describes how to upgrade Flipt.","href":"/v1/operations/upgrading"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"This document describes how to upgrade Flipt.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,..._provideComponents(),...props.components},{CodeBlock,Heading,Note,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Flipt aims to provide an upgrade process which requires zero downtime with minimal steps.\nCurrently, Flipt supports four relational database backends and uses a migration process to manage their schema.`}),`\n`,_jsx(_components.p,{children:`Each new release of Flipt might include updates to database migrations.\nThe release notes on GitHub for each Flipt release should signify whether it does or not.`}),`\n`,_jsxs(_components.p,{children:[`You can find the releases and release notes on `,_jsx(_components.a,{href:`https://github.com/flipt-io/flipt/releases`,children:`GitHub`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Before upgrading your Flipt instances to a new version, you may need to run the `,_jsx(_components.code,{children:`flipt migrate`}),` command against your database.`]}),`\n`,_jsx(_components.p,{children:`The Flipt binary is self-contained and has all necessary migrations baked in.\nYou should use the version of Flipt you’re attempting to upgrade to.`}),`\n`,_jsxs(Note,{children:[_jsx(_components.p,{children:`If you attempt to upgrade to a new version of Flipt before running migrations, then Flipt will fail fast on startup with a message like the following.`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:\"migrations pending, please backup your database and run `flipt migrate`\"})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]}),`\n`,_jsx(Heading,{level:`2`,id:`upgrade-process`,children:`Upgrade Process`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`We `,_jsx(_components.strong,{children:`strongly recommend`}),` that you perform a backup of your Flipt database\nbefore doing any migrations. While we strive to ensure that Flipt is error\nfree and production ready, we can’t guarantee perfection.`]})}),`\n`,_jsxs(_components.p,{children:[`First, run `,_jsx(_components.code,{children:`flipt -v`}),` to see the version you have installed.\nYou want this to be the version you’re attempting to upgrade to.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`13`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`13`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`$`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` flipt`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -v`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:` _____`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` _`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` _`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` _`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`|`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:` ___`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`|`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`_`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`_`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` __`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` |`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` |`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`_`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`|`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` |`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`_`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` |`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` |`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` |`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:` '_ \\\\| __|`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`| _| | | | |_) | |_`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`|_| |_|_| .__/ \\\\__|`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:` |_|`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`Version: 1.20.0`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`Commit: 5badad98844061a15c05bd6b21accde44ea7fcb5`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`Build Date: 2023-04-11T15:39:19Z`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`Go Version: go1.20.3`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Once you have identified the version you have installed is the target version you are upgrading to, you can run `,_jsx(_components.code,{children:`flipt migrate`}),` (In this instance I am upgrading to Flipt v1.20.0).`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`3`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`$`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` flipt`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` migrate`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`2023-04-13T15:35:17Z`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\tDEBUG`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\tusing`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` driver`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\t{\"driver\":`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"sqlite3\"}`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`2023-04-13T15:35:17Z`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\tDEBUG`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\tmigrations`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` complete`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Now you can update your running instance(s) of Flipt to match the same version.\nWe design our migrations to be compatible with older Flipt server versions, so it’s safe for you to keep running Flipt while the migrations are run and after they have finished.`}),`\n`,_jsx(Heading,{level:`2`,id:`downgrade-process`,children:`Downgrade Process`}),`\n`,_jsx(_components.p,{children:`As previously mentioned, we recommend you backup your database before performing any upgrades.\nFlipt doesn’t currently come with any built-in downgrade tooling.\nOur suggestion, if you need to revert to an previous version of Flipt, is to restore your database using a backup from when it was backing the target older version.`})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Upgrading","description":"This document describes how to upgrade Flipt.","href":"/v1/operations/upgrading"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Upgrade Process","slug":"upgrade-process","depth":2,"children":[]},{"title":"Downgrade Process","slug":"downgrade-process","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/flipt/40516028525ef955/reo.js"],"subdomain":"flipt","siteName":"Flipt","title":"Upgrading - Flipt","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2025-12-15T14:45:58.118Z","originalFileLocation":"v1/operations/upgrading.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"This document describes how to upgrade Flipt.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Flipt\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/flipt/h9R5ArEC_jBN_kca/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/flipt/h9R5ArEC_jBN_kca/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/flipt/h9R5ArEC_jBN_kca/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/flipt/h9R5ArEC_jBN_kca/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/flipt/h9R5ArEC_jBN_kca/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/flipt/h9R5ArEC_jBN_kca/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/flipt/h9R5ArEC_jBN_kca/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/flipt/h9R5ArEC_jBN_kca/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/flipt/h9R5ArEC_jBN_kca/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Upgrading - Flipt\">\u003cmeta data-mint-head property=\"og:description\" content=\"This document describes how to upgrade Flipt.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Flipt Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.flipt.io/v1/operations/upgrading\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://flipt.mintlify.site/_mintlify/api/og/v2?division=Operations\u0026amp;title=Upgrading\u0026amp;description=This+document+describes+how+to+upgrade+Flipt.\u0026amp;theme=fab54c02540c97cd47281fa2\u0026amp;signature=8911442ecf2b4a1dd50277940267277a5a7a5ea7ffa032e34565f686cfb7b0ea\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Upgrading - Flipt\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"This document describes how to upgrade Flipt.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://flipt.mintlify.site/_mintlify/api/og/v2?division=Operations\u0026amp;title=Upgrading\u0026amp;description=This+document+describes+how+to+upgrade+Flipt.\u0026amp;theme=fab54c02540c97cd47281fa2\u0026amp;signature=8911442ecf2b4a1dd50277940267277a5a7a5ea7ffa032e34565f686cfb7b0ea\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/flipt/h9R5ArEC_jBN_kca/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Flipt\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#7C3AED\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.flipt.io/v1/operations/upgrading\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/v1/operations/upgrading.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.flipt.io/#organization\",\"name\":\"Flipt\",\"url\":\"https://docs.flipt.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/flipt/DEE1Qcfhk5tfKCOi/logo/light-logo.svg?fit=max\u0026auto=format\u0026n=DEE1Qcfhk5tfKCOi\u0026q=85\u0026s=a6aa20ecf9af822ec8f6786b13555d76\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.flipt.io#website\",\"name\":\"Flipt\",\"url\":\"https://docs.flipt.io\",\"publisher\":{\"@id\":\"https://docs.flipt.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.flipt.io/v1/operations/upgrading#webpage\",\"url\":\"https://docs.flipt.io/v1/operations/upgrading\",\"name\":\"Upgrading\",\"description\":\"This document describes how to upgrade Flipt.\",\"dateModified\":\"2025-12-15T14:45:58.118Z\",\"isPartOf\":{\"@id\":\"https://docs.flipt.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.flipt.io/v1/operations/upgrading#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.flipt.io/v1/operations/upgrading#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Operations\",\"item\":\"https://docs.flipt.io/v1/operations/architecture\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Upgrading\",\"item\":\"https://docs.flipt.io/v1/operations/upgrading\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.flipt.io/v1/operations/upgrading#article\",\"headline\":\"Upgrading\",\"name\":\"Upgrading\",\"description\":\"This document describes how to upgrade Flipt.\",\"url\":\"https://docs.flipt.io/v1/operations/upgrading\",\"mainEntityOfPage\":{\"@id\":\"https://docs.flipt.io/v1/operations/upgrading#webpage\"},\"dateModified\":\"2025-12-15T14:45:58.118Z\",\"publisher\":{\"@id\":\"https://docs.flipt.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.flipt.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Flipt\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Flipt","nav":{"global":null,"tabs":[{"tab":"v2","pages":[{"title":"v2","href":"/v2/introduction"}]},{"tab":"v1","anchors":[{"anchor":"Documentation","icon":"book-open","groups":[{"group":"Overview","pages":[{"title":"Getting Started","href":"/v1/introduction"},{"title":"Concepts","href":"/v1/concepts"}]},{"group":"Use Cases","pages":[{"title":"Overview","mode":"wide","href":"/v1/usecases/overview"},{"title":"CloudNative","mode":"wide","href":"/v1/usecases/cloudnative"},{"title":"Edge/IoT","mode":"wide","href":"/v1/usecases/edge"},{"title":"GitOps","mode":"wide","href":"/v1/usecases/gitops"}]},{"group":"Installation","pages":[{"title":"Overview","href":"/v1/installation/overview"},{"title":"Docker","href":"/v1/installation/docker"},{"title":"Kubernetes","href":"/v1/installation/kubernetes"}]},{"group":"Integration","pages":[{"title":"Overview","href":"/v1/integration/overview"},{"group":"Server-Side SDKs","pages":[{"title":"REST SDKs","href":"/v1/integration/server/rest"},{"title":"GRPC SDKs","href":"/v1/integration/server/grpc"}]},{"title":"Client-Side SDKs","href":"/v1/integration/client"},{"title":"OpenFeature","href":"/v1/integration/openfeature"},{"title":"Examples","href":"/v1/integration/examples"}]},{"group":"Guides","pages":[{"group":"User Guides","pages":[{"title":"Get Going with GitOps","href":"/v1/guides/user/get-going-with-gitops"},{"title":"Evaluating with References","href":"/v1/guides/user/using-references"}]},{"group":"Operations Guides","pages":[{"group":"Deployment","pages":[{"title":"Deploy to Fly.io","href":"/v1/guides/operation/deployment/deploy-to-flyio"},{"title":"Deploy to Kubernetes","href":"/v1/guides/operation/deployment/deploy-to-kubernetes"}]},{"group":"Authentication","pages":[{"title":"Login with Google","href":"/v1/guides/operation/authentication/login-with-google"},{"title":"Login with GitHub","href":"/v1/guides/operation/authentication/login-with-github"},{"title":"Login with Keycloak","href":"/v1/guides/operation/authentication/login-with-keycloak"}]},{"group":"Authorization","pages":[{"title":"Role-Based Access Control with Keycloak","href":"/v1/guides/operation/authorization/rbac-with-keycloak"}]}]},{"group":"Migration Guides","pages":[{"title":"Migrating from LaunchDarkly","mode":"wide","href":"/v1/guides/migration/launchdarkly/overview"},{"title":"Migrating from LaunchDarkly SDK to OpenFeature SDK","mode":"wide","href":"/v1/guides/migration/launchdarkly/openfeature"},{"title":"Switching from LaunchDarkly to Flipt","mode":"wide","href":"/v1/guides/migration/launchdarkly/flipt"}]}]},{"group":"Configuration","pages":[{"title":"Overview","href":"/v1/configuration/overview"},{"title":"Analytics","href":"/v1/configuration/analytics"},{"group":"Auditing","pages":[{"title":"Overview","href":"/v1/configuration/auditing/overview"},{"title":"Webhooks","href":"/v1/configuration/auditing/webhooks"}]},{"title":"Authentication","href":"/v1/configuration/authentication"},{"title":"Authorization","href":"/v1/configuration/authorization"},{"title":"Observability","href":"/v1/configuration/observability"},{"title":"Storage","href":"/v1/configuration/storage"},{"title":"Caching","href":"/v1/configuration/caching"},{"title":"Telemetry","href":"/v1/configuration/telemetry"},{"title":"Experimental","href":"/v1/configuration/experimental"}]},{"group":"CLI","pages":[{"title":"Overview","href":"/v1/cli/overview"},{"group":"Commands","pages":[{"group":"config","pages":[{"title":"config init","href":"/v1/cli/commands/config/init"},{"title":"config edit","href":"/v1/cli/commands/config/edit"}]},{"group":"bundle","pages":[{"title":"bundle build","href":"/v1/cli/commands/bundle/build"},{"title":"bundle list","href":"/v1/cli/commands/bundle/list"},{"title":"bundle pull","href":"/v1/cli/commands/bundle/pull"},{"title":"bundle push","href":"/v1/cli/commands/bundle/push"}]},{"title":"evaluate","href":"/v1/cli/commands/evaluate"},{"title":"export","href":"/v1/cli/commands/export"},{"title":"import","href":"/v1/cli/commands/import"},{"title":"migrate","href":"/v1/cli/commands/migrate"},{"title":"validate","href":"/v1/cli/commands/validate"}]}]},{"group":"Authentication","pages":[{"title":"Overview","href":"/v1/authentication/overview"},{"title":"Methods","href":"/v1/authentication/methods"},{"title":"Using Client Tokens","href":"/v1/authentication/using-tokens"},{"title":"Using JSON Web Tokens","href":"/v1/authentication/using-jwts"}]},{"group":"Authorization","pages":[{"title":"Overview","href":"/v1/authorization/overview"}]},{"group":"Operations","pages":[{"title":"Architecture","href":"/v1/operations/architecture"},{"title":"Deployment","href":"/v1/operations/deployment"},{"title":"Import/Export","href":"/v1/operations/import-export"},{"title":"Production","description":"This document describes recommended configuration options for operating Flipt in Production.","href":"/v1/operations/production"},{"title":"Upgrading","href":"/v1/operations/upgrading"}]},{"group":"Tooling","pages":[{"title":"GitHub Actions","description":"How to use our GitHub Actions to automate your workflows.","href":"/v1/tooling/github-actions"},{"title":"Model Context Protocol (MCP)","href":"/v1/tooling/model-context-protocol"}]}]},{"anchor":"API Reference","icon":"code","pages":[{"title":"API Reference","href":"/v1/reference/overview"}]},{"anchor":"Changelog","icon":"clock","pages":[{"title":"Changelog","href":"/v1/changelog/overview"}]},{"anchor":"Blog","icon":"newspaper","href":"https://blog.flipt.io"},{"anchor":"Discord","icon":"discord","href":"https://flipt.io/discord"},{"anchor":"GitHub","icon":"github","href":"https://git.new/flipt"}]}]},"basePath":"","title":"Upgrading - Flipt","buildId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","deploymentId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","dynamics":["10e4515597"],"chunks":["BannerMarkdown-Cj6eAYhz.js","dist-CdrJecqK.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-D-TRO5q5.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js"]}