Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scheduled runners not executed (for proxy minions, at least) #36021

Closed
mirceaulinic opened this issue Sep 2, 2016 · 13 comments
Closed

Scheduled runners not executed (for proxy minions, at least) #36021

mirceaulinic opened this issue Sep 2, 2016 · 13 comments
Assignees
Labels
Bug broken, incorrect, or confusing behavior P4 Priority 4 Proxy-Minion RIoT Relates to integration with cloud providers, hypervisors, API-based services, etc. severity-medium 3rd level, incorrect or bad functionality, confusing and lacks a work around
Milestone

Comments

@mirceaulinic
Copy link
Contributor

Description of Issue/Question

After upgrading to Salt 2016.3.2, as per #35443 to test the code from #35178 I have noticed that the mines are not refreshed again - similarly to #32022. This time looks like the scheduling process that should refresh the mines is not executed.

Using the same test proxy config as described in #32022, section Setup:

mircea@36netops1:~$ date
Fri Sep  2 12:07:58 UTC 2016
mircea@36netops1:~$ sudo salt 'mine' mine.get 'mine' testmine.timestamp
/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/grains/core.py:1493: DeprecationWarning: The "osmajorrelease" will be a type of an integer.
mine:
    ----------
    mine:
        ----------
        last_call:
            1472817840.18
mircea@36netops1:~$ date
Fri Sep  2 12:11:02 UTC 2016
mircea@36netops1:~$ sudo salt 'mine' mine.get 'mine' testmine.timestamp
/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/grains/core.py:1493: DeprecationWarning: The "osmajorrelease" will be a type of an integer.
mine:
    ----------
    mine:
        ----------
        last_call:
            1472817840.18

We also have a couple of runners scheduled to be run at specific time intervals, e.g. schedule part from master config file:

# Schedulers
schedule:
  keepalive_proxies:
    function: keep.alive
    minutes: 15
  traceroute_runner:
    function: traceroute.collect
    hours: 4

They don't seem to be executed either.

Setup

For the mine refresh process, please see #32022.
To see if the runners are executed as scheduled in the master config file, a dummy runner is enough:

under _runners directory:

dummy.py:

# -*- coding: utf-8 -*-
from __future__ import absolute_import

def test():
    return True
root@36netops1:~# salt-run dummy.test
/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/grains/core.py:1493: DeprecationWarning: The "osmajorrelease" will be a type of an integer.
True

Scheduled in the master to be executed every minute:

schedule:
  dummy_runner:
    function: dummy.test
    minutes: 1

Restart salt-master.

Steps to Reproduce Issue

In the master, looks that the error below is relevant:

2016-09-02 12:18:39,309 [salt.utils.schedule                                                        ][ERROR   ][27389] Unhandled exception running dummy.test
Traceback (most recent call last):
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/utils/schedule.py", line 741, in handle_func
    ret['return'] = self.functions[func](*args, **kwargs)
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 101, in wrapper
    False,  # Don't daemonize
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 432, in _proc_function
    return self.low(fun, low)
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 263, in low
    'fun_args': fun_args + ([low['kwargs']] if low.get('kwargs', False) else []),
TypeError: can only concatenate tuple (not "list") to tuple
2016-09-02 12:19:39,965 [salt.utils.schedule                                                        ][ERROR   ][27785] Unhandled exception running dummy.test
Traceback (most recent call last):
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/utils/schedule.py", line 741, in handle_func
    ret['return'] = self.functions[func](*args, **kwargs)
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 101, in wrapper
    False,  # Don't daemonize
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 432, in _proc_function
    return self.low(fun, low)
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 263, in low
    'fun_args': fun_args + ([low['kwargs']] if low.get('kwargs', False) else []),
