def run(self, cmd):
        """Run the given ``cmd`` in a child process."""
        log = logging.getLogger(self.name)
        try:
            retcode = subprocess.call(cmd, shell=True, env=self.augmented_environment())

            if retcode < 0:
                log.error('Command received signal %s: %s' % (-retcode, cmd))
                raise zc.buildout.UserError('System error')
            elif retcode > 0:
                log.error('Command failed with exit code %s: %s' % (retcode, cmd))
                raise zc.buildout.UserError('System error')
        except OSError as e:
            log.error('Command failed: %s: %s' % (e, cmd))
            raise zc.buildout.UserError('System error')
dataset/ETHPy150Open hexagonit/hexagonit.recipe.cmmi/hexagonit/recipe/cmmi/__init__.py/Recipe.run/original