v1.0.65: cloud pagination fix for creating status
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
# Архитектура app-autotest — полный документ
|
# Архитектура app-autotest — полный документ
|
||||||
|
|
||||||
v1.0.64, 27.07.2026
|
v1.0.65, 27.07.2026
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -353,6 +353,7 @@ def detect_endpoint(token):
|
|||||||
| 20 | v1.0.63 | Дубли и чужие инстансы | Принадлежность определялась не по namespace | `autotest-` prefix + уникализация `displayName` при CREATE |
|
| 20 | v1.0.63 | Дубли и чужие инстансы | Принадлежность определялась не по namespace | `autotest-` prefix + уникализация `displayName` при CREATE |
|
||||||
| 21 | v1.0.64 | Версия не показывалась в шапке | `load_config()` затирал VERSION | `config["VERSION"] = current_app.config["VERSION"]` |
|
| 21 | v1.0.64 | Версия не показывалась в шапке | `load_config()` затирал VERSION | `config["VERSION"] = current_app.config["VERSION"]` |
|
||||||
| 22 | v1.0.64 | displayName был editable value, а не placeholder | CREATE подставлял имя в value | Placeholder `autotest-...`, значение вводит пользователь |
|
| 22 | v1.0.64 | displayName был editable value, а не placeholder | CREATE подставлял имя в value | Placeholder `autotest-...`, значение вводит пользователь |
|
||||||
|
| 23 | v1.0.65 | `creating` из-за недочитанной страницы | `get_instances()` доверял `total` и мог не перейти на следующую страницу | Остановка по `len(batch) < pageSize` |
|
||||||
|
|
||||||
### ✅ Закрыто в v1.0.56
|
### ✅ Закрыто в v1.0.56
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,15 @@
|
|||||||
# История разработки app-autotest
|
# История разработки app-autotest
|
||||||
|
|
||||||
|
## v1.0.65 (27.07.2026) — cloud list pagination fix
|
||||||
|
|
||||||
|
### Что изменилось
|
||||||
|
- В `site/operations/get_instances.py` пагинация списка инстансов теперь останавливается по размеру страницы, а не по `total`.
|
||||||
|
- Это убирает ситуацию, когда инстанс уже создан в облаке, но приложение не дочитало следующую страницу и показывает `creating`.
|
||||||
|
- В `DOCS/ARCHITECTURE.md` и `site/app.py` синхронизирована версия `1.0.65`.
|
||||||
|
|
||||||
|
### Что это чинит
|
||||||
|
- Ложный `creating` для уже существующего инстанса, если он попал не на первую страницу `/instances`.
|
||||||
|
|
||||||
## v1.0.64 (27.07.2026) — header version + editable displayName placeholder
|
## v1.0.64 (27.07.2026) — header version + editable displayName placeholder
|
||||||
|
|
||||||
### Что изменилось
|
### Что изменилось
|
||||||
|
|||||||
+1
-1
@@ -6,7 +6,7 @@ from routes.main import bp as main_bp
|
|||||||
from routes.api import bp as api_bp
|
from routes.api import bp as api_bp
|
||||||
from routes.api_test import bp as api_test_bp
|
from routes.api_test import bp as api_test_bp
|
||||||
|
|
||||||
VERSION = "1.0.64"
|
VERSION = "1.0.65"
|
||||||
|
|
||||||
app = Flask(__name__, template_folder="templates", static_folder="static")
|
app = Flask(__name__, template_folder="templates", static_folder="static")
|
||||||
app.config["NUBES_API_ENDPOINT"] = os.getenv("NUBES_API_ENDPOINT", "https://lk-api-gateway-dev.ngcloud.ru/api/v1/svc")
|
app.config["NUBES_API_ENDPOINT"] = os.getenv("NUBES_API_ENDPOINT", "https://lk-api-gateway-dev.ngcloud.ru/api/v1/svc")
|
||||||
|
|||||||
@@ -4,10 +4,13 @@ from api.http_client import HttpClient
|
|||||||
def get_instances(client):
|
def get_instances(client):
|
||||||
results = []
|
results = []
|
||||||
page = 1
|
page = 1
|
||||||
|
page_size = 200
|
||||||
while True:
|
while True:
|
||||||
data = client.get("/instances", params={"pageSize": 200, "page": page})
|
data = client.get("/instances", params={"pageSize": page_size, "page": page})
|
||||||
results.extend(data.get("results", []))
|
batch = data.get("results", []) or []
|
||||||
if len(results) >= data.get("total", 0):
|
results.extend(batch)
|
||||||
|
# Не доверяем total: если страница вернула меньше pageSize, значит данные закончились.
|
||||||
|
if len(batch) < page_size:
|
||||||
break
|
break
|
||||||
page += 1
|
page += 1
|
||||||
return results
|
return results
|
||||||
|
|||||||
Reference in New Issue
Block a user