mirror of
https://github.com/moghtech/komodo.git
synced 2025-12-05 19:17:36 -06:00
[PR #472] [MERGED] 1.17.5 #740
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/moghtech/komodo/pull/472
Author: @mbecker20
Created: 5/2/2025
Status: ✅ Merged
Merged: 5/4/2025
Merged by: @mbecker20
Base:
main← Head:1.17.5📝 Commits (10+)
e99fca0API support new calling syntaxfd0602bfinish /{variant} api to improve network logs in browser consolec77412dupdate roadmap50853c3configure the shell used to start the ptybee22e2start on ExecuteTerminal api781a57eRename resources less hidden - click on name in header2b588ccupdate deps918d927execute terminal12d52f7BatchPullStackc898d9cadd Types import to Actions, and don't stringify the error📊 Changes
134 files changed (+2585 additions, -5647 deletions)
View changed files
📝
Cargo.lock(+82 -72)📝
Cargo.toml(+16 -14)📝
bin/cli/src/exec.rs(+7 -0)📝
bin/core/src/alert/mod.rs(+0 -3)📝
bin/core/src/api/auth.rs(+19 -2)📝
bin/core/src/api/execute/action.rs(+9 -3)📝
bin/core/src/api/execute/mod.rs(+20 -5)➖
bin/core/src/api/execute/server_template.rs(+0 -156)📝
bin/core/src/api/execute/stack.rs(+26 -0)📝
bin/core/src/api/execute/sync.rs(+0 -25)📝
bin/core/src/api/mod.rs(+6 -0)📝
bin/core/src/api/read/mod.rs(+20 -8)➖
bin/core/src/api/read/server_template.rs(+0 -97)📝
bin/core/src/api/read/toml.rs(+1 -34)📝
bin/core/src/api/read/update.rs(+0 -20)➕
bin/core/src/api/terminal.rs(+75 -0)📝
bin/core/src/api/user.rs(+19 -1)📝
bin/core/src/api/write/description.rs(+1 -10)📝
bin/core/src/api/write/mod.rs(+19 -9)📝
bin/core/src/api/write/permissions.rs(+0 -14)...and 80 more files
📄 Description
Changelog
🚨 This release removes support for the ServerTemplate resource. It was an interesting experiment, but ultimately I feel cloud server creation is outside of the scope of Komodo, it wasn't a very refined flow, and is better accomplished using other IAC tools such as OpenTofu.
🚨 Container exec is now enabled even if
disable_terminals = true. This allows users to still use container exec while disabling general terminals. If you don't want to allow container exec, you now have to usedisable_container_execinperiphery.config.toml(Env:PERIPHERY_DISABLE_CONTAINER_EXEC)Websocket: Add
disable_websocket_reconnect = truetocore.config.toml(Env:KOMODO_DISABLE_WEBSOCKET_RECONNECT=true) if your websocket is causing issues. You can still click the connected indicator in the topbar to manually trigger reconnect. The reconnect logic has also improved to make sure reconnect attempts only happen every 5s, so you might want to try it out before disabling reconnect. Re #368.UI: Improve renaming visibility / intuitiveness
Server: Terminals can now be started using your shell of choice (before it was always
bash)Server: Implemented the
execute_terminalapi to send command to your Terminals over HTTP call. See below for details.Stack: Add the
BatchPullStackexecution for use in Actions / Procedures.Execute Terminal
One use case I had in mind for terminals is to have an easy way to handle a simple system update task, say running
sudo apt upgrade -y, on a schedule. To do this, I needed a way to interact with terminals from an Action. Now you can do this usingkomodo.execute_terminal. For example, a simple Action to update all your servers and consolidate / save the logs:Note. It is necessary to
CreateTerminalbefore you can execute on it, as shown above. Settingrecreate: Types.TerminalRecreateMode.DifferentCommandwill make it so it does not fail if the terminal already exists, and only recreates the terminal if it was started with a different root command. This allows you to reuse the same terminal and collect the output for later viewing.Other
typeto be specified in the URL path, which is a bit more concise. For example calling DeployStack:🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.