- UI: textarea 'Зависимости' в формах создания и редактирования
- плейсхолдер меняется по языку (requirements.txt / package.json / Gemfile / composer.json)
- Python: если deps заполнен → zip(main.py + requirements.txt), иначе raw bytes
- PHP: если deps → zip(main.php + composer.json)
- Ruby: если deps → zip(handler.rb + Gemfile)
- Node.js: пока без изменений (сложная структура package.json)
- runtime: BuildPythonZip, BuildScriptZipWithDeps, buildZipTwo
- model: Deps string в CreateFunctionRequest и UpdateCodeRequest
- v1.3.89
- Backend: function_clone.go — copies archive from storagesvc, creates
new Package/Function/HTTPTrigger preserving all settings (env vars,
timeout, entrypoint, executor type, podspec)
- Backend: route handlers.go — /functions/:name/clone POST
- Frontend: 'Клон' button in edit modal, inline name input form
- Frontend: JS toggleCloneArea/submitClone with validation
- Pre-fills clone name as '<original>-copy', validates format
Fission newdeploy executor does NOT apply fn.Spec.PodSpec when building
Deployment spec - it only uses env.Spec.Runtime.Container and podSpecPatch.
Fix: after updating Function CRD, also directly patch the newdeploy
Deployment via Kubernetes API using StrategicMergePatch, searching by
labels functionName/functionNamespace/executorType=newdeploy.
This ensures env vars immediately appear in the container and survive
pod scaling events (scale to 0 / scale back to 1).
- Backend: handleGetFunctionEnvVars / handlePutFunctionEnvVars в function_crud.go
- API: GET/PUT /functions/:name/envvars
- handleGetFunction теперь возвращает env_vars в ответе
- Frontend: блок env vars в edit modal (key=value + [×] + [+ Добавить])
- TF-функции показывают env vars в режиме read-only
- Документация: doc/descriptions/function-envvars-flow.md
- Версия v1.3.72
- Backend: новый файл status.go с функцией определения статуса пода и Package buildStatus
- API: GET /functions теперь возвращает функции с полем status в аннотациях
- Frontend: добавлена колонка Status в таблицу функций с цветными кругами
- Легенда статусов выше таблицы
- Версия v1.3.70
handlers.go (267 lines) — routing, constants, handleAuth, utils
storagesvc.go — S3 upload/delete via storagesvc
function_code.go — create/update function from inline code
function_archive.go — create/update function from zip archive
function_crud.go — GET, DELETE, timeout update, pod logs
function_invoke.go — invoke via router, /fn route gateway, cron gateway
No logic changes. go build OK.
Entrypoint формат module.function: лintер ищет module.py в архиве
и проверяет что def function(...) определена внутри.
Если нет — сразу ошибка, не нужно ждать таймаута вызова.
Фронтенд передаёт entrypoint из поля e-entry / ca-entry.
- Remove FISSION_TEST_MODE and X-Test-Sub bypass from authMiddleware
- Remove testMode field from Server/Config structs
- Remove TestAuthenticator branch from main.go
- Add uploadToStoragesvc/buildDeploySpec: all function code uploaded to S3
- Add deleteFromStoragesvc: archive deleted from S3 on function delete
- Add FISSION_STORAGESVC_URL env to main.go and deploy/console.yaml
- image: naeel/fission-console:v1.3.31