“Naeel”
a883d9ce38
refactor: org as variable, not managed resource
2026-07-09 08:46:03 +04:00
“Naeel”
b0f07d4f0f
fix: v_i_p_configure match existing org
2026-07-09 08:34:33 +04:00
“Naeel”
dd6dc2017b
docs: update debug findings 07-09
2026-07-09 00:57:18 +04:00
“Naeel”
ee9759cbce
debug: bump 5.0.67, log PlanExistingResourceDiagnostics entry
2026-07-09 00:54:07 +04:00
“Naeel”
a0474c3949
debug: log PlanExistingResourceDiagnostics entry point
2026-07-09 00:51:26 +04:00
“Naeel”
f4be94c5c9
debug: write FIND-DEBUG to /tmp/nubes_find_debug.log instead of stderr
2026-07-09 00:47:41 +04:00
“Naeel”
5b106d7029
debug: stderr logging in FindInstanceByDisplayName, bump 5.0.66
2026-07-09 00:42:14 +04:00
“Naeel”
f59b9ca19b
fix: req.Close only for non-GET (fixes FindInstanceByDisplayName), bump 5.0.65
2026-07-08 20:11:30 +04:00
“Naeel”
6d3bfe852c
fix vcOrg: resource_name = NaeelOrg
2026-07-08 19:53:44 +04:00
“Naeel”
c6b490f151
vcOrg: adopt existing WZ03709-iaas
2026-07-08 19:46:40 +04:00
“Naeel”
c8bd107f92
fix vcOrg: formatting
2026-07-08 19:12:12 +04:00
“Naeel”
25786cecc6
fix vcOrg: add required v_i_p_configure = []
2026-07-08 19:10:53 +04:00
“Naeel”
fefabd448a
add TEST_STAND/kuber — vcOrg only
2026-07-08 19:09:15 +04:00
“Naeel”
5322df7c51
v5.0.64: update test stand configs
2026-07-07 10:26:21 +04:00
“Naeel”
d70bf5d171
v5.0.64: delete idempotency, duplicate adopt, defer unlock, exist marker
2026-07-07 10:08:50 +04:00
“Naeel”
4ac21d9367
v5.0.63: instance-level mutex to prevent parallel operations on same resource
2026-07-07 08:27:42 +04:00
“Naeel”
d9f2c60e90
v5.0.62: fix modify 500 (remove WithDefaults GET ?fields=cfsParams) + tests
2026-07-06 22:43:19 +04:00
“Naeel”
5696be934c
feat: TEST_STAND sync script + MariaDB/Lucee updated to v5.0.61 nubes-test
2026-07-06 10:36:52 +04:00
“Naeel”
ac5c039f37
feat: add TEST_STAND/sync.sh — rsync to VM excluding state/.terraform
2026-07-06 10:09:17 +04:00
“Naeel”
f70fe8e706
chore: remove generated/ from tracking — belongs in .gitignore
2026-07-06 09:51:08 +04:00
“Naeel”
26947e7832
docs: update HISTORY + rebuild binaries
2026-07-06 09:41:53 +04:00
“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”
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
“Naeel”
97ea19ed1b
v5.0.69: ?endpoint= format like generator (fixes POST 403)
2026-07-01 15:41:38 +04:00
“Naeel”
7862ea7e45
v5.0.68: TLSNextProto fix — disable HTTP/2 ALPN (DDoS-Guard EOF)
2026-07-01 15:40:09 +04:00
“Naeel”
e06e8de134
v5.0.67: fix proxy nil crash + net/url import
2026-07-01 14:59:49 +04:00
“Naeel”
dbc426b861
v5.0.66: utls + proxy CONNECT tunnel (DDoS-Guard bypass)
2026-07-01 14:57:53 +04:00
“Naeel”
0ea3ec8120
v5.0.65: remove req.Close (server EOF after Firefox TLS)
2026-07-01 14:53:45 +04:00
“Naeel”
7af20e6568
v5.0.64: utls Firefox-120 TLS fingerprint
2026-07-01 14:51:03 +04:00
“Naeel”
5a301a397c
v5.0.63: utls force HTTP/1.1 ALPN
2026-07-01 14:47:54 +04:00
“Naeel”
62c41e96d7
v5.0.62: utls Chrome-120 TLS fingerprint (DDoS-Guard bypass)
2026-07-01 14:45:30 +04:00
“Naeel”
3c6e8c8b1d
v5.0.61: add browser Accept headers (DDoS-Guard)
2026-07-01 14:35:19 +04:00
“Naeel”
3308aebe76
v5.0.60: UA=Mozilla/5.0 exactly (DDoS-Guard TLS fingerprint bypass)
2026-07-01 14:33:38 +04:00
“Naeel”
45a722db29
v5.0.59: fix ALL ?endpoint= URLs in client.go (was missing GetInstanceStateRaw)
2026-07-01 14:31:20 +04:00
“Naeel”
d2b9e91624
v5.0.58: fix API format — ?endpoint= instead of REST path (DDoS-Guard 403)
2026-07-01 14:28:08 +04:00
“Naeel”
9c78cba1a0
v5.0.57: provider address terra.k8c.ru/nubes-test/nubes
2026-07-01 12:15:33 +04:00
“Naeel”
765abaccfe
gitignore: block docs_gen/ at root level too
2026-07-01 11:44:49 +04:00
“Naeel”
cb4efc878a
profiles: separate S3 paths by stand (nubes-test/nubes-prod/nubes-dev)
2026-07-01 11:26:31 +04:00
“Naeel”
3e200aa608
v5.0.57: separate generated docs by stand, NEVER publish from docs/
...
- docs_gen/test/ — TEST-only generated docs (332 resources)
- docs_gen/prod/ — PROD placeholder
- docs_gen/dev/ — DEV placeholder
- 04_build_and_publish_docs.sh: --profile now uses ONLY docs_gen/<stand>/, never docs/
- .gitignore: exclude all generated docs
- Profile env: DOCS_GEN_DIR path
- Remove personal .docx from repo
2026-07-01 11:20:34 +04:00
“Naeel”
e96a12e4f9
1
2026-07-01 10:41:53 +04:00
“Naeel”
e8b8db1d10
v5.0.57: regenerate all from TEST API (NOT PROD)
...
- 43 YAML, 94 Go, 332 docs from deck-api-test.ngcloud.ru
- STANDS.md, TESTING.md, API_TOKENS.md added
- Never mix PROD/TEST again
2026-07-01 10:04:15 +04:00
“Naeel”
78740de602
docs: ⛔ STANDS.md — NEVER mix PROD/TEST/DEV environments
2026-07-01 09:55:38 +04:00
“Naeel”
ba4eebedd2
docs: REPO_INVENTORY.md — full repo structure, version matrix, profiles, published state
2026-07-01 09:44:00 +04:00
“Naeel”
655718f0c9
docs: TESTING.md — PROD 14-day delete lock vs TEST 15-min delete
2026-06-30 18:43:09 +04:00
“Naeel”
d99f70c7f4
docs: ⛔ TESTING.md — NEVER run tests against PROD API
2026-06-30 18:42:24 +04:00
“Naeel”
3b6b5ba3c4
feat: full regeneration from API — 70→88 Go files, 42 YAMLs, +18 new resources (reconcile, backup, users, databases)
2026-06-30 18:41:14 +04:00
“Naeel”
0d24326edb
fix: service_spec_gen skip 404 services gracefully instead of panic
2026-06-30 18:39:35 +04:00
“Naeel”
781f538f7b
chore: P2 — remove dead tools (service_ops_gen, service_params_gen, gen/v1)
2026-06-30 18:36:13 +04:00
“Naeel”
3cda6ec479
fix: P1 — remove panics in docs gen, remove clickhouse hardcode, empty op logging
2026-06-30 18:27:06 +04:00
“Naeel”
a0e4037d7b
fix: P1 — classifyOperation accepts any underscore prefix + format.Source warns instead of silently writing broken Go
2026-06-30 18:16:28 +04:00
“Naeel”
75c1802530
fix: bulletproof .gitignore for ALL Go binaries + classifyOperation for any underscore prefix
2026-06-30 18:13:36 +04:00
“Naeel”
48ad16c241
fix: P0 — add User-Agent + retry to bash urllib, retry to service_spec_gen, empty-list guard
2026-06-30 18:11:52 +04:00
“Naeel”
1739120a98
docs: Opus analysis round 2 — full audit of generation scripts (bash + Go tools + CI + profiles)
2026-06-30 18:08:19 +04:00