release: перезаливка провайдера во все 3 стенда — prod 1.0.0, dev 2.0.0, test 3.0.0
Полный цикл 03 (01+02 → сборка 3 платформ → GPG → заливка S3) по каждому стенду: - prod nubes/nubes 1.0.0; - dev nubes-dev/nubes 2.0.0 (VERSION в profile.env: 2.0.24 → 2.0.0); - test nubes-test/nubes 3.0.0. Проверено: sha256 залитого linux-бинарника == локальной сборке на всех трёх; API /versions отдаёт 1.0.0 / 2.0.0 / 3.0.0; в S3 по 5 объектов на версию. Последствия (приняты владельцем): версии X.0.0 перезаписаны → у пользователей с .terraform.lock.hcl будет checksum mismatch (лечится terraform init -upgrade). Подробности: HISTORY/2026-09-30_release_1_0_0_2_0_0_3_0_0_all_stands.md
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
# 2026-09-30 — Перезаливка провайдера во все три стенда под версиями 1.0.0 / 2.0.0 / 3.0.0
|
||||
|
||||
> Команда владельца: «надо — чтобы в 1.0.0 2.0.0 3.0.0 стали НОВЫЕ провайдеры…
|
||||
> ПОХУЙ на пользователей! ПОХУЙ на старые версии!!! генери всё новое и ЗАЛИВАЙ».
|
||||
|
||||
## Что сделано
|
||||
|
||||
Полный цикл по каждому стенду: перегенерация (`01` YAML → `02` Go+доки) и
|
||||
сборка+подпись+заливка (`03`) — всё одной командой `03` (она сама вызывает `01` и `02`).
|
||||
|
||||
| Стенд | Namespace | Версия | `VERSION` в profile.env | Результат |
|
||||
|---|---|---|---|---|
|
||||
| prod | `nubes` | `1.0.0` | `1.0.0` (без изменений) | `Done. Version 1.0.0 uploaded.` |
|
||||
| dev | `nubes-dev` | `2.0.0` | `2.0.24` → **`2.0.0`** | `Done. Version 2.0.0 uploaded.` |
|
||||
| test | `nubes-test` | `3.0.0` | `3.0.0` (без изменений) | `Done. Version 3.0.0 uploaded.` |
|
||||
|
||||
Команды:
|
||||
|
||||
```bash
|
||||
export MC_CONFIG_DIR=/tmp/mc-cfg
|
||||
./TOOLS/scripts/03_build_and_upload_provider.sh --profile TOOLS/config/dev 2.0.0
|
||||
./TOOLS/scripts/03_build_and_upload_provider.sh --profile TOOLS/config/test 3.0.0
|
||||
./TOOLS/scripts/03_build_and_upload_provider.sh --profile TOOLS/config/prod 1.0.0
|
||||
```
|
||||
|
||||
Что делает `03`: `01` (YAML-спеки стенда) → `02` (Go-ресурсы + доки) → сборка
|
||||
3 платформ (`linux/windows/darwin amd64`, `CGO_ENABLED=0`, `-ldflags=-X main.version=…`)
|
||||
→ `terraform-provider-nubes_<v>_SHA256SUMS` → GPG-подпись (`secrets/private_key.asc`,
|
||||
`CB3A0DF161ECC416`) → заливка 5 объектов в S3.
|
||||
|
||||
## Проверки после заливки
|
||||
|
||||
| Стенд | Версия | `linux/amd64` скачивание | sha256 залитого vs локальной сборки |
|
||||
|---|---|---|---|
|
||||
| dev | `2.0.0` | HTTP 200, 13 169 112 B | ✅ совпадает |
|
||||
| test | `3.0.0` | HTTP 200, 13 095 908 B | ✅ совпадает |
|
||||
| prod | `1.0.0` | HTTP 200, 13 103 414 B | ✅ совпадает |
|
||||
|
||||
Дополнительно:
|
||||
|
||||
- API `/versions`: `nubes-dev` → `['2.0.0','2.0.21','2.0.22','2.0.23','2.0.24']`,
|
||||
`nubes-test` → `['3.0.0']`, `nubes` → `['1.0.0']`;
|
||||
- в S3 у каждой версии ровно 5 объектов (3 zip + `SHA256SUMS` + `SHA256SUMS.sig`).
|
||||
|
||||
## ⚠️ Последствия (приняты владельцем сознательно)
|
||||
|
||||
- Версии `1.0.0`, `2.0.0`, `3.0.0` **перезаписаны** — под теми же номерами теперь
|
||||
другие бинарники. У всех, у кого есть `.terraform.lock.hcl`, будет
|
||||
`checksum mismatch` при `terraform init`; лечится `terraform init -upgrade`.
|
||||
- Старые версии **не удалялись** (кроме ранее вычищенного dev `< 2.0.21`):
|
||||
в dev остаются `2.0.21`–`2.0.24`, в test `3.0.0` и в prod `1.0.0` — теперь уже как
|
||||
свежие сборки.
|
||||
- `VERSION` в `TOOLS/config/dev/profile.env` понижен `2.0.24` → `2.0.0`
|
||||
(чтобы доки и артефакты генерировались с новой версией); закоммичено.
|
||||
|
||||
## Связанные документы
|
||||
|
||||
- `VERSIONS.md` — обновлённая таблица текущих версий.
|
||||
- `HISTORY/2026-09-30_dev_registry_prune_versions.md` — предыдущая очистка dev-реестра.
|
||||
- `HISTORY/2026-09-30_yaml_pipeline_hardening.md` — состояние пайплайна генерации.
|
||||
Reference in New Issue
Block a user