Releases: moghtech/komodo
Komodo v1.15.7
Changelog
- Fix commit failure: set git config --global if it isn't already.
- Add username to commit msg
Upgrading
- Upgrade periphery again to get Stack commit to work
Enjoy 🦎
Komodo v1.15.6
Changelog
- StopAllContainers will now skip containers with the
periphery.skip
label. - @metril- This has been added to config documentation (ie compose files)
- Stack: Git Repo mode
- Can now write compose files and commit the change to Git Repo. Requires write token.
- You can point it to a new repo, and configure file that doesn't exist yet, and initialize the file with a commit.
- Deploy stack if changed
- New API call and Procedure function, it checks the deployed contents vs the latest contents, and only deploys if changed.
- Webhooks will call this by default, can always deploy using
webhook_force_deploy
. - Can add
Deploy Stack If Changed
to Procedures.
- Resource Sync:
- In the Sync Pending view, you now have the option to execute pending changes one resource at a time.
- Can now write resource files when in File on Server mode / Git repo mode (via commit). Requires write token for Git repo mode.
- You can point it to a new file in a folder / repo that doesn't exist yet, and initialize the file with a commit.
- Specify multiple resource folders / files. Ie can select just 2 files in a folder now. More freedom to select which resource files to include.
- Server Stats Page:
- Move charts to react charts - @metril
- Processes table can be heavy on the browser. Now it won't load in at all until you open with a toggle.
- Add all containers page
Upgrading
There are some backward-compatible changes to the Periphery agent. Periphery needs an upgrade to commit compose file changes to git repos.
Thanks to everyone involved in this release, your feedback has been invaluable. 🦎
Komodo v1.15.5
Changelog
- Update your user's username and password
- Admin only: Delete Users
Upgrading
there is no change to Periphery from 1.15.4, upgrading Periphery is optional.
Enjoy 🦎
Komodo v1.15.4
Changelog
DeployStack
: Only compose down if "Destroy Before Deploy" is enabled.- Add timestamps toggle to the logs - @LawMixer
- Ensure container logs don't auto update when "Poll" isn't checked.
- Add build $VERSION to variables, interpolate it with [[$VERSION]], and also pass VERSION as a --build-arg (if its not already set)
- For fresh installs using
first_server
: a default Builder will also be created pointing to the Server - All the commands (Stack
pre_deploy
, Buildpre_build
, Repoon_pull
) support multiline shell and comments
Upgrading
These are all backward-compatible changes to the Periphery agent. Will need to upgrade Periphery to use the new features.
Thanks to everyone involved in this release, your feedback has been invaluable. 🦎
Komodo v1.15.3
Changelog
- Fix for Gitlab compatibility - Requires Periphery update - @Cirx08
- Support Stack pre deploy shell command - @mercxry
- Add toggle to return to behavior of recloning stack every time.
- Fix writing Stack compose file on server causes UI to freeze
- Env variable / volume / port parser supports single quote (
'
) wrapped value - Deployments can configure registry account to log in with for private images
- When you only have one server, new Stacks / Deployments will auto assign it to the single server.
Upgrading
There are some backward-compatible changes to the Periphery agent. Particularly, Gitlab support requires Periphery update.
Thanks to everyone involved in this release, your feedback has been invaluable. 🦎
Komodo v1.15.2
Some OIDC providers are having some trouble working with Komodo. It seems some providers (like Zitadel) attach additional audiences besides the client_id
, and Core needs to know about it. This adds KOMODO_OIDC_ADDITIONAL_AUDIENCES=aud-1,aud-2
environment variable to add additional audiences you need.
If you see an error like this when you try to login with your OIDC provider:
{"error":"Failed to verify token claims","trace":["Invalid audiences: `<AUDIENCE>` is not a trusted audience"]}
If the audience can be trusted, you can add the to KOMODO_OIDC_ADDITIONAL_AUDIENCES
.
Note. I do release Komodo Periphery 1.15.2 as well for version alignment, there is no change to Periphery from 1.15.0 here and Periphery doesn't need to be upgraded again (you can if you like).
Thanks to everyone that tried out OIDC so far and reported this issue. 🦎
Komodo v1.15.1
Some OIDC providers are having some trouble working with Komodo, this update should help fix some issue with a trailing /
with the provider URL:
If you see an error like this in the Komodo Core startup logs, this release may help:
called `Result::unwrap()` on an `Err` value: Failed to init default OIDC client
Caused by:
0: Failed to get OIDC /.well-known/openid-configuration
1: Validation error: unexpected issuer URI `https://your.provider.domain` (expected `https:/your.provider.domain/`)
If you see this, ensure your KOMODO_OIDC_PROVIDER does NOT end in a trailing slash, and try it again with this release 1.15.1.
🚨 Authentik Users
- Ensure your
KOMODO_OIDC_PROVIDER
DOES end in a trailing/
, it is now sensitive to this. Other providers may require trailing/
, or NOT require trailing/
.
Note. I do release Komodo Periphery 1.15.1 as well for version alignment, there is no change to Periphery from 1.15.0 here and Periphery doesn't need to be upgraded again (you can if you like).
Thanks to everyone that tried out OIDC so far and reported this issue. 🦎
Komodo v1.15.0
To see the changes to the UI, check out the demo: https://demo.komo.do (you can log in with demo : demo
).
-
You can now log in with self hosted SSO provider using OIDC. Tested with Authentik and Gitea.
- Use
KOMODO_OIDC_
env vars to configure: https://github.com/mbecker20/komodo/blob/main/compose/compose.env#L74 - Utilizes the openidconnect crate.
- Use
-
UX Improvements:
- Redesigned all resource headers and configs thanks to @karamvirsingh98
- improve in UI editors using monaco-editor
- Along with the nice editor, you can also now update compose files on server from the UI. - @DanCardin
- Use
monaco-editor
diffing to diff all changes to configuration and resource sync pending changes. - Environments now keep comments - @FibreTTP
-
Periphery supports https enabled communication using self signed certs - @seancallaway
- Enable with
- PERIPHERY_SSL_ENABLED: true
- Enable with
-
Repo-based stacks can now pull the repo on deploy, and no longer deletes the folder after deploy issue.
-
Alerter Discord support - @LawMixer
-
Implement KOMODO_DISABLE_CONFIRM_DIALOG - disable the popups which become slow without copy / paste - @drixtol
-
Support "_FILE" env variables for use with docker compose secrets - @Cheezzhead
-
Stacks support passing --env-file {custom file} even when no env vars defined in Komodo. Users can have .env file on server and attach it.
-
KOMODO_DISABLE_NON_ADMIN_CREATE config
-
Super admin user which can give other users admin
-
Slim down images - @neicureuil
- Tried alpine base, but
musl
doesn't play very nicely with Rust. - Did manage to slim down the images on debian base: 250 MB for Core, 350 MB for Periphery.
- Tried alpine base, but
-
Improve setup compose files (
database.compose.yaml
andcompose.env
)- For example,
sqlite
: https://komo.do/docs/setup/sqlite.
- For example,
-
Environment / volumes / ports resource file deserializers keep comments and support more syntaxes for greater copy-paste compatibility
- Supports:
# "Env Var" VARIABLE = value # "Key Value" VARIABLE: value # "Yaml Array" - "VARIABLE=value" - /path/to/folder:/folder
-
Resource Sync
- In UI editor and Files on Host mode
- Info tab to see file contents
- "Managed" mode
-
Core-based repo hash service more efficient in getting the latest commit hashes to compare against the built / deployed hash.
Public Build Server
- The Komodo release builds are now done one a publicly accessible Komodo instance:
🔒 Upgrading to HTTPS:
For backward compatibility, the default for Periphery is still http
. However the configs are all updated to enable SSL, including the systemd installer
, and compose file examples. After updating to 1.15, be sure to add PERIPHERY_SSL_ENABLED: true
to your compose file periphery
service, or add ssl_enabled = true
to your periphery.config.toml
.
Note that you will also need to update your Server
address from http://...
to https://...
.
Stacks + Resource Sync users
If you are using the default run_directory
, the sync will show this change run_directory = "./" => ____________ (emty line)
.
This is expected and this change should be synced. The behavior will of the Stack be the same.
When you upgrade Komodo, be sure to open your browser console/dev-tools, go to network tab, disable cache, and the reload page with dev-tools open. Otherwise, your browser may keep using a cached version of the old UI version.
Thanks to everyone involved in this release, your feedback has been invaluable.
Enjoy 🦎
Komodo v1.14.2
- Add KOMODO_DISABLE_USER_REGISTRATION environment variable. Will disallow new users from registering and hide the "Sign Up" button. - @scorp200
- Environments support End of line comments beginning with
#
.- Example:
ENV_VAR_1 = env_value_1 # this is an end of line comment
.
- Example:
- Document support for Postgres / Sqlite storage backends by utilizing the FerretDB Mongo Adapter.
- Overall revamped the Komodo Setup docs, using direct file embeds: https://komo.do/docs/setup.
Upgrading
To update, just compose down-compose up Core, update periphery using the systemd installer (or use the latest Periphery container image). Api is backward compatible with 1.14.0+ (besides new features) so it doesn't matter the ordering you update.
When you upgrade Komodo, be sure to open your browser console/dev-tools, go to network tab, disable cache, and the reload page with dev-tools open. Otherwise, your browser may keep using a cached version of the old UI version.
Enjoy 🦎
Komodo v1.14.1
Komodo v1.14.1
- Stacks: No longer force deletion of stack folder when using UI defined compose file contents. It is still recommended to use docker volumes or absolute mount paths, and NOT mount anything inside the stack folder. Repo based stacks must still be deleted, in order to ensure fresh reclone is always possible without deleting needed data ie mounts. See #68.
- Stacks: Adds feature to
docker compose build
before compose down / compose up. This allows users to build in the compose file (say you are using a git repo containing Dockerfile), and still minimize down time. Complete with custom "Build Extra Args" which support Variable / Secret interpolation. - Stacks: Adds option to disable automatic
docker compose pull
before compose down / compose up. Users which want to do this can manage pulling usingpull_policy
in their compose files. - #64 - @FibreTTP - Stacks: Fix an issue showing latest file contents when using "Files on Host", but the UI "File Contents" still holds some outdated file contents. - @mmartial
- Repos: Fix
PullRepo
broken when using a custom clone path. - Stacks, Deployments, Repos, Builds, Servers: Configure custom "Links" which are displayed in the resource header, and provide a quick link to the URL in a new tab.
Upgrading
To update, just compose down-compose up Core, update periphery using the systemd installer (or use the latest Periphery container image). Api is backward compatible with 1.14.0 (besides new features) so it doesn't matter the ordering you update.
When you upgrade Komodo, be sure to open your browser console/dev-tools, go to network tab, disable cache, and the reload page with dev-tools open. Otherwise, your browser may keep using a cached version of the old UI version.
Thanks to everyone involved in this release, your feedback has been invaluable.
Enjoy 🦎