• Jérome Perrin's avatar
    slaprunner: provide pidfile in config file for slapos node · 7ead3646
    Jérome Perrin authored
    Thanks to !158 , in a slaprunner we can use slapos command:
    ```
    $ slapos supply https://lab.nexedi.com/nexedi/slapos/raw/1.0.19/software/erp5/software.cfg slaprunner
    ```
    works fine to supply a software to "current" webrunner, but building this software with `slapos node software` fails with:
    ```
    $ slapos node software
    2017-10-03 02:46:33 slapos[29536] CRITICAL slapgrid could not write pidfile /opt/slapos/slapgrid-sr.pid
    2017-10-03 02:46:33 slapos[29536] ERROR [Errno 13] Permission denied: '/opt/slapos/slapgrid-sr.pid'
    Traceback (most recent call last):
      File "/opt/slapgrid/f496eadc03f1ac5a0ab1e4ae60bbe972/eggs/slapos.core-1.4.1-py2.7.egg/slapos/cli/entry.py", line 300, in run_subcommand
        result = cmd.run(parsed_args)
      File "/opt/slapgrid/f496eadc03f1ac5a0ab1e4ae60bbe972/eggs/slapos.core-1.4.1-py2.7.egg/slapos/cli/command.py", line 50, in run
        return self.take_action(parsed_args)
      File "/opt/slapgrid/f496eadc03f1ac5a0ab1e4ae60bbe972/eggs/slapos.core-1.4.1-py2.7.egg/slapos/cli/slapgrid.py", line 116, in take_action
        setRunning(logger=self.app.log, pidfile=pidfile)
      File "/opt/slapgrid/f496eadc03f1ac5a0ab1e4ae60bbe972/eggs/slapos.core-1.4.1-py2.7.egg/slapos/grid/utils.py", line 155, in setRunning
        write_pid(logger, pidfile)
      File "/opt/slapgrid/f496eadc03f1ac5a0ab1e4ae60bbe972/eggs/slapos.core-1.4.1-py2.7.egg/slapos/grid/utils.py", line 167, in write_pid
        with open(pidfile, 'w') as fout:
    IOError: [Errno 13] Permission denied: '/opt/slapos/slapgrid-sr.pid'
    ```
    
    because slaprunner's web interface also runs software, it's better both `slapos node software` command and the one from slaprunner web interface uses the same pid file so that they do not run in parallel.
    
    This depends on slapos.core!29
    
    /reviewed-on !235
    7ead3646
Name
Last commit
Last update
component Loading commit data...
slapos Loading commit data...
software Loading commit data...
stack Loading commit data...
.gitignore Loading commit data...
CHANGES.rst Loading commit data...
MANIFEST.in Loading commit data...
README.rst Loading commit data...
README.software.rst Loading commit data...
schema.json Loading commit data...
setup.py Loading commit data...
sla.schema.json Loading commit data...
update-hash Loading commit data...
validate-schema Loading commit data...