allure-framework / allure-framework/allure3

Allure watch does not reload allurerc.mjs on change, need dynamic environments

Open
#739 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
HTML
Stars
401
Forks
58
Avg merge
2d 20h
Merged PRs (30d)
34

Description

**Describe the bug**
During the watch if allurerc.mjs is updated, allure does not try to reload it.

**To Reproduce**
Steps to reproduce the behavior:
1. Coordinator: run 'allure watch' for /shared/allure-results
2. Agent1 and ... AgentN independently in time:
- locks free EnvN from env pool ,
- update allurerc.mjs (hey my tests are in EnvN)
- and start running test on it
- writing results to /shared/allure-results

**Expected behavior**
Getting new Environments and compobox and grouping dynamically.

Note: if Coordinator restarts watch after env defined, everything works fine. Because allurerc.mjs - "reread".

**Alternatives**
- envs defined dynamically in js, no need to update allurerc.mjs (could be more canonical), like jq-queries or javascript mapping.
- watch supports "multifolder", e.g. each child is separate report, and root is a pluging-like. Like shown [here](https://youtu.be/jaCDF-T4oUE?t=1972)

**Screenshots**
N/A

**Desktop (please complete the following information):**
- Allure Version 3.13.1

**Smartphone (please complete the following information):**
- N/A

**Additional context**
Topology is more complex, just worth mentioning:
Coordinator: Debian with shared folder, and nfs4 shared allure-results. And allure-watch is spin in tiny node:20-slim container and allure-results passed by volume.
Agents: Gets from pool remote host (not vm) a dut, nfs4 is mounted, and running pytests tests write to share.

Concern was `docker (watch fs) <-> nfs-server <-> ssh mount`. File update signals properly propagated is ok-ish. On 3-5 agents continiously adding to it looks stable (no metrics for now).

The only concern Chrome got a flikery - like the whole page become blank - and inaccessible when test event arrive. (tests are usually couple seconds long, can be troublesome if tests are shorter). Console-log is empty, will hold and report separate ticket.

Contributor guide

Open the contributing guide

Research direction

The issue names allurerc.mjs and the allure watch entry point; start by reproducing a config change during a watch against /shared/allure-results. Done means updated environments, combobox entries, and grouping appear dynamically without restarting the coordinator.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, javascript, node.js
Domain
cli, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.