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.
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
# Resource nubes_flask
|
||||
|
||||
Service ID: `89`
|
||||
|
||||
Service Name: Web-сервер с фреймворком Flask
|
||||
|
||||
[Manual](flask.md) | [Create params](flask_params_create.md) | [Modify params](flask_params_modify.md) | [Output params](flask_outputs.md) | [Operations](flask_ops.md) | [Example](flask_example.md)
|
||||
|
||||
## Create params
|
||||
|
||||
**Обязательные параметры (вводимые пользователем)**
|
||||
|
||||
<table class="resource-table resource-table-compact resource-table-required">
|
||||
<thead><tr><th>ID</th><th>Code</th><th>Type</th><th>Description</th><th>Constraints</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>249</td><td><strong><code class="code-no-wrap">resource_realm</code></strong></td><td><code>string</code></td><td>Выбрать платформу из списка<br/><br/>**Если список не отображается**<br/>обратитесь к сервис менеджеру с вопросом предоставления ресурсной платформы</td><td>func=getAvailableResourceRealms</td></tr>
|
||||
<tr><td>254</td><td><strong><code class="code-no-wrap">json_env</code></strong></td><td><code>map</code></td><td>Структура, которая будет передана как переменные окружения</td><td></td></tr>
|
||||
<tr><td>255</td><td><strong><code class="code-no-wrap">health_path</code></strong></td><td><code>string</code></td><td>Может быть пустым. Если ничего не передано, проверяется `tcpsocket`<br/>Путь до healtcheck для запуска пода в Kubernetes, который отдаст 200 код</td><td></td></tr>
|
||||
</tbody></table>
|
||||
|
||||
**Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте**
|
||||
<table class="resource-table resource-table-compact">
|
||||
<thead><tr><th>ID</th><th>Code</th><th>Type</th><th>Default</th><th>Description</th><th>Constraints</th></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>248</td><td><strong><code class="code-no-wrap">domain</code></strong></td><td><code>string</code></td><td><code>web01</code></td><td>Если будет указан `FQDN`, то происходят проверки DNS на валидность А-записи. А-запись **обязана смотреть на балансировщик** ресурсной платформы.<br/>Если указано имя `в рамках одного октета`, будет добавлено **в публичную днс-зону**</td><td>regex=^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?$</td></tr>
|
||||
<tr><td>250</td><td><strong><code class="code-no-wrap">resource_cpu</code></strong></td><td><code>integer</code></td><td><code>300</code></td><td>Указывается в Milicores<br/>`1000` Mili == `1` Ядро</td><td>minvalue=100; maxvalue=8000</td></tr>
|
||||
<tr><td>251</td><td><strong><code class="code-no-wrap">resource_memory</code></strong></td><td><code>integer</code></td><td><code>256</code></td><td>Указывается в Megabytes</td><td>minvalue=128; maxvalue=8192</td></tr>
|
||||
<tr><td>252</td><td><strong><code class="code-no-wrap">resource_instances</code></strong></td><td><code>integer</code></td><td><code>1</code></td><td>Балансировка производится между всеми репликами</td><td>minvalue=1; maxvalue=7</td></tr>
|
||||
<tr><td>253</td><td><strong><code class="code-no-wrap">git_path</code></strong></td><td><code>string</code></td><td><code>https://github.com/Foxyhhd/Baldurs-Gate-test.git</code></td><td>Проект должен быть публичным</td><td></td></tr>
|
||||
</tbody></table>
|
||||
|
||||
<div class="lifecycle-note">
|
||||
<strong>Параметры поведения (кратко)</strong><br/>
|
||||
По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.<br/>
|
||||
При `terraform destroy` или удалении ресурса из манифеста:<br/>
|
||||
- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).<br/>
|
||||
- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.<br/>
|
||||
При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:<br/>
|
||||
- `false` — если ресурс уже есть, будет ошибка.<br/>
|
||||
- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).<br/>
|
||||
Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления.
|
||||
</div>
|
||||
Reference in New Issue
Block a user