AttributeError: 'bool' object has no attribute 'get'

494 views
Skip to first unread message

Derek Li

unread,
Oct 18, 2017, 10:46:36 AM10/18/17
to Salt-users

I have been using salt.noarch 2016.3.3-1.el6 on my production servers for a long time now. I recently decided to try to update packages by running 
yum -y update, which updated all my packages on a specific server. Now I have a salt.noarch 2017.7.2-1.el6 as well as updated python packages (total of 150 packages...) When I try to run a state.apply for a state state, I get an error saying:

 File "/usr/bin/salt-call", line 11, in <module>
    salt_call
()
 
File "/usr/lib/python2.7/site-packages/salt/scripts.py", line 391, in salt_call
    client
.run()
 
File "/usr/lib/python2.7/site-packages/salt/cli/call.py", line 58, in run
   
caller.run()
 
File "/usr/lib/python2.7/site-packages/salt/cli/caller.py", line 134, in run
    ret
= self.call()
 
File "/usr/lib/python2.7/site-packages/salt/cli/caller.py", line 204, in call
    ret
['return'] = func(*args, **kwargs)
 
File "/usr/lib/python2.7/site-packages/salt/modules/state.py", line 592, in apply_
   
return sls(mods, **kwargs)
 
File "/usr/lib/python2.7/site-packages/salt/modules/state.py", line 1109, in sls
    ret
= st_.state.call_high(high_, orchestration_jid)
 
File "/usr/lib/python2.7/site-packages/salt/state.py", line 2531, in call_high
    ret
= self.call_chunks(chunks)
 
File "/usr/lib/python2.7/site-packages/salt/state.py", line 2017, in call_chunks
    running
= self.call_chunk(low, running, chunks)
 
File "/usr/lib/python2.7/site-packages/salt/state.py", line 2345, in call_chunk
    running
= self.call_chunk(chunk, running, chunks)
 
File "/usr/lib/python2.7/site-packages/salt/state.py", line 2345, in call_chunk
    running
= self.call_chunk(chunk, running, chunks)
 
File "/usr/lib/python2.7/site-packages/salt/state.py", line 2356, in call_chunk
    running
= self.call_chunk(low, running, chunks)
 
File "/usr/lib/python2.7/site-packages/salt/state.py", line 2257, in call_chunk
    status
, reqs = self.check_requisite(low, running, chunks, pre=True)
 
File "/usr/lib/python2.7/site-packages/salt/state.py", line 2097, in check_requisite
   
self.reconcile_procs(running)
 
File "/usr/lib/python2.7/site-packages/salt/state.py", line 2047, in reconcile_procs
    proc
= running[tag].get('proc')
AttributeError: 'bool' object has no attribute 'get'

Setup

The state file that I am running to deploy my changes are as follows: https://gist.github.com/likered/112f03c9f88a13cdf5c687e6852c8317


Steps to Reproduce Issue


Updating PHP...


rpm -Uvh ius-release*.rpm
yum -y update
yum -y install php56u php56u-opcache php56u-xml php56u-mcrypt php56u-gd php56u-devel php56u-mysql php56u-intl php56u-mbstring php56u-bcmath



Deploying new changes to server via salt...


salt 'server.name' state.apply role.web


Entire terminal output beginning-to-now: https://gist.github.com/likered/e66804c154c6084fc77473a010f642cb




Versions Report

(Provided by running salt --versions-report. Please also mention any differences in master/minion versions.)


BEFORE:

[root@web15 dli]# salt-call --versions-report
Salt Version:
           Salt: 2016.3.3
 
Dependency Versions:
           cffi: Not Installed
       cherrypy: Not Installed
       dateutil: 1.4.1
          gitdb: Not Installed
      gitpython: Not Installed
          ioflo: Not Installed
         Jinja2: 2.7.3
        libgit2: Not Installed
        libnacl: Not Installed
       M2Crypto: 0.20.2
           Mako: Not Installed
   msgpack-pure: Not Installed
 msgpack-python: 0.4.6
   mysql-python: Not Installed
      pycparser: Not Installed
       pycrypto: 2.6.1
         pygit2: Not Installed
         Python: 2.6.6 (r266:84292, Aug 18 2016, 15:13:37)
   python-gnupg: Not Installed
         PyYAML: 3.11
          PyZMQ: 14.5.0
           RAET: Not Installed
          smmap: Not Installed
        timelib: Not Installed
        Tornado: 4.2.1
            ZMQ: 4.0.5
 
