Previously, the use of backslash (\) had to be escaped (change to \\) in Resource Sync TOML. Now it doesn't, which brings it in line with what you see in the UI. This also fixes CommitSync when used with Resources with config containing \ re #247.
If you have sync files using the escaped \\, you can update them in your repo. You can also use the Commit Sync action to fix the files automatically (the pending change will be picked up on the Sync page).
Previously if there were overlapping environment variables in the Komodo managed env, and in "Additional env files", the Additional files would take precedence. That is now flipped, so Komodo managed env will always override the additional passed files on conflicts when you are deploying with Komodo.
Repo: Fix to GetLastestCommit when using custom clone path by @unsync in #282
Stack: Add post_deploy command by @unsync in #288 re #227
Stack: Add combined services logs view. You can toggle which services in the Stack to include in the combined log. #298
Stack / Deployment: Add available image update indicator to the tables re #175
Stack / Repo: Internally changes to remove automatic adding of .git in remote urls by @aretokas in #299
Stack: Fixes PullStack when using variable interpolation re #302
Stack: Record docker compose config at deploy time re #189
Stack: Improve log observability on PullStack re #244
Stack: Allow passing multiple services to Stack executions (before could only do the whole stack or a single service)
Now auto update will, by default, only redeploy the specific services with the image update.
Stack / ResourceSync: Fix some edge cases with git repo based files. For example, you can now point a new Stack to empty repo, and the "Initialize File" process works to init the file in the git repo.
Action: Fix actions working when using ssl_enabled Komodo Core re #286
ResourceSync: The pending changes view now can toggle between "Execute" view and "Commit" view.
Execute view shows sync changes from File -> UI perspective -- make changes in files, and sync the changes in.
Commit view shows the changes that will be made to the resource file TOML by commiting.
You can only take action (Execute / Commit) if you are looking at the appropriate view. This is to reduce confusion and ensure users don't accidentally choose the wrong action.
ResourceSync: The status shown (ie Failed etc.) has been refined and now better reflects the state of the sync. Previously syncs could show Failed status unnecessarily.
Alerter: Adds "Test Alerter" functionality. This allows for confirmation of correct alerting configuration without waiting for a real alert.
🔄 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/248
**Author:** [@mbecker20](https://github.com/mbecker20)
**Created:** 1/5/2025
**Status:** ✅ Merged
**Merged:** 3/23/2025
**Merged by:** [@mbecker20](https://github.com/mbecker20)
**Base:** `main` ← **Head:** `1.17.0`
---
### 📝 Commits (10+)
- [`bef9d93`](https://github.com/moghtech/komodo/commit/bef9d9397cb3f4f3bacebedb273cab0600088301) resolver v3
- [`7bae90b`](https://github.com/moghtech/komodo/commit/7bae90b661dcf056705a8a7bc3d34b0f85a4e69a) fmt
- [`c879c39`](https://github.com/moghtech/komodo/commit/c879c393be96a8e6451f57225a581b9c9c64452b) format
- [`c3857e9`](https://github.com/moghtech/komodo/commit/c3857e93b656bbc1c299ba1d43dd18738ef52681) resource2 not really a benefit
- [`d76736b`](https://github.com/moghtech/komodo/commit/d76736b71e942ca05f125b142450980336291fe3) axum to 0.8
- [`d67130f`](https://github.com/moghtech/komodo/commit/d67130f6eeb778d468461099efe4049e6aef662d) bump aws deps
- [`e89a5bf`](https://github.com/moghtech/komodo/commit/e89a5bface9b29f07719a27fd3886d94a0804985) just make it 1.17.0
- [`a524c3a`](https://github.com/moghtech/komodo/commit/a524c3ac2d27c52aa05366055bc506010950d457) clean up cors
- [`3c4e0b2`](https://github.com/moghtech/komodo/commit/3c4e0b23df1fa637711ca9077e16157cd4309ad0) the komodo env file should be highest priority over additional files
- [`85f1cc6`](https://github.com/moghtech/komodo/commit/85f1cc699cfff2eae6b20bd68b22b5395ad7298d) add entities / message for test alerter
### 📊 Changes
**403 files changed** (+24353 additions, -10998 deletions)
<details>
<summary>View changed files</summary>
📝 `.devcontainer/dev.compose.yaml` (+1 -1)
📝 `.devcontainer/devcontainer.json` (+1 -1)
➖ `.dockerignore` (+0 -14)
📝 `.gitignore` (+5 -3)
📝 `Cargo.lock` (+678 -538)
📝 `Cargo.toml` (+42 -43)
📝 `bin/binaries.Dockerfile` (+2 -2)
📝 `bin/cli/Cargo.toml` (+1 -0)
📝 `bin/cli/src/exec.rs` (+7 -0)
📝 `bin/core/Cargo.toml` (+5 -2)
📝 `bin/core/aio.Dockerfile` (+2 -2)
📝 `bin/core/multi-arch.Dockerfile` (+4 -4)
📝 `bin/core/single-arch.Dockerfile` (+3 -3)
📝 `bin/core/src/alert/discord.rs` (+30 -8)
📝 `bin/core/src/alert/mod.rs` (+80 -42)
📝 `bin/core/src/alert/slack.rs` (+42 -8)
📝 `bin/core/src/api/auth.rs` (+41 -46)
📝 `bin/core/src/api/execute/action.rs` (+55 -39)
➕ `bin/core/src/api/execute/alerter.rs` (+73 -0)
📝 `bin/core/src/api/execute/build.rs` (+58 -48)
_...and 80 more files_
</details>
### 📄 Description
## 🚨 BREAKING - `\` in Resource Sync TOML
Previously, the use of backslash (`\`) **had to be escaped** (change to `\\`) in Resource Sync TOML. **Now it doesn't**, which brings it in line with what you see in the UI. This also fixes `CommitSync` when used with Resources with config containing `\` re #247.
If you have sync files using the escaped `\\`, you can update them in your repo. You can also use the `Commit Sync` action to fix the files automatically (the pending change will be picked up on the Sync page).
Before
```toml
on_pull = """
bash ./upload-binaries.sh \\
release ghcr.io/mbecker20/komodo-binaries:latest \\
[[KOMODO_VERSION]] \\
[[KOMODO_GIT_TOKEN]]
"""
```
Now becomes (as of 1.17+)
```toml
on_pull = """
bash ./upload-binaries.sh \
release ghcr.io/mbecker20/komodo-binaries:latest \
[[KOMODO_VERSION]] \
[[KOMODO_GIT_TOKEN]]
"""
```
## 🚨 BREAKING - Environment file precedence
Previously if there were **overlapping environment variables** in the Komodo managed env, and in "Additional env files", the Additional files would take precedence. That is now flipped, so **Komodo managed env will always override** the additional passed files on conflicts when you are deploying with Komodo.
## Additional
- Added **configurable tag colors**.
- Updated [resolver_api](https://github.com/mbecker20/resolver_api) (internal dependency) to v3.
- Updated [openidconnect](https://github.com/ramosbugs/openidconnect-rs) to 4.0.0
- If your OIDC provider supports secret-less PKCE (such as Zitadel), Komodo now will accept an empty `oidc_client_secret` to support this flow.
- Fixed usage of OIDC provider behind TLS using custom certificates re #130
- See [this comment](https://github.com/moghtech/komodo/issues/130#issuecomment-2569821581) for an example of trusting additional TLS certificates by building them into the Komodo Core container.
- Network usage stats by @rita7lopes in #229
- **Repo**: Fix to `GetLastestCommit` when using custom clone path by @unsync in #282
- **Stack**: Add `post_deploy` command by @unsync in #288 re #227
- **Stack**: Add combined services logs view. You can toggle which services in the Stack to include in the combined log. #298
- **Stack** / **Deployment**: Add available image update indicator to the tables re #175
- **Stack** / **Repo**: Internally changes to remove automatic adding of `.git` in remote urls by @aretokas in #299
- **Stack**: Fixes `PullStack` when using variable interpolation re #302
- **Stack**: Record `docker compose config` at deploy time re #189
- **Stack**: Improve log observability on `PullStack` re #244
- **Stack**: Allow passing multiple services to Stack executions (before could only do the whole stack or a single service)
- Now auto update will, by default, only redeploy the specific services with the image update.
- **Stack** / **ResourceSync**: Fix some edge cases with git repo based files. For example, you can now point a new Stack to empty repo, and the "Initialize File" process works to init the file in the git repo.
- **Action**: Fix actions working when using `ssl_enabled` Komodo Core re #286
- **ResourceSync**: The pending changes view now can toggle between "Execute" view and "Commit" view.
- **Execute view** shows sync changes from File -> UI perspective -- make changes in files, and sync the changes in.
- **Commit view** shows the changes that will be made to the resource file TOML by commiting.
- You can only take action (Execute / Commit) if you are looking at the appropriate view. This is to reduce confusion and ensure users don't accidentally choose the wrong action.
- **ResourceSync**: The status shown (ie Failed etc.) has been refined and now better reflects the state of the sync. Previously syncs could show Failed status unnecessarily.
- **Alerter**: Adds "Test Alerter" functionality. This allows for confirmation of correct alerting configuration without waiting for a real alert.
- **UI**:
- Improve image visibility in UI by @unsync in #301
- Improve group actions page overflow by @unsync in #312
- Add multiple save buttons on the config pages re #190
- The UI will now automatically redirect back to the login screen when it finds the token has expired.
- [**Typscript Client**](https://www.npmjs.com/package/komodo_client): Adds `subscribe_to_update_websocket` method.
- UI is now using this method on the client to subscribe to websocket messages.
- Also, clicking the **websocket indicator in the topbar will now trigger reconnect**.
- Change all repo links from `mbecker20/komodo` -> `moghtech/komodo`
- Update default compose files with knowledge from #180 . It now works like this to ensure the conditions for working relative mounts are met:
```
volumes:
- ${PERIPHERY_ROOT_DIRECTORY}:${PERIPHERY_ROOT_DIRECTORY}
environment:
PERIPHERY_STACK_DIR: ${PERIPHERY_ROOT_DIRECTORY}/stacks
```
- Update **official icon** to be higher quality, and green for use on both light and dark backgrounds.
- Credit: **George Weston**, https://georgeweston.art

---
<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/248
Author: @mbecker20
Created: 1/5/2025
Status: ✅ Merged
Merged: 3/23/2025
Merged by: @mbecker20
Base:
main← Head:1.17.0📝 Commits (10+)
bef9d93resolver v37bae90bfmtc879c39formatc3857e9resource2 not really a benefitd76736baxum to 0.8d67130fbump aws depse89a5bfjust make it 1.17.0a524c3aclean up cors3c4e0b2the komodo env file should be highest priority over additional files85f1cc6add entities / message for test alerter📊 Changes
403 files changed (+24353 additions, -10998 deletions)
View changed files
📝
.devcontainer/dev.compose.yaml(+1 -1)📝
.devcontainer/devcontainer.json(+1 -1)➖
.dockerignore(+0 -14)📝
.gitignore(+5 -3)📝
Cargo.lock(+678 -538)📝
Cargo.toml(+42 -43)📝
bin/binaries.Dockerfile(+2 -2)📝
bin/cli/Cargo.toml(+1 -0)📝
bin/cli/src/exec.rs(+7 -0)📝
bin/core/Cargo.toml(+5 -2)📝
bin/core/aio.Dockerfile(+2 -2)📝
bin/core/multi-arch.Dockerfile(+4 -4)📝
bin/core/single-arch.Dockerfile(+3 -3)📝
bin/core/src/alert/discord.rs(+30 -8)📝
bin/core/src/alert/mod.rs(+80 -42)📝
bin/core/src/alert/slack.rs(+42 -8)📝
bin/core/src/api/auth.rs(+41 -46)📝
bin/core/src/api/execute/action.rs(+55 -39)➕
bin/core/src/api/execute/alerter.rs(+73 -0)📝
bin/core/src/api/execute/build.rs(+58 -48)...and 80 more files
📄 Description
🚨 BREAKING -
\in Resource Sync TOMLPreviously, the use of backslash (
\) had to be escaped (change to\\) in Resource Sync TOML. Now it doesn't, which brings it in line with what you see in the UI. This also fixesCommitSyncwhen used with Resources with config containing\re #247.If you have sync files using the escaped
\\, you can update them in your repo. You can also use theCommit Syncaction to fix the files automatically (the pending change will be picked up on the Sync page).Before
Now becomes (as of 1.17+)
🚨 BREAKING - Environment file precedence
Previously if there were overlapping environment variables in the Komodo managed env, and in "Additional env files", the Additional files would take precedence. That is now flipped, so Komodo managed env will always override the additional passed files on conflicts when you are deploying with Komodo.
Additional
Added configurable tag colors.
Updated resolver_api (internal dependency) to v3.
Updated openidconnect to 4.0.0
oidc_client_secretto support this flow.Fixed usage of OIDC provider behind TLS using custom certificates re #130
Network usage stats by @rita7lopes in #229
Repo: Fix to
GetLastestCommitwhen using custom clone path by @unsync in #282Stack: Add
post_deploycommand by @unsync in #288 re #227Stack: Add combined services logs view. You can toggle which services in the Stack to include in the combined log. #298
Stack / Deployment: Add available image update indicator to the tables re #175
Stack / Repo: Internally changes to remove automatic adding of
.gitin remote urls by @aretokas in #299Stack: Fixes
PullStackwhen using variable interpolation re #302Stack: Record
docker compose configat deploy time re #189Stack: Improve log observability on
PullStackre #244Stack: Allow passing multiple services to Stack executions (before could only do the whole stack or a single service)
Stack / ResourceSync: Fix some edge cases with git repo based files. For example, you can now point a new Stack to empty repo, and the "Initialize File" process works to init the file in the git repo.
Action: Fix actions working when using
ssl_enabledKomodo Core re #286ResourceSync: The pending changes view now can toggle between "Execute" view and "Commit" view.
ResourceSync: The status shown (ie Failed etc.) has been refined and now better reflects the state of the sync. Previously syncs could show Failed status unnecessarily.
Alerter: Adds "Test Alerter" functionality. This allows for confirmation of correct alerting configuration without waiting for a real alert.
UI:
Typscript Client: Adds
subscribe_to_update_websocketmethod.Change all repo links from
mbecker20/komodo->moghtech/komodoUpdate default compose files with knowledge from #180 . It now works like this to ensure the conditions for working relative mounts are met:
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.