The two main features of this release are Linked Repos and Alert Maintenance Windows.
Repo Linking
For Repo linking, this means you can link Repos that you configure once in Komodo to multiple resources. This avoids having to configure your repo provider, name, and account multiple times (you can just select it in the dropdown), and also keeps things in sync if you change the underlying repo provider, name, branch, or account. This is available on all Resources that use git repos (Stacks, Builds, and Resource Syncs).
For Stacks, this means that multiple Stacks attached to the same Repo will share the same repo clone on individual hosts. You can migrate your Stacks to used the linked Repo in place, just note that it won't deal with any data mounted inside the clone folders. Those would need to be moved to the new Repo clone path (as specified in the Repo config). Ideally all your data mounts are outside of the repo. Config files which are committed inside the repo are fine to keep mounted in using relative path however.
Note that you can but don't need to attach a Server / Builder to the Repo. If you do configure an attachment on the Repo, the Repo can still be attached to eg Stacks on other Servers. The Repo server / builder attachments aren't considered by Resources depending on the Repo.
Alert Maintenance Windows
These allow you to configure time periods to suppress alerts when downtime is expected, such as for system updates. You can schedule either Daily, Weekly, or One Time maintenance windows, and configure them on either individual Servers, or on individual Alerters.
Similar to komodo.execute_terminal, but set up to connect directly to container exec
Only requires disable_container_exec = false in Periphery config. Direct terminals can be disabled.
Stack, Build, Resource Sync: Can now link Komodo Repos (in the sidebar) directly to these resources
Stacks: Have them share a single repo clone on your hosts.
Don't need to attach Repo to any Server / Builder, but you can if you would like, to manually pull / reclone.
Note: Non admin users need Attach permission on the Repo to be able to link Resources to it.
Server / Alerter: Add per-server and per-alerter maintenance window configuration to suppress alerts during planned time periods. #550 by @R3D2 and @mbecker20
Misc
Failed OIDC provider initialization just error logs, doesn't crash core. Can still login with other providers. Re. #567
OIDC login gets username using the standard userinfo endpoint, instead of token claims. Does not affect already created users in Komodo, only new users. Re. #557
🔄 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/591
**Author:** [@mbecker20](https://github.com/mbecker20)
**Created:** 6/7/2025
**Status:** ✅ Merged
**Merged:** 6/15/2025
**Merged by:** [@mbecker20](https://github.com/mbecker20)
**Base:** `main` ← **Head:** `1.18.2`
---
### 📝 Commits (10+)
- [`2409569`](https://github.com/moghtech/komodo/commit/24095690d249f76404c885f8ed46106ed00f981c) feat: add maintenance window management to suppress alerts during planned activities (#550)
- [`cf37886`](https://github.com/moghtech/komodo/commit/cf378866045cbc5d9c6452b0f0883116ccf8375d) set version 1.18.2
- [`85be145`](https://github.com/moghtech/komodo/commit/85be14561e804c602b90f293068ef3822b2a9b50) failed OIDC provider init doesn't cause panic, just error log
- [`03a4970`](https://github.com/moghtech/komodo/commit/03a49707a86ae731cb35f76af7c8e45ba5fd3081) OIDC: use userinfo endpoint to get preffered username for user.
- [`6a1b210`](https://github.com/moghtech/komodo/commit/6a1b21028db2815fcea212ca12bf2cf4df9262dc) add profile to scopes and account for username already taken
- [`178d2ff`](https://github.com/moghtech/komodo/commit/178d2ffc1e545791f69cdf0ba79582ca81d1948d) search through server docker lists
- [`117dcb0`](https://github.com/moghtech/komodo/commit/117dcb0d5ceed610fdf020555c967b1f92b8406b) move maintenance stuff
- [`661ee01`](https://github.com/moghtech/komodo/commit/661ee01e7d06ef0b118b1be713ea5fd9955ff3b4) refactor maintenance schedules to have more toml compatible structure
- [`f38304a`](https://github.com/moghtech/komodo/commit/f38304a11a25b1e4a5429d4f6a7ac512d8906414) daily schedule type use struct
- [`eb0a6f4`](https://github.com/moghtech/komodo/commit/eb0a6f407dfd47d81d3024cf1893ec1eb3a2ff44) add timezone to core info response
### 📊 Changes
**129 files changed** (+6727 additions, -3090 deletions)
<details>
<summary>View changed files</summary>
📝 `Cargo.lock` (+89 -109)
📝 `Cargo.toml` (+3 -3)
📝 `bin/core/src/alert/mod.rs` (+12 -1)
📝 `bin/core/src/api/auth.rs` (+4 -10)
📝 `bin/core/src/api/execute/build.rs` (+23 -17)
📝 `bin/core/src/api/execute/repo.rs` (+4 -4)
📝 `bin/core/src/api/execute/stack.rs` (+29 -14)
📝 `bin/core/src/api/execute/sync.rs` (+19 -17)
📝 `bin/core/src/api/read/mod.rs` (+1 -0)
📝 `bin/core/src/api/read/toml.rs` (+26 -25)
📝 `bin/core/src/api/terminal.rs` (+232 -9)
📝 `bin/core/src/api/write/build.rs` (+140 -73)
📝 `bin/core/src/api/write/deployment.rs` (+4 -3)
📝 `bin/core/src/api/write/stack.rs` (+41 -23)
📝 `bin/core/src/api/write/sync.rs` (+201 -75)
📝 `bin/core/src/auth/github/mod.rs` (+16 -3)
📝 `bin/core/src/auth/google/mod.rs` (+21 -7)
📝 `bin/core/src/auth/oidc/client.rs` (+3 -4)
📝 `bin/core/src/auth/oidc/mod.rs` (+40 -7)
📝 `bin/core/src/config.rs` (+1 -0)
_...and 80 more files_
</details>
### 📄 Description
# Changelog
The two main features of this release are **Linked Repos** and **Alert Maintenance Windows**.
## Repo Linking
For Repo linking, this means you can link Repos that you configure once in Komodo to *multiple resources*. This avoids having to configure your repo provider, name, and account multiple times (you can just select it in the dropdown), and also keeps things in sync if you change the underlying repo provider, name, branch, or account. This is available on all Resources that use git repos (`Stacks`, `Builds`, and `Resource Syncs`).
For Stacks, this means that multiple Stacks attached to the same Repo will **share the same repo clone on individual hosts**. You can migrate your Stacks to used the linked Repo in place, just note that it won't deal with any data mounted inside the clone folders. Those would need to be moved to the new Repo clone path (as specified in the Repo config). Ideally all your data mounts are outside of the repo. Config files which are committed inside the repo are fine to keep mounted in using relative path however.
Note that you can but don't need to attach a Server / Builder to the Repo. If you do configure an attachment on the Repo, the Repo can still be attached to eg Stacks on other Servers. The Repo server / builder attachments aren't considered by Resources depending on the Repo.
## Alert Maintenance Windows
These allow you to configure time periods to suppress alerts when downtime is expected, such as for system updates. You can schedule either Daily, Weekly, or One Time maintenance windows, and configure them on either individual `Servers`, or on individual `Alerters`.
### Resource
- **Server**: Add docker lists search re #548
- **Server**: Add Periphery version indicator to Server tables
- **Deployment / All containers**: Support capitals and `.` in the names re #563
- **Actions**: Add `komodo.execute_container_exec`, `komodo.execute_deployment_exec`, `komodo.execute_stack_exec` methods
- Similar to `komodo.execute_terminal`, but set up to connect directly to container exec
- Only requires `disable_container_exec = false` in Periphery config. Direct terminals can be disabled.
- **Stack, Build, Resource Sync**: Can now link **Komodo Repos** (in the sidebar) directly to these resources
- **Stacks**: Have them share a single repo clone on your hosts.
- *Don't* need to attach Repo to any Server / Builder, but you can if you would like, to manually pull / reclone.
- *Note*: Non admin users need `Attach` permission on the Repo to be able to link Resources to it.
- **Server / Alerter**: Add per-server and per-alerter maintenance window configuration to suppress alerts during planned time periods. #550 by @R3D2 and @mbecker20
### Misc
- Failed OIDC provider initialization just error logs, doesn't crash core. Can still login with other providers. Re. #567
- OIDC login gets username using the standard `userinfo` endpoint, instead of token claims. Does not affect already created users in Komodo, only new users. Re. #557
---
<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/591
Author: @mbecker20
Created: 6/7/2025
Status: ✅ Merged
Merged: 6/15/2025
Merged by: @mbecker20
Base:
main← Head:1.18.2📝 Commits (10+)
2409569feat: add maintenance window management to suppress alerts during planned activities (#550)cf37886set version 1.18.285be145failed OIDC provider init doesn't cause panic, just error log03a4970OIDC: use userinfo endpoint to get preffered username for user.6a1b210add profile to scopes and account for username already taken178d2ffsearch through server docker lists117dcb0move maintenance stuff661ee01refactor maintenance schedules to have more toml compatible structuref38304adaily schedule type use structeb0a6f4add timezone to core info response📊 Changes
129 files changed (+6727 additions, -3090 deletions)
View changed files
📝
Cargo.lock(+89 -109)📝
Cargo.toml(+3 -3)📝
bin/core/src/alert/mod.rs(+12 -1)📝
bin/core/src/api/auth.rs(+4 -10)📝
bin/core/src/api/execute/build.rs(+23 -17)📝
bin/core/src/api/execute/repo.rs(+4 -4)📝
bin/core/src/api/execute/stack.rs(+29 -14)📝
bin/core/src/api/execute/sync.rs(+19 -17)📝
bin/core/src/api/read/mod.rs(+1 -0)📝
bin/core/src/api/read/toml.rs(+26 -25)📝
bin/core/src/api/terminal.rs(+232 -9)📝
bin/core/src/api/write/build.rs(+140 -73)📝
bin/core/src/api/write/deployment.rs(+4 -3)📝
bin/core/src/api/write/stack.rs(+41 -23)📝
bin/core/src/api/write/sync.rs(+201 -75)📝
bin/core/src/auth/github/mod.rs(+16 -3)📝
bin/core/src/auth/google/mod.rs(+21 -7)📝
bin/core/src/auth/oidc/client.rs(+3 -4)📝
bin/core/src/auth/oidc/mod.rs(+40 -7)📝
bin/core/src/config.rs(+1 -0)...and 80 more files
📄 Description
Changelog
The two main features of this release are Linked Repos and Alert Maintenance Windows.
Repo Linking
For Repo linking, this means you can link Repos that you configure once in Komodo to multiple resources. This avoids having to configure your repo provider, name, and account multiple times (you can just select it in the dropdown), and also keeps things in sync if you change the underlying repo provider, name, branch, or account. This is available on all Resources that use git repos (
Stacks,Builds, andResource Syncs).For Stacks, this means that multiple Stacks attached to the same Repo will share the same repo clone on individual hosts. You can migrate your Stacks to used the linked Repo in place, just note that it won't deal with any data mounted inside the clone folders. Those would need to be moved to the new Repo clone path (as specified in the Repo config). Ideally all your data mounts are outside of the repo. Config files which are committed inside the repo are fine to keep mounted in using relative path however.
Note that you can but don't need to attach a Server / Builder to the Repo. If you do configure an attachment on the Repo, the Repo can still be attached to eg Stacks on other Servers. The Repo server / builder attachments aren't considered by Resources depending on the Repo.
Alert Maintenance Windows
These allow you to configure time periods to suppress alerts when downtime is expected, such as for system updates. You can schedule either Daily, Weekly, or One Time maintenance windows, and configure them on either individual
Servers, or on individualAlerters.Resource
.in the names re Periphery under docker is not creating git repo folders (#563)komodo.execute_container_exec,komodo.execute_deployment_exec,komodo.execute_stack_execmethodskomodo.execute_terminal, but set up to connect directly to container execdisable_container_exec = falsein Periphery config. Direct terminals can be disabled.Attachpermission on the Repo to be able to link Resources to it.Misc
userinfoendpoint, instead of token claims. Does not affect already created users in Komodo, only new users. Re. #557🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.