TypeError: can only concatenate tuple (not "list") to tuple
2016-09-02 12:20:40,609 [salt.utils.schedule                                                        ][ERROR   ][29339] Unhandled exception running dummy.test
Traceback (most recent call last):
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/utils/schedule.py", line 741, in handle_func
    ret['return'] = self.functions[func](*args, **kwargs)
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 101, in wrapper
    False,  # Don't daemonize
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 432, in _proc_function
    return self.low(fun, low)
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 263, in low
    'fun_args': fun_args + ([low['kwargs']] if low.get('kwargs', False) else []),
TypeError: can only concatenate tuple (not "list") to tuple

Versions Report

root@36netops1:~# salt --versions-report
Salt Version:
           Salt: 2016.3.2-104-g962e493

Dependency Versions:
           cffi: 1.7.0
       cherrypy: Not Installed
       dateutil: 2.2
          gitdb: 0.6.4
      gitpython: 2.0.5
          ioflo: Not Installed
         Jinja2: 2.8
        libgit2: Not Installed
        libnacl: Not Installed
       M2Crypto: 0.21.1
           Mako: Not Installed
   msgpack-pure: Not Installed
 msgpack-python: 0.4.8
   mysql-python: 1.2.5
      pycparser: 2.14
       pycrypto: 2.6.1
         pygit2: Not Installed
         Python: 2.7.9 (default, Mar  1 2015, 12:57:24)
   python-gnupg: 0.3.8
         PyYAML: 3.11
          PyZMQ: 15.4.0
           RAET: Not Installed
          smmap: 0.9.0
        timelib: Not Installed
        Tornado: 4.4.1
            ZMQ: 4.1.5

System Versions:
           dist: debian 8.5
        machine: x86_64
        release: 4.1.3-cloudflare
         system: Linux
        version: debian 8.5
@mirceaulinic
Copy link
Contributor Author

For the mines, looking in the proxy debug logs, seems that mine.update is called only when the proxy process is started:

