mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
Merge pull request #39109 from bdrung/fix-merge-order-warning
Fix top_file_merging_strategy warning if env_order is set
This commit is contained in:
commit
8c0befaa8b
1 changed files with 6 additions and 11 deletions
|
@ -2507,22 +2507,17 @@ class BaseHighState(object):
|
|||
envs.extend([x for x in list(self.opts['file_roots'])
|
||||
if x not in envs])
|
||||
env_order = self.opts.get('env_order', [])
|
||||
# Remove duplicates while preserving the order
|
||||
members = set()
|
||||
env_order = [env for env in env_order if not (env in members or members.add(env))]
|
||||
client_envs = self.client.envs()
|
||||
if env_order and client_envs:
|
||||
client_env_list = self.client.envs()
|
||||
env_intersection = set(env_order).intersection(client_env_list)
|
||||
final_list = []
|
||||
for ord_env in env_order:
|
||||
if ord_env in env_intersection and ord_env not in final_list:
|
||||
final_list.append(ord_env)
|
||||
return final_list
|
||||
return [env for env in env_order if env in client_envs]
|
||||
|
||||
elif env_order:
|
||||
return env_order
|
||||
else:
|
||||
for cenv in client_envs:
|
||||
if cenv not in envs:
|
||||
envs.append(cenv)
|
||||
envs.extend([env for env in client_envs if env not in envs])
|
||||
return envs
|
||||
|
||||
def get_tops(self):
|
||||
|
@ -2591,7 +2586,7 @@ class BaseHighState(object):
|
|||
tops[saltenv].append({})
|
||||
log.debug('No contents loaded for env: {0}'.format(saltenv))
|
||||
|
||||
if found > 1 and merging_strategy == 'merge':
|
||||
if found > 1 and merging_strategy == 'merge' and not self.opts.get('env_order', None):
|
||||
log.warning(
|
||||
'top_file_merging_strategy is set to \'%s\' and '
|
||||
'multiple top files were found. Merging order is not '
|
||||
|
|
Loading…
Add table
Reference in a new issue