When creating or attaching pillar data through the SaltStack Config (RaaS) UI, the minion does not receive the assigned pillar. Executing pillar.items on the affected minion returns an empty response, even though the job completes successfully.
Log verification shows the following behavior:
The job executes successfully (success: True), but the pillar data returned is {}, indicating that the minion is not receiving or processing the pillar.
SaltStack Config 8.x
tgtmatch Engine in raas.confThe tgtmatch engine was missing under /etc/salt/master.d/raas.conf.
This engine is essential for target resolution between the Salt master and RaaS.
To correct this, the following entry was added under the engines section:
Purpose of tgtmatch:
Resolves targets from RaaS queries
Allows RaaS UI/API to evaluate node groups, grains, pillar data, and compound targets
Ensures accurate and consistent minion selection before job execution
These engines are mandatory for seamless integration between the Salt master and SaltStack Config, handling event flow, RPC tasks, job lifecycle tracking, and minion targeting.
top.sls Under /srv/pillarA top.sls file existed on both Salt masters.
This file overrides pillar targeting specified through the SaltStack Config UI, leading to minions receiving no pillar data.
Add the missing tgtmatch engine to /etc/salt/master.d/raas.conf:
Remove the conflicting top.sls file located under:
Restart Salt master and RaaS services on both nodes to reload configuration, engines, and event processing.
Validate the fix by attaching and detaching pillars through the SaltStack Config UI.
Multiple tests confirmed that pillar data was correctly received by the minions after this change.
UI Refresh Guidance:
Users should refresh the SaltStack Config UI before and after attaching or detaching pillars to ensure the interface displays the correct state before reviewing pillar items.