2016-09-02 12:34:47,894 [salt.minion      ][DEBUG   ][5644] Handling event tag 'module_refresh'
2016-09-02 12:34:47,895 [salt.minion      ][DEBUG   ][5644] Refreshing modules. Notify=False
2016-09-02 12:34:47,895 [salt.config      ][DEBUG   ][5644] Reading configuration from /etc/salt/proxy
2016-09-02 12:34:47,897 [salt.config      ][DEBUG   ][5644] Including configuration from '/etc/salt/minion.d/_schedule.conf'
2016-09-02 12:34:47,897 [salt.config      ][DEBUG   ][5644] Reading configuration from /etc/salt/minion.d/_schedule.conf
2016-09-02 12:34:47,912 [salt.loaded.int.grains.core][DEBUG   ][5644] Please install 'virt-what' to improve results of the 'virtual' grain.
2016-09-02 12:34:47,928 [salt.minion      ][DEBUG   ][5644] Handling event tag 'pillar_refresh'
2016-09-02 12:34:47,928 [salt.minion      ][DEBUG   ][5644] Refreshing pillar
2016-09-02 12:34:47,928 [salt.transport.zeromq][DEBUG   ][5644] Initializing new AsyncZeroMQReqChannel for ('/etc/salt/pki/proxy', 'mine', 'tcp://127.0.0.1:4506', 'aes')
2016-09-02 12:34:47,928 [salt.crypt       ][DEBUG   ][5644] Re-using AsyncAuth for ('/etc/salt/pki/proxy', 'mine', 'tcp://127.0.0.1:4506')
2016-09-02 12:34:48,859 [salt.utils.lazy  ][DEBUG   ][5644] LazyLoaded config.merge
2016-09-02 12:34:48,860 [salt.utils.lazy  ][DEBUG   ][5644] LazyLoaded mine.update
2016-09-02 12:34:48,860 [salt.utils.schedule][INFO    ][5644] Running scheduled job: __mine_interval
2016-09-02 12:34:48,861 [salt.utils.schedule][DEBUG   ][5644] schedule: This job was scheduled with jid_include, adding to cache (jid_include defaults to True)
2016-09-02 12:34:48,861 [salt.utils.schedule][DEBUG   ][5644] schedule: This job was scheduled with a max number of 2
2016-09-02 12:34:48,861 [salt.utils.schedule][DEBUG   ][5644] schedule.handle_func: adding this job to the jobcache with data {'fun_args': [], 'jid': '20160902123448861036', 'schedule': '__mine_interval', 'pid': 5644, 'fun': 'mine.update', 'id': 'mine'}
2016-09-02 12:34:49,163 [docker.auth.auth ][DEBUG   ][5644] File doesn't exist
2016-09-02 12:34:49,166 [requests.packages.urllib3.connectionpool][DEBUG   ][5644] "GET /version HTTP/1.1" 200 196
2016-09-02 12:34:49,168 [requests.packages.urllib3.connectionpool][DEBUG   ][5644] "GET /v1.22/version HTTP/1.1" 200 196
2016-09-02 12:34:49,191 [salt.loaded.int.module.tls][DEBUG   ][5644] You should upgrade pyOpenSSL to at least 0.15.1 to enable the full use of X509 extensions in the tls module
2016-09-02 12:34:49,212 [salt.utils.lazy  ][DEBUG   ][5644] LazyLoaded testmine.timestamp
2016-09-02 12:34:49,213 [salt.utils.event ][DEBUG   ][5644] MinionEvent PUB socket URI: /var/run/salt/minion/minion_event_918b81db5e_pub.ipc
2016-09-02 12:34:49,213 [salt.utils.event ][DEBUG   ][5644] MinionEvent PULL socket URI: /var/run/salt/minion/minion_event_918b81db5e_pull.ipc
2016-09-02 12:34:49,213 [salt.transport.ipc][DEBUG   ][5644] Initializing new IPCClient for path: /var/run/salt/minion/minion_event_918b81db5e_pull.ipc
2016-09-02 12:34:49,214 [salt.utils.event ][DEBUG   ][5644] Sending event - data = {'clear': False, 'cmd': '_mine', 'data': {'testmine.timestamp': {'last_call': 1472819689.21227}}, 'id': 'mine', '_stamp': '2016-09-02T12:34:49.213862'}
2016-09-02 12:34:49,215 [salt.minion      ][DEBUG   ][5644] Handling event tag '_minion_mine'
2016-09-02 12:34:49,215 [salt.transport.zeromq][DEBUG   ][5644] Initializing new AsyncZeroMQReqChannel for ('/etc/salt/pki/proxy', 'mine', 'tcp://127.0.0.1:4506', 'aes')
2016-09-02 12:34:49,216 [salt.crypt       ][DEBUG   ][5644] Initializing new AsyncAuth for ('/etc/salt/pki/proxy', 'mine', 'tcp://127.0.0.1:4506')
2016-09-02 12:34:49,341 [salt.crypt       ][DEBUG   ][5644] Loaded minion key: /etc/salt/pki/proxy/minion.pem
2016-09-02 12:34:49,357 [salt.minion      ][DEBUG   ][5644] Refreshing modules. Notify=False
2016-09-02 12:34:49,358 [salt.config      ][DEBUG   ][5644] Reading configuration from /etc/salt/proxy
2016-09-02 12:34:49,359 [salt.config      ][DEBUG   ][5644] Including configuration from '/etc/salt/minion.d/_schedule.conf'
2016-09-02 12:34:49,359 [salt.config      ][DEBUG   ][5644] Reading configuration from /etc/salt/minion.d/_schedule.conf
2016-09-02 12:34:49,379 [salt.loaded.int.grains.core][DEBUG   ][5644] Please install 'virt-what' to improve results of the 'virtual' grain.
2016-09-02 12:34:49,716 [salt.utils.schedule][DEBUG   ][5644] schedule.handle_func: Removing /var/cache/salt/proxy/mine/proc/20160902123448861036
2016-09-02 12:34:49,859 [salt.utils.lazy  ][DEBUG   ][5644] LazyLoaded config.merge
2016-09-02 12:34:49,860 [salt.utils.lazy  ][DEBUG   ][5644] LazyLoaded mine.update
2016-09-02 12:37:15,258 [salt.minion      ][INFO    ][5644] User sudo_mircea Executing command testmine.timestamp with jid 20160902123715253550
2016-09-02 12:37:15,258 [salt.minion      ][DEBUG   ][5644] Command details {'tgt_type': 'glob', 'jid': '20160902123715253550', 'tgt': 'mine', 'ret': '', 'user': 'sudo_mircea', 'arg': [], 'fun': 'testmine.timestamp'}
2016-09-02 12:37:15,259 [salt.minion      ][INFO    ][5644] Starting a new job with PID 5644
2016-09-02 12:37:15,353 [docker.auth.auth ][DEBUG   ][5644] File doesn't exist
2016-09-02 12:37:15,355 [requests.packages.urllib3.connectionpool][DEBUG   ][5644] "GET /version HTTP/1.1" 200 196
2016-09-02 12:37:15,357 [requests.packages.urllib3.connectionpool][DEBUG   ][5644] "GET /v1.22/version HTTP/1.1" 200 196
2016-09-02 12:37:15,372 [salt.loaded.int.module.tls][DEBUG   ][5644] You should upgrade pyOpenSSL to at least 0.15.1 to enable the full use of X509 extensions in the tls module
2016-09-02 12:37:15,386 [salt.utils.lazy  ][DEBUG   ][5644] LazyLoaded testmine.timestamp
2016-09-02 12:37:15,387 [salt.utils.lazy  ][DEBUG   ][5644] LazyLoaded direct_call.get
2016-09-02 12:37:15,387 [salt.minion      ][DEBUG   ][5644] Minion return retry timer set to 7 seconds (randomized)
2016-09-02 12:37:15,387 [salt.minion      ][INFO    ][5644] Returning information for job: 20160902123715253550
2016-09-02 12:37:15,388 [salt.transport.zeromq][DEBUG   ][5644] Initializing new AsyncZeroMQReqChannel for ('/etc/salt/pki/proxy', 'mine', 'tcp://127.0.0.1:4506', 'aes')
2016-09-02 12:37:15,388 [salt.crypt       ][DEBUG   ][5644] Initializing new AsyncAuth for ('/etc/salt/pki/proxy', 'mine', 'tcp://127.0.0.1:4506')