System Versions:
           dist: centos 6.8 Final
        machine: x86_64
        release: 2.6.32-642.6.1.el6.x86_64
         system: Linux
        version: CentOS 6.8 Final

AFTER:

[root@web14 dli]# salt-call --versions-report
Salt Version:
           Salt: 2017.7.2
 
Dependency Versions:
           cffi: Not Installed
       cherrypy: Not Installed
       dateutil: Not Installed
      docker-py: Not Installed
          gitdb: Not Installed
      gitpython: Not Installed
          ioflo: Not Installed
         Jinja2: 2.8.1
        libgit2: Not Installed
        libnacl: Not Installed
       M2Crypto: Not Installed
           Mako: Not Installed
   msgpack-pure: Not Installed
 msgpack-python: 0.4.6
   mysql-python: Not Installed
      pycparser: Not Installed
       pycrypto: 2.6.1
   pycryptodome: Not Installed
         pygit2: Not Installed
         Python: 2.7.13 (default, Jul 12 2017, 17:32:34)
   python-gnupg: Not Installed
         PyYAML: 3.11
          PyZMQ: 14.5.0
           RAET: Not Installed
          smmap: Not Installed
        timelib: Not Installed
        Tornado: 4.2.1
            ZMQ: 4.0.5
 
System Versions:
           dist: centos 6.9 Final
         locale: UTF-8
        machine: x86_64
        release: 2.6.32-642.6.1.el6.x86_64
         system: Linux
        version: CentOS 6.9 Final

MASTER:

[root@salt-master salt]# salt-call --versions-report
Salt Version:
           Salt: 2016.3.3
 
Dependency Versions:
           cffi: Not Installed
       cherrypy: 3.2.2
       dateutil: 2.5.3
          gitdb: 2.0.0
      gitpython: Not Installed
          ioflo: Not Installed
         Jinja2: 2.7.3
        libgit2: Not Installed
        libnacl: Not Installed
       M2Crypto: 0.20.2
           Mako: Not Installed
   msgpack-pure: Not Installed
 msgpack-python: 0.4.6
   mysql-python: 1.2.3c1
      pycparser: Not Installed
       pycrypto: 2.6.1
         pygit2: Not Installed
         Python: 2.6.6 (r266:84292, Aug 18 2016, 15:13:37)
   python-gnupg: Not Installed
         PyYAML: 3.11
          PyZMQ: 14.5.0
           RAET: Not Installed
          smmap: 2.0.1
        timelib: Not Installed
        Tornado: 4.2.1
            ZMQ: 4.0.5
 
System Versions:
           dist: centos 6.8 Final
        machine: x86_64
        release: 2.6.32-642.6.2.el6.x86_64
         system: Linux
        version: CentOS 6.8 Final


Dmitry Golubenko

unread,
Oct 18, 2017, 10:22:42 PM10/18/17
to salt-...@googlegroups.com
В Ср, 18/10/2017 в 07:15 -0700, Derek Li пишет:
> I have been using salt.noarch 2016.3.3-1.el6 on my production servers
> for a long time now. I recently decided to try to update packages by
> running yum -y update, which updated all my packages on a specific
> server. Now I have a salt.noarch 2017.7.2-1.el6 as well as updated
> python packages (total of 150 packages...)

did you update your saltmaster first? relnotes clearly states new
2017.7 minions can't work with old 2016.x master

Daniel Wallace

unread,
Oct 19, 2017, 10:10:57 AM10/19/17
to Salt-users
That is actually fixed with 2017.7.2.

We reverted the backwards compatiblity change, so while we don't technically support it and reserve the right to break it in the future (only in the case that there is no other way to go forward with something that has to change)  it does in fact work with a salt minion that is 2017.7.2 and 2016.3.3. master



--
You received this message because you are subscribed to the Google Groups "Salt-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to salt-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/salt-users/1508379745.2554.103.camel%40xiag.ch.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages