Allow Publishing of results in Actions in-additon to Action chains
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 6.5k
- Forks
- 787
- PR merge metrics
- No merged PRs in 30d
Description
When writing aliases for ChatOPS the referenced results from an single action can get really long. It would be really nice if we could publish results for actions in much the same manner as can be done with action chains so that our formatting for the alias is more succinct and readable without excessive repetition.
An example of some alias formatting as it stands:
Shard Info:
Primary: *{{ execution.result.result.health.active_primary_shards }}*
Unassigned: *{{ execution.result.result.health.unassigned_shards }}*
Relocating: *{{ execution.result.result.health.relocating_shards }}*
Initializing: *{{ execution.result.result.health.initializing_shards }}*
Delayed Unassigned: *{{ execution.result.result.health.delayed_unassigned_shards }}*
Would could be replaced with publishing to the more readable:
Shard Info:
Primary: *{{ execution.result.elk.shards.active }}*
Unassigned: *{{ execution.result.elk.shards.unassigned }}*
Relocating: *{{ execution.result.elk.shards.relocating }}*
Initializing: *{{ execution.result.elk.shards.initializing_ }}*
Delayed Unassigned: *{{ execution.result.elk.delayed_unassigned_shards }}*
This tends to be harder to read when text is not as neatly formatted, such as when contained within a sentence or body of text. Also this would allow longer more meaningful variables in the Python actions which can match what's returned by external services (the above is from elasticsearch) and also shorter and thus more readable names in the aliases.
It could also reduce the need for repetition within action chains where an action is re-used as the publishing could be recorded on the chain instead of in each action chain. Which helps with the goal of repeatable Lego blocks.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the action-result and action-chain handling used by ChatOps aliases; the issue names no files or tests, so first trace those entry points in the repository. Done means a single action can expose published result names for aliases, with behavior matching chain publishing and readable variable references.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, devops
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100