at 12:34 the proxy was started and mines refreshed, at 12:37 executed manually salt 'mine' testmine.timestamp

mine.update should have been called by the scheduler every minute, as configured:

root@36netops1:~# cat /etc/salt/pillar/mine.sls
mine_functions:
  testmine.timestamp: []
mine_interval: 1
proxy:
  proxytype: dummy

@mirceaulinic
Copy link
Contributor Author

Master debug logs for the scheduler:

2016-09-02 12:42:49,147 [salt.utils.lazy                                                            ][DEBUG   ][12157] Could not LazyLoad config.merge
2016-09-02 12:42:49,147 [salt.utils.schedule                                                        ][INFO    ][12157] Running scheduled job: dummy_runner
2016-09-02 12:42:49,147 [salt.utils.schedule                                                        ][DEBUG   ][12157] schedule: This job was scheduled with jid_include, adding to cache (jid_include defaults to True)
2016-09-02 12:42:49,147 [salt.utils.schedule                                                        ][DEBUG   ][12157] schedule: This job was scheduled with a max number of 1
2016-09-02 12:42:49,156 [salt.fileserver                                                            ][DEBUG   ][12157] Updating roots fileserver cache
2016-09-02 12:42:49,156 [salt.utils.schedule                                                        ][DEBUG   ][15077] schedule.handle_func: adding this job to the jobcache with data {'fun_args': [], 'jid': '20160902124249151334', 'schedule': 'dummy_runner', 'pid': 15077, 'fun': 'dummy.test', 'id': '36netops1_master'}
2016-09-02 12:42:49,157 [salt.config                                                                ][DEBUG   ][15077] Reading configuration from /etc/salt/master
2016-09-02 12:42:49,190 [salt.config                                                                ][DEBUG   ][15077] Using cached minion ID from /etc/salt/minion_id: 36netops1
2016-09-02 12:42:49,191 [salt.config                                                                ][DEBUG   ][15077] Reading configuration from /etc/salt/master
2016-09-02 12:42:49,210 [salt.utils.verify                                                          ][DEBUG   ][12157] This salt-master instance has accepted 537 minion keys.
2016-09-02 12:42:49,309 [salt.loaded.int.grains.core                                                ][DEBUG   ][15077] Please install 'virt-what' to improve results of the 'virtual' grain.
2016-09-02 12:42:49,336 [salt.utils.schedule                                                        ][ERROR   ][15077] Unhandled exception running dummy.test
Traceback (most recent call last):
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/utils/schedule.py", line 741, in handle_func
    ret['return'] = self.functions[func](*args, **kwargs)
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 101, in wrapper
    False,  # Don't daemonize
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 432, in _proc_function
    return self.low(fun, low)
  File "/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py", line 263, in low
    'fun_args': fun_args + ([low['kwargs']] if low.get('kwargs', False) else []),
