43 lines
1.7 KiB
Markdown
43 lines
1.7 KiB
Markdown
# Edge Case Questions (04-q)
|
|
|
|
## Merge: variable exists in some versions but not others
|
|
|
|
1. **При merge 3 версий:**
|
|
```
|
|
version 1: DATABASE_URL=postgres://v1, REDIS_URL=redis://r1
|
|
version 2: DATABASE_URL=postgres://v2
|
|
version 3: DATABASE_URL=postgres://v3, REDIS_URL=redis://r3
|
|
```
|
|
|
|
Для `REDIS_URL` — version 2 не имеет этой переменной.
|
|
|
|
**Как отображать?**
|
|
- (a) `[2] version 2: <not set>`
|
|
- (b) Показывать только версии где переменная есть
|
|
- (c) Автоматически добавлять переменную если она есть хотя бы в одной версии
|
|
|
|
---
|
|
|
|
## aevs project --list: откуда api_key?
|
|
|
|
2. **Команда `aevs project -l` не требует `-c, --config`:**
|
|
- Откуда брать `api_url` и `api_key` для запроса к серверу?
|
|
|
|
**Варианты:**
|
|
- (a) Всегда требовать `-c` или читать из `./aevs.yaml`
|
|
- (b) Добавить флаги `--api-url` и `--api-key` напрямую
|
|
- (c) Использовать env vars `AEVS_API_URL`, `AEVS_API_KEY` как fallback
|
|
|
|
---
|
|
|
|
## First sync: no local files
|
|
|
|
3. **Первый sync когда нет локальных файлов:**
|
|
- Config создан через `aevs init`, но env файлы ещё не существуют (пустой список)
|
|
- Или файлы были удалены после init
|
|
|
|
**Поведение:**
|
|
- (a) Ошибка: "No environment files found in config"
|
|
- (b) Создать пустую версию на сервере
|
|
- (c) Предложить запустить `aevs init` заново
|