km update build my-build "version=1.19.0&branch=release"
km x commit my-sync
It also implements some operational features using direct database connection:
km database backup
km db restore
km db copy - Replaces the ghcr.io/moghtech/komodo-util image
km set user mbecks super-admin true
km set user mbecks password "temp-password"
You can either install it using the published binaries and a similar install script to Periphery systemd (but simpler, no systemd involved). It will also be published in a distroless image to ghcr.io/moghtech/komodo-cli, as well as included in the komodo-core image for usage with docker exec / Container Terminals.
Action Arguments 🦎
This PR also Implement the Action Arguments feature re #149
You can now access an ARGS object in Action scripts.
You can set defaults in Action config, and then pass overrides using RunAction
On CLI: km run action my-action "arg1=value1&arg2=value2"
On webhook triggered Actions, there is an additional feature. The branch as well as the entire webhook POST body is becomes available in the Action at ARGS.WEBHOOK_BRANCH and ARGS.WEBHOOK_BODY respectively.
Resource
Action: Run on startup feature by @bpbradley in #664
Stack: Fix compose multiple env file usage to use the same ordering in all cases - Komodo defined env will take highest priority by being given last in the list. I meant to do this previously but did not ensure consistency across all calls.
🚨This change may be breaking if you rely on env file ordering assuming Komodo env is the "first" in list (lowest precedence)
Stack: Move Stack file commit to happen in Core rather than on Periphery server, bringing it in line with Builds and Syncs
Server: Improvements to server stats page such as container stats search
Server: Add External Address configuration for use with container links.
Use when the address Core uses to reach server is different than the one users use from the browser.
Add ClearRepoCache api, which deletes the folders in Core's /repo-cache for you.
Fix frequent reconnect issue for Container Terminals
Fix bug preventing non-admins from viewing / editing resources right after they are created
Fix Google login enabled log in startup by @dfunkt in #668
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/moghtech/komodo/pull/722
**Author:** [@mbecker20](https://github.com/mbecker20)
**Created:** 8/9/2025
**Status:** ✅ Merged
**Merged:** 8/18/2025
**Merged by:** [@mbecker20](https://github.com/mbecker20)
**Base:** `main` ← **Head:** `1.19.0`
---
### 📝 Commits (10+)
- [`adcb0c0`](https://github.com/moghtech/komodo/commit/adcb0c0755395dfc47d2ebba944658163fbc0200) start 1.18.5
- [`7562790`](https://github.com/moghtech/komodo/commit/75627901cedf76b2f67fe1dd1a94a080843b0174) prevent empty additional permission check (ie for new resources)
- [`5af8dd4`](https://github.com/moghtech/komodo/commit/5af8dd455359c52058e25574c1c3d293cca30863) dev-2
- [`aca4c09`](https://github.com/moghtech/komodo/commit/aca4c09bf8c90f9213caa0e04bbc4a5993285098) bump rust to 1.88
- [`1e4c7b8`](https://github.com/moghtech/komodo/commit/1e4c7b8498b387e71f54071aafd0f52337250155) tweaks
- [`aafb5a6`](https://github.com/moghtech/komodo/commit/aafb5a68ed64dfb2f01af9f1836e0be3ad08195f) repo based stack commit happens from core repo cache rather than on server to simplify
- [`a9aad11`](https://github.com/moghtech/komodo/commit/a9aad11a51bf542a5caccb8ed4164e888ed8ce38) clippy auto fix
- [`295f992`](https://github.com/moghtech/komodo/commit/295f9927d4c31784d4a08fc5293f7cf9a12c3915) clippy lints periphery
- [`a28892e`](https://github.com/moghtech/komodo/commit/a28892e7260ab235d46ae630019934942f3eb620) clippy fix komodo_client
- [`e22eda9`](https://github.com/moghtech/komodo/commit/e22eda939c2bcc29b99e787f1feacb1204dc2df5) dev-3
### 📊 Changes
**317 files changed** (+14585 additions, -21472 deletions)
<details>
<summary>View changed files</summary>
📝 `.gitignore` (+1 -1)
➕ `.kminclude` (+1 -0)
📝 `Cargo.lock` (+788 -643)
📝 `Cargo.toml` (+31 -27)
📝 `bin/binaries.Dockerfile` (+4 -4)
➕ `bin/chef.binaries.Dockerfile` (+34 -0)
📝 `bin/cli/Cargo.toml` (+15 -9)
📝 `bin/cli/aio.Dockerfile` (+8 -6)
📝 `bin/cli/docs/copy-database.md` (+12 -12)
📝 `bin/cli/multi-arch.Dockerfile` (+9 -7)
➕ `bin/cli/runfile.toml` (+4 -0)
📝 `bin/cli/single-arch.Dockerfile` (+6 -4)
➖ `bin/cli/src/args.rs` (+0 -55)
➕ `bin/cli/src/command/container.rs` (+312 -0)
➕ `bin/cli/src/command/database.rs` (+320 -0)
📝 `bin/cli/src/command/execute.rs` (+175 -109)
➕ `bin/cli/src/command/list.rs` (+1171 -0)
➕ `bin/cli/src/command/mod.rs` (+181 -0)
➕ `bin/cli/src/command/update/mod.rs` (+43 -0)
➕ `bin/cli/src/command/update/resource.rs` (+152 -0)
_...and 80 more files_
</details>
### 📄 Description
- 🚨 This release requires **both Core and Periphery to upgrade to v1.19.0**.
- 🚨 Remove the `/repo-cache` mount from Core compose service -- it's not needed, and only causes problems.
- 🚨 Add `- <host path>/komodo/backups:/backups` to Core compose service.
- 🚨 Review https://komo.do/docs/resources/auto-update for changes to "Poll for Updates" and "Auto Update" features.
# Komodo v1.19.0
### The `km` CLI 🦎
Introducing **`km`**, the new CLI for Komodo.
<img width="945" height="198" alt="Screenshot 2025-08-10 at 7 50 42 PM" src="https://github.com/user-attachments/assets/965ddf61-2315-4df0-84c0-8f0633381fc8" />
Some examples:
- `km --help`
- `km ps --down`
- `km inspect my-container`
- `km ls --tag network`
- `km deploy stack my-stack`
- `km run action my-action -y`
- `km set var MY_VAR my_value -y`
- `km update build my-build "version=1.19.0&branch=release"`
- `km x commit my-sync`
It also implements some operational features using direct database connection:
- `km database backup`
- `km db restore`
- `km db copy` - Replaces the `ghcr.io/moghtech/komodo-util` image
- `km set user mbecks super-admin true`
- `km set user mbecks password "temp-password"`
You can either install it using the published binaries and a similar install script to Periphery systemd (but simpler, no systemd involved). It will also be published in a distroless image to `ghcr.io/moghtech/komodo-cli`, as well as included in the `komodo-core` image for usage with `docker exec` / Container Terminals.
### Action Arguments 🦎
This PR also Implement the **Action Arguments** feature re #149
- You can now access an `ARGS` object in Action scripts.
- You can set defaults in Action config, and then pass overrides using `RunAction`
- On CLI: `km run action my-action "arg1=value1&arg2=value2"`
- On **webhook triggered Actions**, there is an additional feature. The branch as well as the entire webhook POST body is becomes available in the Action at `ARGS.WEBHOOK_BRANCH` and `ARGS.WEBHOOK_BODY` respectively.
### Resource
- **Action**: Run on startup feature by @bpbradley in #664
- **Stack**: Fix compose multiple env file usage to use the same ordering in all cases - **Komodo defined env will take highest priority** by being given last in the list. I meant to do this previously but did not ensure consistency across all calls.
- 🚨This change may be breaking if you rely on env file ordering assuming Komodo env is the "first" in list (lowest precedence)
- **Stack**: Move Stack file commit to happen in Core rather than on Periphery server, bringing it in line with Builds and Syncs
- **Server**: Improvements to server stats page such as container stats search
- **Server**: Add **External Address** configuration for use with container links.
- Use when the address Core uses to reach server is different than the one users use from the browser.
- **Server**: #739 by @Rhyn
### UI
- #729 by @tuananh131001
- File editors now use a **simpler TOML syntax highlighter** by default. Set `KOMODO_ENABLE_FANCY_TOML=true` to use the previous one
- The fancy one can cause the UI to freeze re issues like #166
- When using **System Theme**, improve theme auto update with the system theme without refreshing the page.
- When `local_auth` is enabled, Admins can now **create new local users from the UI**, even when `disable_user_registration = true`.
- Now supports **multiple concurrent User logins**, quick switch between them without logging in again.
### Misc
- Standardize configuration loading across Core, Periphery, CLI.
- You can now pass config files as either **Toml**, **Yaml** or **Json**.
- **Periphery**: `allowed_ips` now support Ipv4/6 subnets (like `172.16.0.0/16`) by @bpbradley in #666
- Add **KOMODO_FIRST_SERVER_NAME** configuration to set a custom first server name.
- Add **KOMODO_INIT_ADMIN_USERNAME** / **KOMODO_INIT_ADMIN_PASSWORD**
- Creates the initial admin user on first startup.
- Won't change anything after first startup, after you can change the password from the UI.
- #701 by @eleith
- Add **ClearRepoCache** api, which deletes the folders in Core's /repo-cache for you.
- Fix **frequent reconnect issue** for Container Terminals
- Fix bug preventing non-admins from viewing / editing resources right after they are created
- Fix Google login enabled log in startup by @dfunkt in #668
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/moghtech/komodo/pull/722
Author: @mbecker20
Created: 8/9/2025
Status: ✅ Merged
Merged: 8/18/2025
Merged by: @mbecker20
Base:
main← Head:1.19.0📝 Commits (10+)
adcb0c0start 1.18.57562790prevent empty additional permission check (ie for new resources)5af8dd4dev-2aca4c09bump rust to 1.881e4c7b8tweaksaafb5a6repo based stack commit happens from core repo cache rather than on server to simplifya9aad11clippy auto fix295f992clippy lints peripherya28892eclippy fix komodo_cliente22eda9dev-3📊 Changes
317 files changed (+14585 additions, -21472 deletions)
View changed files
📝
.gitignore(+1 -1)➕
.kminclude(+1 -0)📝
Cargo.lock(+788 -643)📝
Cargo.toml(+31 -27)📝
bin/binaries.Dockerfile(+4 -4)➕
bin/chef.binaries.Dockerfile(+34 -0)📝
bin/cli/Cargo.toml(+15 -9)📝
bin/cli/aio.Dockerfile(+8 -6)📝
bin/cli/docs/copy-database.md(+12 -12)📝
bin/cli/multi-arch.Dockerfile(+9 -7)➕
bin/cli/runfile.toml(+4 -0)📝
bin/cli/single-arch.Dockerfile(+6 -4)➖
bin/cli/src/args.rs(+0 -55)➕
bin/cli/src/command/container.rs(+312 -0)➕
bin/cli/src/command/database.rs(+320 -0)📝
bin/cli/src/command/execute.rs(+175 -109)➕
bin/cli/src/command/list.rs(+1171 -0)➕
bin/cli/src/command/mod.rs(+181 -0)➕
bin/cli/src/command/update/mod.rs(+43 -0)➕
bin/cli/src/command/update/resource.rs(+152 -0)...and 80 more files
📄 Description
/repo-cachemount from Core compose service -- it's not needed, and only causes problems.- <host path>/komodo/backups:/backupsto Core compose service.Komodo v1.19.0
The
kmCLI 🦎Introducing
km, the new CLI for Komodo.Some examples:
km --helpkm ps --downkm inspect my-containerkm ls --tag networkkm deploy stack my-stackkm run action my-action -ykm set var MY_VAR my_value -ykm update build my-build "version=1.19.0&branch=release"km x commit my-syncIt also implements some operational features using direct database connection:
km database backupkm db restorekm db copy- Replaces theghcr.io/moghtech/komodo-utilimagekm set user mbecks super-admin truekm set user mbecks password "temp-password"You can either install it using the published binaries and a similar install script to Periphery systemd (but simpler, no systemd involved). It will also be published in a distroless image to
ghcr.io/moghtech/komodo-cli, as well as included in thekomodo-coreimage for usage withdocker exec/ Container Terminals.Action Arguments 🦎
This PR also Implement the Action Arguments feature re #149
ARGSobject in Action scripts.RunActionkm run action my-action "arg1=value1&arg2=value2"ARGS.WEBHOOK_BRANCHandARGS.WEBHOOK_BODYrespectively.Resource
UI
KOMODO_ENABLE_FANCY_TOML=trueto use the previous onelocal_authis enabled, Admins can now create new local users from the UI, even whendisable_user_registration = true.Misc
allowed_ipsnow support Ipv4/6 subnets (like172.16.0.0/16) by @bpbradley in [PR #21] [MERGED] UI Updates - Remove topbar transparency, pretty status badges, tidy resource page layout with a 'back' button (#666)🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.