TypeError: can only concatenate tuple (not "list") to tuple
2016-09-02 12:42:49,336 [salt.utils.schedule                                                        ][DEBUG   ][15077] schedule.handle_func: Removing /var/cache/salt/proxy-master/proc/20160902124249151334

@mirceaulinic
Copy link
Contributor Author

mirceaulinic commented Sep 2, 2016

I have also a question - there might be an overlap between an older config and the newest changes from #34446

The following line says that the proc are stored under /var/cache/salt/proxy-master:

schedule.handle_func: Removing /var/cache/salt/proxy-master/proc/20160902124853009417

In /etc/salt/proxy the cachedir is specified as:

cachedir: /var/cache/salt/proxy

While in the /etc/salt/master:

# Directory to store job and cache data
cachedir: /var/cache/salt/proxy-master

Looks like the mine.p and data.p are stored under /var/cache/salt/proxy-master/ (as specified in the master):

root@36netops1:~# ls -la /var/cache/salt/proxy-master/minions/mine/
total 108
drwxr-xr-x   2 root root    32 Sep  2 12:43 .
drwxr-xr-x 538 root root 16384 Sep  2 12:03 ..
-rw-------   1 root root 72394 Sep  2 12:43 data.p
-rw-r--r--   1 root root    40 Sep  2 12:43 mine.p

While module files for the same minion are under /var/cache/salt/proxy (as specified in the proxy config):

root@36netops1:~# ls -la /var/cache/salt/proxy/mine/
total 4
drwxr-xr-x  4 root root   50 Sep  2 12:03 .
drwxr-xr-x 86 root root 4096 Sep  2 12:01 ..
drwx------  3 root root   17 Sep  2 12:03 files
-rw-r--r--  1 root root    0 Sep  2 12:03 module_refresh
drwxr-xr-x  2 root root    6 Sep  2 12:43 proc

@cro would you recommend using the same directory? If so, which of the config files is the most suitable to be adjusted?

Thank you!

@mirceaulinic
Copy link
Contributor Author

All right, I see that the bug was introduced by #35059, later potentially fixed by #35659. Upgrading now on a test box to 2016.3.3-48-gd248ab0 to see if any improvement.

@mirceaulinic
Copy link
Contributor Author

mirceaulinic commented Sep 2, 2016

After upgrade:

(virtualenv)root@36netops3:~# salt --versions-report
Salt Version:
           Salt: 2016.3.3-48-gd248ab0

