Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feature: The executor now controls the public action map - meaning actions work without the API, and pages load faster (and much more!) #324

Merged
merged 3 commits into from
May 27, 2024

Conversation

jamesread
Copy link
Collaborator

This is a pretty major OliveTin change.

OliveTin actions in the configuration file do not necessarily map 1:1 to actions that can be started. The most notable example of this is entities, which "generate" buttons on the web UI from a single config entry. This means that OliveTin has to generate an ID for each individual button that can be started (as going by action titles with variables in them won't work). OliveTin has previously maintained this map in the grpc API, eg:

  • "1234" -> Start {{ container.Name }} | Plex
  • "4567" -> Start {{ container.Name }} | Minecraft
  • "8910" -> Start {{ container.Name }} | Haproxy

The problem is that this map is only updated / generated on requests to the API, specifically GetDashboardComponents. This created the following subtle problems;

This change moves the action map into the Executor, which in itself sounds like an incredibly trivial change, but in practice required a LOT of chunky reachitecting of the way OliveTin does things!

@jamesread jamesread added this pull request to the merge queue May 27, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks May 27, 2024
@jamesread jamesread added this pull request to the merge queue May 27, 2024
Merged via the queue into main with commit 4bac315 May 27, 2024
9 checks passed
@jamesread jamesread deleted the feature-executor-action-map branch May 27, 2024 22:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant