“Naeel”
b56e634796
refactor: shared YAML types via tf-tools/lib (yaml-generator + resource-generator)
...
TOOLS/lib/types.go — canonical ServiceSpec, ParamSpec, OperationSpec, OutputParam.
Both generators use type aliases, one source of truth for YAML contract.
docs-generator stays as-is (will be replaced by LLM-based generator).
2026-07-06 09:40:59 +04:00
“Naeel”
53d03004de
fix: architectural improvements per Opus analysis
...
1. Version sync: provider/main.go = profile.env = 5.0.60
2. docs-generator: removed detectVersion() — no more dependency on provider/
3. docs-generator: removed detectRoot(), pickPath() — all paths via flags/env
4. docs-generator: require --version, --resources, --docs flags
5. Auto-rebuild: yaml-generator rebuilds if sources newer than binary
6. Three version vars → one VERSION in profile.env
7. Created TOOLS/lib/ — shared YAML contract types (not yet integrated)
2026-07-06 09:25:21 +04:00
“Naeel”
dd56bcda83
refactor: restructure project — separate tools, config, generated, provider
...
TOOLS/ — generators + scripts + config + ARCHITECTURE.md
├── yaml-generator/ (code)
├── resource-generator/ (code)
├── docs-generator/ (code)
├── scripts/ (← devops/*.sh)
├── config/ (← devops/profiles/ + devops/config/)
│ ├── test/ profile.env, services_list.txt, operation_timeouts.json
│ ├── prod/
│ └── dev/
└── ARCHITECTURE.md (← devops/ARCHITECTURE.md)
generated/ — pipeline output only (gitignored)
├── test/resources_yaml/, go/, docs/, provider_build/
├── prod/
└── dev/
provider/ — code only, no generated files
resources_yaml/ — DELETED (generated)
internal/resources_gen/ — DELETED (generated)
devops/ — removed (replaced by TOOLS/scripts + TOOLS/config + generated/)
Generators now fail if NUBES_*_DIR not set (no defaults to provider/).
Provider requires pipeline to populate resources_gen/ before build.
2026-07-06 09:06:09 +04:00
“Naeel”
c34db5e5e3
docs: LLM-based documentation generation approach (gpt-oss-120b)
...
- Universal prompt template for any service
- Postgres test results: 9/10, zero invented params
- Requires Jenkins endpoint for map-fixed sub_fields
2026-07-05 17:27:12 +04:00
“Naeel”
0a0c9656fd
chore: remove cloud-dashboard/ (unrelated FastAPI app)
2026-07-05 10:43:45 +04:00
“Naeel”
59d927e980
chore: remove stale root tools/ (superseded by TOOLS/ and devops/)
...
Deleted: debug_req.go, docs_publish/, upload_provider_s3.py, har/, mariadb_check_container/
2026-07-05 10:37:26 +04:00
“Naeel”
d49f19460d
docs: rewrite devops/README.md + add TOOLS/README.md
...
- Updated all paths from universal_rebuild to provider and TOOLS/
- Added pipeline diagram and script reference table
- Added TOOLS/README.md with build instructions for each generator
2026-07-05 10:35:45 +04:00
“Naeel”
f1a9b9b23c
chore: remove 2 legacy devops scripts (superseded by _v2 versions)
...
- 02_generate_resources_and_docs.sh → no profile support
- 02_generate_resources_and_docs_template.sh → old ClickHouse template
2026-07-05 10:34:05 +04:00
“Naeel”
c2438f50a6
chore: remove 3 stale scripts/ (superseded by devops/)
...
- deploy-dev.sh → references deleted k8s/ dir
- package_release.sh → replaced by devops/03_build_and_upload_provider.sh
- publish-docs.sh → replaced by devops/04_build_and_publish_docs.sh
2026-07-05 10:30:57 +04:00
“Naeel”
6a1b243366
refactor: merge ops-generator into docs-generator as --ops mode
...
Single binary, single go.mod — no divergence risk.
Run: docs-generator --ops (or regular docs-generator for resource docs)
2026-07-05 10:28:59 +04:00
“Naeel”
46e847a3c1
docs: add detailed package-level comments to all TOOLS/ and provider/
...
TOOLS:
- yaml-generator: types (API↔YAML), client (proxy/REST + retry)
- resource-generator: types (3 resource kinds), loader (pipeline),
writers (generated files), params (merge/CreateOnly/ForceNew)
- docs-generator, ops-generator — already documented
provider:
- main.go: entrypoint + build instructions
- core: API client (GetInstance, RunOperation, GetInstanceState)
- provider: provider registration (New, Resources, Schema)
- resources_core: shared CRUD, state refresh, params, validation
2026-07-05 10:24:43 +04:00
“Naeel”
5da22335ae
refactor: rename universal_rebuild/ → provider/
...
- Rename directory
- Update all 9 devops scripts
- Update 4 generator source files
- Rebuild all binaries
2026-07-05 10:20:04 +04:00
“Naeel”
a9491e13ea
refactor: extract all generators into independent TOOLS/ modules
...
Each generator is now a standalone Go module with its own go.mod:
TOOLS/
├── yaml-generator/ ← service_spec_gen (API → YAML)
├── resource-generator/ ← gen_v2 (YAML → Go resources)
├── docs-generator/ ← docs_template_gen_v2 (YAML → Markdown)
├── ops-generator/ ← ops_docs_gen (ops documentation)
└── bin/ ← pre-built binaries
All scripts updated to use TOOLS/bin/* binaries.
Removed old universal_rebuild/tools/ and universal_rebuild/bin/.
2026-07-05 09:57:13 +04:00
“Naeel”
4e668cda9f
chore: remove nested universal_rebuild/universal_rebuild/ (332 duplicate doc files, wrong path)
2026-07-05 09:43:56 +04:00
“Naeel”
d9673f7b17
chore: remove 18 junk files + stale root internal/ (old provider code)
...
Deleted: check_ops.py, s.sh, instance_fca3f912.json, name_check.txt,
prompt_for_ds_pro.md, prompt_for_opus48.md, state_keys_*.json,
state_keys_progress.txt, state_vault_*.json, svcs.json, services.*,
REPO_CONTENTS.md, REPO_INVENTORY.md, 01_generate_yamls.sh (duplicate),
internal/ (old provider, migrated to universal_rebuild/)
2026-07-05 09:37:40 +04:00
“Naeel”
3a003b28b3
chore: remove stale root go.mod/go.sum/main.go from old provider (terraform-provider-mycloud)
...
These files are leftovers from before the universal_rebuild migration.
The real provider lives at universal_rebuild/ with module terraform-provider-nubes.
2026-07-05 09:36:04 +04:00
“Naeel”
87666f5c4b
refactor(service_spec_gen): split into 6 packages (types, client, config, normalize, spec, main) + .gitignore
...
- Split 741-line monolith into 6 independent packages
- All functions exported, no circular deps
- Build: go build -o bin/service_spec_gen ./tools/service_spec_gen/
- Script 01_generate_yamls.sh: go run → ./bin/service_spec_gen
- Add bin/ to .gitignore
2026-07-05 09:27:25 +04:00
“Naeel”
20bb7bc0e9
chore: go mod tidy — remove 4 unused indirect deps (brotli, klauspost, utls, crypto)
2026-07-05 09:14:08 +04:00
“Naeel”
f3616d0fe1
refactor(gen_v2): split into 7 Go packages (types, templates, helpers, params, loader, writers, main)
2026-07-05 09:13:07 +04:00
“Naeel”
e8935f1ebf
refactor(gen_v2): split into 7 files by concern (types, loader, params, writers, helpers, templates, main)
2026-07-05 09:03:16 +04:00
“Naeel”
703bac4bc4
refactor(gen_v2): split template constants into templates.go
2026-07-05 08:57:47 +04:00
“Naeel”
e65bc45f5a
v5.0.59: redeploy as git_revision, no separate action resources, gen_v2 follows ARCHITECTURE.md
2026-07-05 08:51:45 +04:00
“Naeel”
a5df6dca62
ARCHITECTURE: PRIMARY source of truth — action rules (redeploy inline, others excluded), 401 retry, API endpoint auto-detect
2026-07-05 08:17:56 +04:00
“Naeel”
e9901c6309
v5.0.58: retry on 401 from Gateway, bump test profile version
2026-07-05 07:51:23 +04:00
“Naeel”
595c9250a1
docs: full postgres documentation rewrite — sub-field tables, working HCL examples for create/modify/user/database
2026-07-03 17:02:08 +04:00
“Naeel”
1e3038af63
TEST_STAND/PG: add comments to resources.tf explaining each parameter
2026-07-03 10:51:13 +04:00
“Naeel”
c34c852096
TEST_STAND/PG: clean structure with README, variables.tf, .gitignore, terraform.tfvars.example
2026-07-03 10:49:28 +04:00
“Naeel”
9081309e13
history: document deck-api 403 workaround, map-fixed sub-fields, devops discussion, CMDB bug
2026-07-02 18:35:36 +04:00
“Naeel”
d9feab666a
docs: YAML analysis of 43 services from new API Gateway
2026-07-02 17:41:01 +04:00
“Naeel”
0c8223dd11
docs: HOWTO for cloud devops + update TEST_STAND manifests for new API Gateway
...
- HOWTO_IMPLEMENT_NEW_CLOUD_SERVICE.md: rules for implementing new managed services
(naming, params, map-fixed blocks, operations, subresources, validation, checklist)
- HOWTO_ADD_NEW_SERVICE.md: how to add service to terraform provider pipeline
- TEST_STAND/*/main.tf: version 5.0.57, api_endpoint -> lk-api-gateway-test
- TEST_STAND/POSTGRES/resources.tf: rewritten for new map-fixed param structure
2026-07-02 17:38:42 +04:00
“Naeel”
612aa53caf
api-gateway: migrate YAML gen + provider core from deck-api (?endpoint=) to lk-api-gateway (REST paths)
...
- service_spec_gen: callAPI() auto-detects proxy vs REST mode by index.cfm presence
- core/client.go: buildURL() replaces all 4 ?endpoint= harcoded sites
- build-provider.sh: -ldflags -X main.version=${VERSION} for correct binary version
- 01_generate_yamls.sh (devops + root): Python auto-detect proxy vs REST
- 02_generate_resources_and_docs_v2.sh: pass -api-endpoint to doc generators
- 04_build_and_publish_docs.sh: normalize_api_endpoint without forced /index.cfm
- docs_template_gen + v2: -api-endpoint flag, hardcoded deck-api replaced
- provider.go (both): TODO(api-gateway) comments
- profiles/test/profile.env: NUBES_API_ENDPOINT -> lk-api-gateway-test
- HISTORY: 2026-07-02_api_gateway_migration.md
2026-07-02 12:40:47 +04:00
“Naeel”
54647b2fbf
chore: промежуточные изменения в TEST_STAND, docs, s.sh
2026-07-02 11:31:38 +04:00
“Naeel”
76f0b82c96
docs: API reference — old deck-api + new lk-api-gateway
2026-07-01 20:21:32 +04:00
“Naeel”
f094b45d33
docs: mention replace buck0 in README
2026-07-01 18:08:27 +04:00
“Naeel”
39b4fbe0ce
docs: add comments to replace buck0 with own name
2026-07-01 18:07:52 +04:00
“Naeel”
3d8c958422
docs: remove notes from README
2026-07-01 18:06:09 +04:00
“Naeel”
93152eb075
docs: fix README note about network
2026-07-01 18:05:53 +04:00
“Naeel”
50d28665d2
docs: README for buck0
2026-07-01 18:04:23 +04:00
“Naeel”
a3df2d8389
docs: format buck0 terraform.tfvars.example
2026-07-01 18:01:45 +04:00
“Naeel”
8c43b2fda8
Merge branch 'master' of https://gitea.services.ngcloud.ru/Nail/tf_provider
2026-07-01 17:45:45 +04:00
Naeel
cbd9b1263c
chore: update .gitignore
2026-07-01 16:45:11 +03:00
“Naeel”
8e9691eaba
docs: history — DDoS-Guard 403 fix + registry server fix
2026-07-01 17:20:02 +04:00
“Naeel”
b32424ac14
bump buck0 provider version to 5.0.75
2026-07-01 16:41:47 +04:00
“Naeel”
cdaa78ecee
fix: User-Agent on all direct HTTP calls + domain_collision, bump 5.0.75
2026-07-01 16:29:04 +04:00
“Naeel”
a8d3be1849
v5.0.74: fix net import
2026-07-01 16:12:23 +04:00
“Naeel”
112d04adf5
v5.0.74: fresh Transport (not cloned DefaultTransport)
2026-07-01 16:11:26 +04:00
“Naeel”
42210c2250
v5.0.73: req.Close=true — force new TCP per request
2026-07-01 16:09:54 +04:00
“Naeel”
11f5464367
v5.0.72: clean build — ?endpoint= + TLSNextProto + rawQuery fix
2026-07-01 16:01:33 +04:00
“Naeel”
f2d2b02e45
v5.0.71: rawQuery (no %2F) + Accept: */* (DDoS-Guard POST fix)
2026-07-01 15:52:50 +04:00
“Naeel”
3f9b02c7f7
v5.0.70: all URLs use ?endpoint= (fix query params in path)
2026-07-01 15:43:27 +04:00