Dependency Versions:
           cffi: 1.7.0
       cherrypy: Not Installed
       dateutil: Not Installed
          gitdb: 0.6.4
      gitpython: 1.0.2
          ioflo: Not Installed
         Jinja2: 2.8
        libgit2: Not Installed
        libnacl: Not Installed
       M2Crypto: 0.21.1
           Mako: Not Installed
   msgpack-pure: Not Installed
 msgpack-python: 0.4.8
   mysql-python: 1.2.5
      pycparser: 2.14
       pycrypto: 2.6.1
         pygit2: Not Installed
         Python: 2.7.9 (default, Mar  1 2015, 12:57:24)
   python-gnupg: 0.3.8
         PyYAML: 3.12
          PyZMQ: 15.4.0
           RAET: Not Installed
          smmap: 0.9.0
        timelib: Not Installed
        Tornado: 4.4.1
            ZMQ: 4.1.5

System Versions:
           dist: debian 8.2
        machine: x86_64
        release: 4.1.3-cloudflare
         system: Linux
        version: debian 8.2

The error appears in the event bus:

(virtualenv)root@36netops3:~# salt-run state.event pretty=True
/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/grains/core.py:1493: DeprecationWarning: The "osmajorrelease" will be a type of an integer.



salt/run/20160902143454211747/ret   {
    "_stamp": "2016-09-02T14:34:54.387877",
    "fun": "runner.dummy.test",
    "jid": "20160902143454211747",
    "return": "Exception occurred in runner dummy.test: Traceback (most recent call last):\n  File \"/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py\", line 352, in low\n    data['fun_args'] = args + ([kwargs] if kwargs else [])\nTypeError: can only concatenate tuple (not \"list\") to tuple\n",
    "success": false,
    "user": "root"
}
salt/run/20160902143554515090/ret   {
    "_stamp": "2016-09-02T14:35:54.674344",
    "fun": "runner.dummy.test",
    "jid": "20160902143554515090",
    "return": "Exception occurred in runner dummy.test: Traceback (most recent call last):\n  File \"/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py\", line 352, in low\n    data['fun_args'] = args + ([kwargs] if kwargs else [])\nTypeError: can only concatenate tuple (not \"list\") to tuple\n",
    "success": false,
    "user": "root"
}
salt/run/20160902143654774890/ret   {
    "_stamp": "2016-09-02T14:36:54.935636",
    "fun": "runner.dummy.test",
    "jid": "20160902143654774890",
    "return": "Exception occurred in runner dummy.test: Traceback (most recent call last):\n  File \"/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/client/mixins.py\", line 352, in low\n    data['fun_args'] = args + ([kwargs] if kwargs else [])\nTypeError: can only concatenate tuple (not \"list\") to tuple\n",
    "success": false,
    "user": "root"
}

Being related to https://github.com/saltstack/salt/blob/2016.3/salt/client/mixins.py#L352

data['fun_args'] = args + ([kwargs] if kwargs else [])

which is a change from #35659 and/or #35682

@mirceaulinic
Copy link
Contributor Author

Changing the line in cause to:

data['fun_args'] = list(args) + ([kwargs] if kwargs else [])

Don't see the error anymore, but not sure the datatype should be list or should cast to tuple the result?

(virtualenv)root@36netops3:~# salt-run state.event pretty=True
/usr/local/salt/virtualenv/lib/python2.7/site-packages/salt/grains/core.py:1493: DeprecationWarning: The "osmajorrelease" will be a type of an integer.
salt/auth   {
    "_stamp": "2016-09-02T14:48:08.013579",
    "act": "accept",
    "id": "mine",
    "pub": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6861fSbTHlhKMKuDWgNL\ncD8cp+cgN6zPk2K1CfSR63xxdWRMe1Aiy5xqpaX5+FhznZYLBj1gAwwFLs5XaH7A\n7jghEVR+cd31Jz+i2+VjYpNNrJ8if9ZZpaxBM3LCyVsXhFtcFX7IqdFSESuQfAuL\nFh6dMjpjwwRk8g3j3Dq4D7L1/NNDtQtTSFUI+oaFStbeanWN2QapP2dpYxopTwXT\nc02qS+U24DewUGGNVw3BNwj7jCetn7R/m92KoKjlDRMsrZYTNmDYsApwdU/+PX/P\n24774Du7SVXT9oHFlVilzJkJie0PnJT9aKKCKbSSFtYi3w+wNnNEsFncTmiYP1Er\niwIDAQAB\n-----END PUBLIC KEY-----",
    "result": true
}
salt/run/20160902144837714970/new   {
    "_stamp": "2016-09-02T14:48:37.880787",
    "fun": "runner.dummy.test",
    "fun_args": [],
    "jid": "20160902144837714970",
    "user": "root"
}
salt/run/20160902144837714970/ret   {
    "_stamp": "2016-09-02T14:48:37.881189",
    "fun": "runner.dummy.test",
    "fun_args": [],
    "jid": "20160902144837714970",
    "return": true,
    "success": true,
    "user": "root"
}

mirceaulinic added a commit to cloudflare/salt that referenced this issue Sep 2, 2016
@Ch3LL
Copy link
Contributor

Ch3LL commented Sep 6, 2016

@mirceaulinic thanks for the great detailed report. Also thanks for the PR! ping @cro can you answer his questions regarding what datatype this should be? I believe the concern is to also ensure it does not regress other parts of salt outside of the proxy minion.

@Ch3LL Ch3LL added Bug broken, incorrect, or confusing behavior P4 Priority 4 RIoT Relates to integration with cloud providers, hypervisors, API-based services, etc. Proxy-Minion labels Sep 6, 2016
@Ch3LL Ch3LL added this to the Approved milestone Sep 6, 2016
@Ch3LL Ch3LL added the severity-medium 3rd level, incorrect or bad functionality, confusing and lacks a work around label Sep 6, 2016
@mirceaulinic
Copy link
Contributor Author

Hi @Ch3LL as you pointed out, I want to make sure that with the change I propose I won't broke other things.

@gladiatr72
Copy link
Contributor

FYI:

ERROR [salt.utils.schedule.handle_func:774]  Unhandled exception running tls_ca.update_fileserver
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/salt/utils/schedule.py", line 741, in handle_func
    ret['return'] = self.functions[func](*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/salt/client/mixins.py", line 101, in wrapper
    False,  # Don't daemonize
  File "/usr/lib/python2.7/dist-packages/salt/client/mixins.py", line 432, in _proc_function
    return self.low(fun, low)
  File "/usr/lib/python2.7/dist-packages/salt/client/mixins.py", line 263, in low
    'fun_args': fun_args + ([low['kwargs']] if low.get('kwargs', False) else []),

seems to be a general regression on at least master-side schedule handling (from 2016.3.3 release)

cachedout pushed a commit that referenced this issue Sep 13, 2016
@mirceaulinic
Copy link
Contributor Author

#36025 has been merged - next week will try the code from the 2016.3.3 branch and if everything is fine we can close the issue.

@cro cro self-assigned this Sep 13, 2016
@cro cro modified the milestones: C 4, Approved Sep 13, 2016
@Ch3LL
Copy link
Contributor

Ch3LL commented Sep 15, 2016

great thanks for all your work on that one @mirceaulinic 👍 let us know how the tests go

@meggiebot meggiebot modified the milestones: C 3, C 4 Sep 19, 2016
@mirceaulinic
Copy link
Contributor Author

@Ch3LL seems to work fine so far - can we close this issue, or are there any other changes needed to be applied related to this?

@Ch3LL
Copy link
Contributor

Ch3LL commented Sep 28, 2016

Closing now Thanks for testing!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug broken, incorrect, or confusing behavior P4 Priority 4 Proxy-Minion RIoT Relates to integration with cloud providers, hypervisors, API-based services, etc. severity-medium 3rd level, incorrect or bad functionality, confusing and lacks a work around
Projects
None yet
Development

No branches or pull requests

5 participants