naeel
2133a1b2fe
v1.2.9: Phase 1 — sidebar + views layout
...
index.html: full rewrite
- Sidebar (192px/72px, blue top border): Верстак/Обзор/История/Сценарии/Логи
- Views: workbench (service left rail + instances/params right), overview, history, scenarios, logs
- Token form moved to sidebar bottom
- All existing DOM ids preserved: inst-list, params-area, params-form, btn-test,
test-status, create-btn-area, history-card, history-body, scenario-card, scenario-body
- Log panel adjusted: left 72px (sidebar width)
- Fonts increased: 12-14px
views.js (NEW): switchView(id) — show/hide views, auto-load content on open
2026-07-31 13:16:50 +04:00
naeel
10377e9cdb
v1.2.8: Phase 0 review fixes — snackbar.js include + sidebar 72px + collapsed view
...
- index.html: add snackbar.js (was missing, showSnackbar not available)
- style.css: sidebar.collapsed 56→72px (match Nubes DS 4.5rem)
- style.css: .sidebar.collapsed ~ .view margin-left: 72px
2026-07-31 13:14:49 +04:00
naeel
78b5063259
v1.2.7: Phase 0 — CSS foundation + icons + snackbar
...
style.css: +93 lines — sidebar, view, tabs, toolbar, field (label on top),
skeleton, snackbar, combobox classes. Font scale 13/14/16.
icons.js (NEW): 10 inline-SVG Lucide icons (play, edit, trash, check, x,
chevronDown, search, plus, rotateCw, cloud). stroke=currentColor.
snackbar.js (NEW): showSnackbar(msg, type). bottom-right, 4s/8s auto-hide,
stacking max 4, accessibility role=status aria-live=polite.
index.html: include icons.js before utils.js
2026-07-31 12:52:02 +04:00
naeel
15f5ebe647
v1.2.2: modal scenario editor with dropdowns + output/ref
...
scenario-form.js — full rewrite:
- Full-screen modal (backdrop + content, 800px max-width)
- Services dropdown (GET /api/services, cached)
- Operations dropdown (GET /api/operations/{svcId}, cached)
- output field for create steps
- instance_ref dropdown (previous outputs) + explicit instance_uid
- [↑][↓] reorder buttons
- Auto-load operations on service change
index.html — modal CSS (#scenario-modal, .modal-backdrop, .modal-content)
2026-07-31 10:19:26 +04:00
naeel
91e97f6f75
v1.2.0: unified executor + flexible instance refs + params-render.js
...
Phase 1 — New modules:
- api/utils.py: find_uid(), uid_from_location() (replaces 2 duplicates)
- operations/poll.py: poll_until_done() (shared sync/async polling)
- operations/executor.py: execute_operation() (single CREATE/non-CREATE flow)
Phase 2 — Format + validation:
- routes/api_scenario_defs.py: _validate_steps with output/instance_ref/instance_uid
- operations/scenario.py: resolve instance_uid > instance_ref > service_id,
use executor + poll_until_done, persist instance_bindings
Phase 3 — Migration:
- routes/api_test.py: create/non-create through executor, _finish_op through poll_until_done
- db/init_db.py: startup cleanup of stuck scenario_runs (>1h)
Phase 4 — UI shared module:
- static/js/params-render.js: renderParamRow, renderMapFixedRow, collectParams
- static/js/operations.js: use params-render.js (remove duplicates)
- templates/index.html: include params-render.js
- app.py: bump 1.1.57 → 1.2.0
2026-07-31 08:55:06 +04:00
naeel
38f58ddbd7
v1.1.57: fix scenario editor body bug + relativeTime columns + infra UUIDs
...
- scenario-form.js: fix ReferenceError body is not defined in renderEditor()
- utils.js: relativeTime(iso) → 3ч 12м / 2д 5ч / только что
- instances.js: columns created / modified with relativeTime()
- index.html: instanceUid under displayName in infra column
2026-07-30 22:22:19 +04:00
naeel
a96658b9b5
v1.1.55: split large files + CRUD scenario editor
...
Backend (5→7 files):
- api_test.py: 622→479, terraform functions → operations/terraform.py (142)
- api_scenario.py: 241→split into run (153) + defs (108) with _validate_steps()
- db/scenario_defs.py: +client_id, stand, is_seed in list_definitions
Frontend (1→10 files):
- app.js: 554→16 (loader), split into:
utils.js (45), instances.js (89), operations.js (249),
history.js (35), scenario-list.js (90)
- New CRUD: scenario-form.js (128), create (25), edit (12), delete (13)
Max file size: JS 249, PY 479
2026-07-30 22:02:22 +04:00
naeel
7eeb1131b3
v1.1.46: phase2 — scenario runner MVP (YAML config, DB schema, API endpoints, UI section)
2026-07-30 13:48:34 +04:00
naeel
f79301b245
v1.1.37: params for all ops + polling try/catch + refresh always + tracker CMDB + firstServiceId
2026-07-30 07:47:43 +04:00
naeel
e214d36a75
v1.1.16: remove serviceId filter, sort by svc+date, scrollable inst-list
2026-07-29 10:10:41 +04:00
naeel
b23ea0ee4e
v1.1.15: dynamic stages-box — inline after instance, not below all
2026-07-29 09:43:29 +04:00
naeel
8f802c3a17
v1.1.13: service highlight, dynamic btn text, defaultValue in dataDescriptor
2026-07-29 09:05:23 +04:00
naeel
9b003b4723
v1.1.7: move create-btn after params, before history
2026-07-28 13:17:00 +04:00
naeel
393e433b4f
v1.1.2: UI — params inline, no header, create button below list
2026-07-28 11:31:45 +04:00
naeel
12e3d12e09
v1.1.1: scrollable services + dynamic CREATE for any service
2026-07-28 11:24:51 +04:00
naeel
0b810fdee1
v1.1.0: per-stand services list from Terraform — services_dev.txt + services_test.txt
2026-07-28 11:15:19 +04:00
naeel
be9e165b4f
v1.0.96: history UI — collapsible table below instances, auto-refresh on finish
2026-07-28 10:15:31 +04:00
naeel
4952f8b096
v1.0.91: Step 5 — JS extracted to /static/app.js + window.APP
2026-07-27 22:57:29 +04:00
naeel
1cc3f6eb7e
v1.0.89: detailed code comments — all Python files + index.html architecture overview
2026-07-27 22:02:51 +04:00
naeel
c0f577f030
v1.0.87: topbar labels — EMail, Профиль, Стенд
2026-07-27 17:50:56 +04:00
naeel
59e87cf50f
v1.0.85: create_client(token) everywhere — single entry point stand detection; {{ stand }} in UI
2026-07-27 17:26:09 +04:00
naeel
cd2e2349e2
v1.0.84: log panel hidden by default, toggle button bottom-right
2026-07-27 17:12:23 +04:00
naeel
c37709eef0
v1.0.83: HTML-escape + JSON validation for map fields (onblur + pre-submit)
2026-07-27 17:02:26 +04:00
naeel
a7b8cd30b7
v1.0.81: get_params.py — current values from GET /instances/{uid} state.params
2026-07-27 16:48:42 +04:00
naeel
07aa2115d4
v1.0.78: log panel in UI + /api/log endpoint + _log() buffer
2026-07-27 13:50:57 +04:00
naeel
766b50cd7b
v1.0.76: modify shows actual instance param values (preview operation)
2026-07-27 13:29:38 +04:00
naeel
656ad4c893
v1.0.75: keep displayName in operation status
2026-07-27 13:04:38 +04:00
naeel
0248c78931
v1.0.74: version bump before push
2026-07-27 12:58:55 +04:00
naeel
a06a147c4c
v1.0.71: finished status shows instance name
2026-07-27 12:43:07 +04:00
naeel
199decf96c
v1.0.69: autotest prefix fixed in CREATE field
2026-07-27 12:36:18 +04:00
naeel
b9f5d1a17e
v1.0.68: operation name shown after OK + muted operation buttons
2026-07-27 12:17:02 +04:00
naeel
9a49312390
v1.0.66: backend status resolver for operations
2026-07-27 11:53:51 +04:00
naeel
90a32353eb
v1.0.64: version header and displayName placeholder
2026-07-27 11:38:55 +04:00
naeel
0bcfa5a566
v1.0.63: autotest namespace and duplicate prevention
2026-07-27 11:24:05 +04:00
naeel
8531d5e15d
v1.0.62: immediate visual refresh after CREATE
2026-07-27 11:19:26 +04:00
naeel
b0844114ba
v1.0.58: version bump and history sync
2026-07-27 11:05:32 +04:00
naeel
a271e863f3
v1.0.50: fix showStages icon (dtFinish); fix api_operations (add tracked orphans); drop not_created filter
2026-07-27 09:43:36 +04:00
naeel
7f6284bb46
v1.0.49: in-memory tracker (no file IO); traceback on tracker error; refreshInstances adds new items; no selectService on OK
2026-07-27 09:26:39 +04:00
naeel
1d306bf263
v1.0.48: tracker_add sync before thread (Sonnet fix); log is_ok; flexbox buttons
2026-07-27 09:02:59 +04:00
naeel
7fdcc005b5
v1.0.47: fix displayName capture before form clear; fix tracker_add race; add autotest-1 to tracker
2026-07-27 08:44:19 +04:00
naeel
8d9bf338fc
Fix: refresh instance status badges after any operation, v1.0.45
2026-07-26 14:31:10 +04:00
naeel
5373e177be
Show operation name in progress: 'modify выполняется...', v1.0.44
2026-07-26 14:29:25 +04:00
naeel
3d58b76632
Fix: show progress card for non-modify operations, v1.0.43
2026-07-26 14:18:39 +04:00
naeel
fed7260654
Async ops + progressive stages + buttons + confirm, v1.0.42
2026-07-26 13:56:27 +04:00
naeel
62717b0e74
Full Terraform logic: svcOperationId, /run, dtFinish, stages in UI, v1.0.41
2026-07-26 11:26:28 +04:00
naeel
9348c4089f
UI: instances + expand operations, create separate, only dummy, v1.0.40
2026-07-26 08:31:27 +04:00
naeel
b0ef0c98fe
UI: instance list with names+status, click to select, v1.0.39
2026-07-26 08:05:45 +04:00
naeel
81e54e44d2
Fix array/map param values as JSON, v1.0.31
2026-07-24 14:13:32 +04:00
naeel
46af9bb7fa
Add displayName field only, no other changes, v1.0.19
2026-07-24 09:14:18 +04:00
naeel
981ec66a9a
Restore working UI from v1.0.12, v1.0.18
2026-07-24 09:10:50 +04:00