Skip to content

Env based management doc #2086

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

Merged
merged 16 commits into from
Apr 17, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
fc86ac6
started env based management doc
Apr 9, 2025
9e360f3
Merge remote-tracking branch 'origin/main' into IDP-2852/env-based-mg…
mattia-fumo Apr 16, 2025
4953329
docs: explain environment based management
mattia-fumo Apr 16, 2025
a2e4e1f
docs: refine environment based management documentation
mattia-fumo Apr 16, 2025
5171329
docs: refine migration process explanation in environment based manag…
mattia-fumo Apr 16, 2025
2b01520
docs: add documentation for environment configuration promotion
mattia-fumo Apr 16, 2025
ce0af9f
docs: improve migration prompt explanation in environment based manag…
mattia-fumo Apr 16, 2025
5b5654d
docs: rename and refine environment based management documentation
mattia-fumo Apr 16, 2025
ef44fd5
docs: refine environment types explanation in environment based manag…
mattia-fumo Apr 16, 2025
67b4183
images
jacoposte Apr 16, 2025
1acf535
docs: add quick reference to environment based management documentation
mattia-fumo Apr 16, 2025
25d38fd
docs: add revisions integration to environment based management quick…
mattia-fumo Apr 16, 2025
86b7d39
docs: refine key concepts and overview in environment based managemen…
mattia-fumo Apr 16, 2025
4432a60
feat: add environments table image to environment based management do…
mattia-fumo Apr 16, 2025
f48e496
docs: refine environment based management key concepts and overview
mattia-fumo Apr 16, 2025
ac7061e
fix: clarify runtime environment deployment options in documentation
mattia-fumo Apr 16, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
---
id: env-based-management
title: Environment Based Configuration Management
sidebar_label: Environment Based Configuration Management
---

Environment Based Configuration Management represents a significant evolution in project management, introducing a unified approach that seamlessly integrates Project Revisions with Project Environments. This thoughtful integration transforms Project Environments into a comprehensive solution for managing both Project Configuration and Runtime operations, streamlining the entire development workflow.

## Key Concepts and Overview

- Each Environment has its own dedicated configuration, replacing the previous revision-based system.
- Environments are categorized into two types: Virtual Environments and Runtime Environments.
- Deployment capabilities are exclusive to Runtime Environments, which can be versioned and deployed to clusters.
- All new Projects, using the Enhanced Workflow, automatically utilize this enhanced environment-based management system.
- Configuration changes can be promoted between environments using the Environment promotion feature.
- Version control is managed at the individual environment level rather than project-wide.
- The Environment variables section displays only the variables specific to the currently selected environment configuration.
- Runtime Environments can be deployed using either the latest configuration or a specific versioned configuration.

## Environment Types

![Migration Process](img/environments-table.png)

Environment Based Management introduces two distinct environment categories that work together to provide a comprehensive project management solution:

- **Virtual Environments** serve as dedicated spaces for managing and iterating on your Project configurations. These environments allow teams to experiment with different configuration setups, test changes, and maintain multiple configuration versions without affecting live systems.

- **Runtime Environments** take configuration management a step further by connecting virtual environments to actual clusters. This enables teams to not only manage configurations but also deploy and execute them in selected runtime environments. Runtime environments bridge the gap between configuration management and actual system deployment, providing a seamless path from development to production.

## Configuration Management

### Configuration Snapshots

Both environment types maintain configuration snapshots that preserve project design elements, including: microservices, endpoints and so on.

These snapshots form a sequential chain, with each snapshot referencing its predecessor. The most recent snapshot represents the current environment configuration.

### Version Control

Users can designate specific configuration snapshots by creating named environment configuration versions. For Runtime environments, versioned configuration snapshots can be deployed to the runtime environment.

## Migration Process

![Migration Process](img/migration-process.png)

When you're ready to embrace Environment Based Management for your existing projects, the transition process is straightforward and accessible through the Console UI. As a Company Owner, you'll notice a helpful migration prompt the first time you access your Project after this feature becomes available.

If you're not ready to proceed with the migration immediately, don't worry - you can either click 'Skip' or simply close the migration dialog. The system will remind you about the pending migration by showing the prompt again the next day, ensuring you won't forget about this important transition.

To ensure a smooth transition while maintaining the integrity of your existing revision versions, we offer two flexible migration methods that you can choose from based on your specific needs and preferences:

### Automatic Migration

Before proceeding with the automatic migration, there are several important prerequisites that must be met:

First, ensure that all project environments have been deployed at least once. This is essential for maintaining configuration history and ensuring a smooth transition.

Second, when migrating, runtime environments will automatically inherit the configuration from their most recently deployed revision. This preserves your current operational state.

Finally, during the migration process, all existing revisions will be converted into virtual environments, maintaining your complete configuration history and development workflow.

### Manual Migration

The manual migration process provides users with more control and flexibility over how their project configurations are transferred. Here's how it works:

During the manual migration, you'll have the opportunity to carefully select and configure various aspects of your environments. First, you'll be able to choose specific configuration snapshots for each of your Project Environments, allowing you to precisely define the starting point for each environment. Next, you'll have control over which existing revisions should be converted into virtual environments, enabling you to maintain only the most relevant historical configurations.

## Environment Configuration Promotion

![Promotion](img/promotion.png)

The Environment Configuration Promotion feature enables you to efficiently synchronize configurations across your environments. Whether you're working with virtual or runtime environments, you can seamlessly propagate configuration changes to maintain consistency throughout your project.

Key capabilities:

- Promote configurations between any environment types
- Select specific environment variables to transfer
- Review and merge design configurations using an interactive diff editor
- Maintain granular control over which settings to keep or update in target environments

This streamlined process helps ensure configuration consistency while giving you full control over the promotion workflow.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions sidebars.json
Original file line number Diff line number Diff line change
Expand Up @@ -422,6 +422,10 @@
{
"id": "development_suite/set-up-infrastructure/new-deployment-workflow",
"type": "doc"
},
{
"id": "development_suite/set-up-infrastructure/env-based-management",
"type": "doc"
}
]
},
Expand Down