lablup / lablup/backend.ai

Implement config migrate CLI Command

Open
#7,477 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
670
Forks
183
Avg merge
17h 7m
Merged PRs (30d)
358

Description

## Overview

Implement `config migrate` CLI command to migrate configuration from file or legacy etcd paths to the new unified etcd path structure.

## Background

- Legacy etcd configs are stored in various paths with arbitrary values
- New etcd config path: `ai/backend/config/{component`}
- Need safe migration path from legacy to new structure

## Requirements

- Migrate from file config to etcd
- Migrate from legacy etcd paths to new etcd paths
- Support selective field migration (choose which fields to migrate)
- Preview mode (dry-run) before actual migration
- Backup existing etcd config before overwriting

## Migration Sources

1. **File config** → New etcd path
1. **Legacy etcd paths** → New etcd path structure

## Acceptance Criteria

- [ ] Migrate file config values to etcd
- [ ] Migrate legacy etcd values to new paths
- [ ] Support --dry-run for preview
- [ ] Support --fields option for selective migration
- [ ] Creates backup before overwriting existing values
- [ ] Validates migrated values against schema
- [ ] Works for all components

JIRA Issue: BA-3478

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.