Thank you Christian,
Definitely these 2 statements are needed. But it still did not worked
I found that these values overwritten in a loop in the 
packaging.py/_build_static_media(extention),because ReviewBoard settings, 
has attributes PIPELINE_LESS_BINARY and  PIPELINE_UGLIFYJS_BINARY:
        from pipeline.conf import settings as pipeline_settings

        for key in six.iterkeys(pipeline_settings.__dict__):
            if hasattr(settings, key):
                setattr(pipeline_settings, key, getattr(settings, key))

So, I 
modified 
/usr/local/lib/python2.7/dist-packages/ReviewBoard-2.5.12.dev0-py2.7.egg/reviewboard/settings.py,
 
by removing these 2 attributes, and it works now:
# Static media setup
from reviewboard.staticbundles import PIPELINE_CSS, PIPELINE_JS

NODE_PATH = os.path.join(REVIEWBOARD_ROOT, '..', 'node_modules')

# PIPELINE_LESS_BINARY = os.path.join(NODE_PATH, 'less', 'bin', 'lessc')
# PIPELINE_UGLIFYJS_BINARY = os.path.join(NODE_PATH, 'uglifyjs', 'bin',
#                                        'uglifyjs')



On Monday, June 12, 2017 at 6:13:39 PM UTC-7, Christian Hammond wrote:
>
> I think I see where the problem is. I'm confused as to why I'm not hitting 
> the same failure case, but I honestly don't have a lot of time to dig into 
> it right now.
>
> In install_pipeline_deps, try doing:
>
>             pipeline_settings.LESS_BINARY = \
>                 os.path.join(node_modules_dir, 'less', 'bin', 'lessc')
>             pipeline_settings.PIPELINE_LESS_BINARY = \
>                 pipeline_settings.LESS_BINARY
>
> ...
>
>             pipeline_settings.UGLIFYJS_BINARY = \
>                 os.path.join(node_modules_dir, 'uglifyjs', 'bin', 
> 'uglifyjs')
>             pipeline_settings.PIPELINE_UGLIFYJS_BINARY = \
>                 pipeline_settings.UGLIFYJS_BINARY
>
>
> (Adding the second statement in each batch)
>
> See if that gets you any further.
>
> Christian
>
> On Mon, Jun 12, 2017 at 6:03 PM, Alexander Galperin <
> galperin....@gmail.com <javascript:>> wrote:
>
>> Set in packaging.py:
>> # Collect and process all static media files.
>>        * print 'PIPELINE_LESS_BINARY1 = 
>> {}'.format(pipeline_settings.LESS_BINARY)*
>> *        print 'PIPELINE_UGLIFYJS_BINARY1 = 
>> {}'.format(pipeline_settings.UGLIFYJS_BINARY)*
>>         call_command('collectstatic', interactive=False, verbosity=2)
>>
>> Output is good:
>> PIPELINE_LESS_BINARY1 = 
>> /src2/rb-extension-pack/fortinet/build/node_modules/less/bin/lessc
>> PIPELINE_UGLIFYJS_BINARY1 = 
>> /src2/rb-extension-pack/fortinet/build/node_modules/uglifyjs/bin/uglifyjs
>>
>>
>> On Monday, June 12, 2017 at 5:51:13 PM UTC-7, Alexander Galperin wrote:
>>>
>>> Set print 
>>> in /usr/local/lib/python2.7/dist-packages/pipeline/compressors/uglifyjs.py:
>>> class UglifyJSCompressor(SubProcessCompressor):
>>>     def compress_js(self, js):
>>>         *print 'PIPELINE_SETTING_UGLIFYJS_BINARY = 
>>> {}'.format(settings.PIPELINE_UGLIFYJS_BINARY)*
>>>         command = '%s %s' % (settings.PIPELINE_UGLIFYJS_BINARY, settings
>>> .PIPELINE_UGLIFYJS_ARGUMENTS)
>>>         if self.verbose:
>>>             command += ' --verbose'
>>>         return self.execute_command(command, js)
>>> output:
>>> PIPELINE_SETTING_UGLIFYJS_BINARY = /usr/local/lib/python2.7/dist-
>>> packages/ReviewBoard-2.5.12.dev0-py2.7.egg/reviewboard/../node_modules/
>>> uglifyjs/bin/uglifyjs
>>>  And it takes from 'settings', which probably is wrong
>>>
>>> I will try to stop in call_command
>>>
>>>
>>> On Monday, June 12, 2017 at 5:37:29 PM UTC-7, Christian Hammond wrote:
>>>>
>>>> Can you also try placing debugging output right before the 
>>>> "call_command('collectstatic', ...)" command in _build_static_media?
>>>>
>>>> Along with this, try printing `command` in pipeline/compilers/less.py 
>>>> (pipeline will be another module in site-packages somewhere, perhaps under 
>>>> a django-pipeline-* directory).
>>>>
>>>> Christian
>>>>
>>>> On Mon, Jun 12, 2017 at 5:22 PM, Alexander Galperin <
>>>> galperin....@gmail.com> wrote:
>>>>
>>>>> I've put some print in packaging.py to help debugging. Here's what I 
>>>>> have changed:
>>>>>  def install_pipeline_deps(self, extension, css_bundles, js_bundles):
>>>>> ...
>>>>> ...
>>>>>         with open(package_file, 'w') as fp:
>>>>>             fp.write(json.dumps(
>>>>>                 {
>>>>>                     'name': '%s-extension' % 
>>>>> os.path.basename(os.getcwd()),
>>>>>                     'private': 'true',
>>>>>                     'devDependencies': {},
>>>>>                     'dependencies': dependencies,
>>>>>                 },
>>>>>                 indent=2))
>>>>>
>>>>>         old_cwd = os.getcwd()
>>>>>         os.chdir(build_dir)
>>>>> *        print 'PIPELINE_LESS_BINARY = 
>>>>> {}'.format(pipeline_settings.LESS_BINARY)*
>>>>> *        print 'PIPELINE_UGLIFYJS_BINARY = 
>>>>> {}'.format(pipeline_settings.UGLIFYJS_BINARY)*
>>>>>         self.npm_install()
>>>>>
>>>>> And the output is:
>>>>> PIPELINE_LESS_BINARY = /src2/rb-extension-pack/fortinet/build/
>>>>> node_modules/less/bin/lessc
>>>>> PIPELINE_UGLIFYJS_BINARY = /src2/rb-extension-pack/fortinet/build/
>>>>> node_modules/uglifyjs/bin/uglifyjs
>>>>>
>>>>> Also build/node_modules.. created in extention directory, so the path 
>>>>> is correct at this point
>>>>>
>>>>> On Monday, June 12, 2017 at 5:17:15 PM UTC-7, Christian Hammond wrote:
>>>>>>
>>>>>> Hi Kevin,
>>>>>>
>>>>>> printing in settings.py won't tell you anything of value. Those are 
>>>>>> the correct locations at the time that settings.py loaded, but they're 
>>>>>> overridden during the packaging process. The locations mentioned in my 
>>>>>> previous e-mail are where that happens. Solving this will require 
>>>>>> narrowing 
>>>>>> down the locations where the path is correct and where it's incorrect in 
>>>>>> that process.
>>>>>>
>>>>>> Christian
>>>>>>
>>>>>> On Mon, Jun 12, 2017 at 2:49 PM, Kevin Yu <sams...@gmail.com> wrote:
>>>>>>
>>>>>>> Hi Christian,
>>>>>>>
>>>>>>> Thanks for trying out. I also did some debugging to see if I can 
>>>>>>> find any information. I added some print in the settings.py  
>>>>>>>
>>>>>>> PIPELINE_LESS_BINARY = os.path.join(NODE_PATH, 'less', 'bin', 
>>>>>>> 'lessc')
>>>>>>> PIPELINE_UGLIFYJS_BINARY = os.path.join(NODE_PATH, 'uglifyjs', 'bin',
>>>>>>>                                         'uglifyjs')
>>>>>>> print 'PIPELINE_UGLIFYJS_BINARY = 
>>>>>>> {}'.format(PIPELINE_UGLIFYJS_BINARY)
>>>>>>> print 'PIPELINE_LESS_BINARY = {}'.format(PIPELINE_LESS_BINARY)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> And this is what I see in the log:
>>>>>>>
>>>>>>> [Mon Jun 12 14:47:50.821618 2017] [:error] [pid 12918:tid 
>>>>>>> 140227234481920] PIPELINE_UGLIFYJS_BINARY = 
>>>>>>> /usr/local/lib/python2.7/dist-packages/ReviewBoard-2.5.12-py2.7.egg/reviewboard/../node_modules/uglifyjs/bin/uglifyjs
>>>>>>> [Mon Jun 12 14:47:50.821692 2017] [:error] [pid 12918:tid 
>>>>>>> 140227234481920] PIPELINE_LESS_BINARY = 
>>>>>>> /usr/local/lib/python2.7/dist-packages/ReviewBoard-2.5.12-py2.7.egg/reviewboard/../node_modules/less/bin/lessc
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Saturday, June 10, 2017 at 1:43:26 AM UTC-7, Christian Hammond 
>>>>>>> wrote:
>>>>>>>>
>>>>>>>> Right. We override this though in djblets/extensions/packaging.py 
>>>>>>>> in install_pipeline_deps(). We compute the path to the extension's 
>>>>>>>> node_modules and its lessc, and we set that in settings.
>>>>>>>>
>>>>>>>> I tested locally and it's performing as expected for me. Review 
>>>>>>>> Board's lessc isn't being used, but the extension's is. So something's 
>>>>>>>> going wrong here with the paths.
>>>>>>>>
>>>>>>>> How comfortable are you debugging Python? I'm curious as to whether 
>>>>>>>> pipeline_settings.LESS_BINARY in install_pipeline_deps() is being 
>>>>>>>> correctly 
>>>>>>>> set.
>>>>>>>>
>>>>>>>> Christian
>>>>>>>>
>>>>>>>> On Fri, Jun 9, 2017 at 5:51 PM, Kevin Yu <sams...@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> Looks like the path to the npm_modules are prepopulated based on 
>>>>>>>>> the following code in settings.py:
>>>>>>>>> # Static media setup
>>>>>>>>> if RUNNING_TEST:
>>>>>>>>>    PIPELINE_COMPILERS = []
>>>>>>>>> else:
>>>>>>>>>    PIPELINE_COMPILERS = [
>>>>>>>>>        'djblets.pipeline.compilers.es6.ES6Compiler',
>>>>>>>>>        'djblets.pipeline.compilers.less.LessCompiler',
>>>>>>>>>    ]
>>>>>>>>>
>>>>>>>>> NODE_PATH = os.path.join(REVIEWBOARD_ROOT, '..', 'node_modules')
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Friday, June 9, 2017 at 5:44:51 PM UTC-7, Kevin Yu wrote:
>>>>>>>>>>
>>>>>>>>>> Thanks Christian for the quick reply! much appreciated.
>>>>>>>>>>
>>>>>>>>>> It was installed using easy_install under Ubuntu.
>>>>>>>>>>
>>>>>>>>>> On Friday, June 9, 2017 at 5:38:11 PM UTC-7, Christian Hammond 
>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>> Hi Kevin,
>>>>>>>>>>>
>>>>>>>>>>> I actually don't believe this is related in this case. It looks 
>>>>>>>>>>> like the extension packaging stage is trying to locate the lessc 
>>>>>>>>>>> path 
>>>>>>>>>>> relative to Review Board, which is not correct. It should be 
>>>>>>>>>>> locating it 
>>>>>>>>>>> from the extension package. It sets the path prior to building the 
>>>>>>>>>>> extension to the place in your tree, which, based on that output, 
>>>>>>>>>>> should be 
>>>>>>>>>>> populated...
>>>>>>>>>>>
>>>>>>>>>>> I have to run right now, but let me play around with this when I 
>>>>>>>>>>> get back and see if I can reproduce this.
>>>>>>>>>>>
>>>>>>>>>>> In the meantime, how do you install Review Board? Are you using 
>>>>>>>>>>> easy_install or yum?
>>>>>>>>>>>
>>>>>>>>>>> Christian
>>>>>>>>>>>
>>>>>>>>>>> On Fri, Jun 9, 2017 at 5:34 PM, Kevin Yu <sams...@gmail.com> 
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> I just saw on 
>>>>>>>>>>>> https://www.reviewboard.org/docs/manual/dev/extending/extensions/static-files/,
>>>>>>>>>>>>  
>>>>>>>>>>>> it says
>>>>>>>>>>>>
>>>>>>>>>>>> Static bundles are packaged along with your extension 
>>>>>>>>>>>> automatically. You don’t have to do anything special. You will, 
>>>>>>>>>>>> however, 
>>>>>>>>>>>> need some node.js <https://nodejs.org/> dependencies in order 
>>>>>>>>>>>> to package static media bundles.
>>>>>>>>>>>>
>>>>>>>>>>>> *If you’re running Review Board 2.5.7+, these dependencies will 
>>>>>>>>>>>> be installed for you when you begin to build the package.*
>>>>>>>>>>>>
>>>>>>>>>>>> *If you’re running an older version, you will need to manually 
>>>>>>>>>>>> install them yourself. First, make sure you have a modern version 
>>>>>>>>>>>> of 
>>>>>>>>>>>> node.js installed and then run:*
>>>>>>>>>>>>
>>>>>>>>>>>> $ sudo npm install -g less uglifyjs
>>>>>>>>>>>>
>>>>>>>>>>>> I am wondering if this is related...
>>>>>>>>>>>>
>>>>>>>>>>>> On Friday, June 9, 2017 at 4:41:10 PM UTC-7, Kevin Yu wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> On our server, we had reviewboard core 2.5.6.1 running with 
>>>>>>>>>>>>> our own extension. it was all fine until we recently upgraded 
>>>>>>>>>>>>> reviewboard 
>>>>>>>>>>>>> core to 2.5.12. After the upgrade, we can't run python setup.py 
>>>>>>>>>>>>> -v build 
>>>>>>>>>>>>> anymore... The error is as follows:
>>>>>>>>>>>>> devops@Reviewboard-Test-trunk:/tmp/ReviewBoardExt$ python 
>>>>>>>>>>>>> setup.py -v build
>>>>>>>>>>>>> running build
>>>>>>>>>>>>> running build_py
>>>>>>>>>>>>> running build_static_files
>>>>>>>>>>>>> Installing node packages...
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/uglifyjs/2.4.10
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/less/2.7.1
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/less/2.7.1
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/uglifyjs/2.4.10
>>>>>>>>>>>>> npm WARN deprecated uglifyjs@2.4.10: uglifyjs is deprecated - 
>>>>>>>>>>>>> use uglify-js instead.
>>>>>>>>>>>>> npm WARN engine less@2.7.1: wanted: {"node":">=0.12"} 
>>>>>>>>>>>>> (current: {"node":"v0.10.25","npm":"1.3.10"})
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/source-map/0.1.34
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/yargs
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/async
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/uglify-to-browserify
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/source-map/0.1.34
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/yargs
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/async
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/uglify-to-browserify
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/amdefine
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/amdefine
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/errno
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/graceful-fs
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/image-size
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/mime
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/mkdirp
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/promise
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/source-map
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/errno
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/graceful-fs
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/image-size
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/mime
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/promise
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/source-map
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/mkdirp
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/prr
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/prr
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/minimist/0.0.8
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/minimist/0.0.8
>>>>>>>>>>>>> npm http GET https://registry.npmjs.org/asap
>>>>>>>>>>>>> npm http 304 https://registry.npmjs.org/asap
>>>>>>>>>>>>> uglifyjs@2.4.10 node_modules/uglifyjs
>>>>>>>>>>>>> ├── uglify-to-browserify@1.0.2
>>>>>>>>>>>>> ├── async@0.2.10
>>>>>>>>>>>>> ├── yargs@1.3.3
>>>>>>>>>>>>> └── source-map@0.1.34 (amdefine@1.0.1)
>>>>>>>>>>>>>
>>>>>>>>>>>>> less@2.7.1 node_modules/less
>>>>>>>>>>>>> ├── graceful-fs@4.1.11
>>>>>>>>>>>>> ├── mime@1.3.6
>>>>>>>>>>>>> ├── image-size@0.5.4
>>>>>>>>>>>>> ├── errno@0.1.4 (prr@0.0.0)
>>>>>>>>>>>>> ├── mkdirp@0.5.1 (minimist@0.0.8)
>>>>>>>>>>>>> ├── promise@7.1.1 (asap@2.0.5)
>>>>>>>>>>>>> └── source-map@0.5.6
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/css/rev_req_det.less'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/account_handler.js'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/branch_builds.js'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/bootstrap.js'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/apprreqView.js'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/test_cvrg_rprt.js'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/ftnchkHoldItView.js'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/sel_rqst_4_det_copy.js'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/approval_status_View.js'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/dashboard.js'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/rqst_descr.js'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/js/views/cm_portalView.js'
>>>>>>>>>>>>> Copying '/tmp/ReviewBoardExt/fortinet/static/images/Remove.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/fortinet.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/forti...@2x.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/d...@2x.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/teamlead.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/favicon_notify.png'
>>>>>>>>>>>>> Copying '/tmp/ReviewBoardExt/fortinet/static/images/Create.png'
>>>>>>>>>>>>> Copying '/tmp/ReviewBoardExt/fortinet/static/images/ftnt.ico'
>>>>>>>>>>>>> Copying '/tmp/ReviewBoardExt/fortinet/static/images/u...@2x.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/shipit-grey.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/teaml...@2x.png'
>>>>>>>>>>>>> Copying '/tmp/ReviewBoardExt/fortinet/static/images/Up.png'
>>>>>>>>>>>>> Copying '/tmp/ReviewBoardExt/fortinet/static/images/Bottom.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/bot...@2x.png'
>>>>>>>>>>>>> Copying '/tmp/ReviewBoardExt/fortinet/static/images/stop16.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/cre...@2x.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/rem...@2x.png'
>>>>>>>>>>>>> Copying '/tmp/ReviewBoardExt/fortinet/static/images/shipit.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/shi...@2x.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/sto...@2x.png'
>>>>>>>>>>>>> Copying '/tmp/ReviewBoardExt/fortinet/static/images/Down.png'
>>>>>>>>>>>>> Copying 
>>>>>>>>>>>>> '/tmp/ReviewBoardExt/fortinet/static/images/shipit-g...@2x.png'
>>>>>>>>>>>>> Traceback (most recent call last):
>>>>>>>>>>>>>   File "setup.py", line 27, in <module>
>>>>>>>>>>>>>     'evolutions/*.*',
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/ReviewBoard-2.5.12-py2.7.egg/reviewboard/extensions/packaging.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 48, in setup
>>>>>>>>>>>>>     setuptools_setup(**setup_kwargs)
>>>>>>>>>>>>>   File "/usr/lib/python2.7/distutils/core.py", line 151, in 
>>>>>>>>>>>>> setup
>>>>>>>>>>>>>     dist.run_commands()
>>>>>>>>>>>>>   File "/usr/lib/python2.7/distutils/dist.py", line 953, in 
>>>>>>>>>>>>> run_commands
>>>>>>>>>>>>>     self.run_command(cmd)
>>>>>>>>>>>>>   File "/usr/lib/python2.7/distutils/dist.py", line 972, in 
>>>>>>>>>>>>> run_command
>>>>>>>>>>>>>     cmd_obj.run()
>>>>>>>>>>>>>   File "/usr/lib/python2.7/distutils/command/build.py", line 
>>>>>>>>>>>>> 128, in run
>>>>>>>>>>>>>     self.run_command(cmd_name)
>>>>>>>>>>>>>   File "/usr/lib/python2.7/distutils/cmd.py", line 326, in 
>>>>>>>>>>>>> run_command
>>>>>>>>>>>>>     self.distribution.run_command(command)
>>>>>>>>>>>>>   File "/usr/lib/python2.7/distutils/dist.py", line 972, in 
>>>>>>>>>>>>> run_command
>>>>>>>>>>>>>     cmd_obj.run()
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/Djblets-0.9.7-py2.7.egg/djblets/extensions/packaging.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 422, in run
>>>>>>>>>>>>>     self.run_command('build_static_files')
>>>>>>>>>>>>>   File "/usr/lib/python2.7/distutils/cmd.py", line 326, in 
>>>>>>>>>>>>> run_command
>>>>>>>>>>>>>     self.distribution.run_command(command)
>>>>>>>>>>>>>   File "/usr/lib/python2.7/distutils/dist.py", line 972, in 
>>>>>>>>>>>>> run_command
>>>>>>>>>>>>>     cmd_obj.run()
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/Djblets-0.9.7-py2.7.egg/djblets/extensions/packaging.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 290, in run
>>>>>>>>>>>>>     self._build_static_media(extension)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/Djblets-0.9.7-py2.7.egg/djblets/extensions/packaging.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 360, in _build_static_media
>>>>>>>>>>>>>     call_command('collectstatic', interactive=False, 
>>>>>>>>>>>>> verbosity=2)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/Django-1.6.11-py2.7.egg/django/core/management/__init__.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 159, in call_command
>>>>>>>>>>>>>     return klass.execute(*args, **defaults)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/Django-1.6.11-py2.7.egg/django/core/management/base.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 285, in execute
>>>>>>>>>>>>>     output = self.handle(*args, **options)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/Django-1.6.11-py2.7.egg/django/core/management/base.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 415, in handle
>>>>>>>>>>>>>     return self.handle_noargs(**options)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/Django-1.6.11-py2.7.egg/django/contrib/staticfiles/management/commands/collectstatic.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 173, in handle_noargs
>>>>>>>>>>>>>     collected = self.collect()
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/Django-1.6.11-py2.7.egg/django/contrib/staticfiles/management/commands/collectstatic.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 119, in collect
>>>>>>>>>>>>>     for original_path, processed_path, processed in processor:
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/django_pipeline-1.3.27-py2.7.egg/pipeline/storage.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 32, in post_process
>>>>>>>>>>>>>     packager.pack_stylesheets(package)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/django_pipeline-1.3.27-py2.7.egg/pipeline/packager.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 94, in pack_stylesheets
>>>>>>>>>>>>>     variant=package.variant, **kwargs)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/django_pipeline-1.3.27-py2.7.egg/pipeline/packager.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 103, in pack
>>>>>>>>>>>>>     paths = self.compile(package.paths, force=True)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/django_pipeline-1.3.27-py2.7.egg/pipeline/packager.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 97, in compile
>>>>>>>>>>>>>     return self.compiler.compile(paths, force=force)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/django_pipeline-1.3.27-py2.7.egg/pipeline/compilers/__init__.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 55, in compile
>>>>>>>>>>>>>     return list(executor.map(_compile, paths))
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/futures-3.0.5-py2.7.egg/concurrent/futures/_base.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 581, in result_iterator
>>>>>>>>>>>>>     yield future.result()
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/futures-3.0.5-py2.7.egg/concurrent/futures/_base.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 405, in result
>>>>>>>>>>>>>     return self.__get_result()
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/futures-3.0.5-py2.7.egg/concurrent/futures/thread.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 55, in run
>>>>>>>>>>>>>     result = self.fn(*self.args, **self.kwargs)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/django_pipeline-1.3.27-py2.7.egg/pipeline/compilers/__init__.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 40, in _compile
>>>>>>>>>>>>>     outdated=outdated, force=force)
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/django_pipeline-1.3.27-py2.7.egg/pipeline/compilers/less.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 22, in compile_file
>>>>>>>>>>>>>     return self.execute_command(command, cwd=dirname(infile))
>>>>>>>>>>>>>   File 
>>>>>>>>>>>>> "/usr/local/lib/python2.7/dist-packages/django_pipeline-1.3.27-py2.7.egg/pipeline/compilers/__init__.py",
>>>>>>>>>>>>>  
>>>>>>>>>>>>> line 99, in execute_command
>>>>>>>>>>>>>     raise CompilerError(stderr)
>>>>>>>>>>>>> pipeline.exceptions.CompilerError: /bin/sh: 1: 
>>>>>>>>>>>>> /usr/local/lib/python2.7/dist-packages/ReviewBoard-2.5.12-py2.7.egg/reviewboard/../node_modules/less/bin/lessc:
>>>>>>>>>>>>>  
>>>>>>>>>>>>> not found
>>>>>>>>>>>>>
>>>>>>>>>>>>> The path it tries to find lessc seems wrong as well. the lessc 
>>>>>>>>>>>>> should be in /usr/local/bin/lessc.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Has anyone run into the same issue?
>>>>>>>>>>>>>
>>>>>>>>>>>> -- 
>>>>>>>>>>>> Supercharge your Review Board with Power Pack: 
>>>>>>>>>>>> https://www.reviewboard.org/powerpack/
>>>>>>>>>>>> Want us to host Review Board for you? Check out RBCommons: 
>>>>>>>>>>>> https://rbcommons.com/
>>>>>>>>>>>> Happy user? Let us know! https://www.reviewboard.org/users/
>>>>>>>>>>>> --- 
>>>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>>>> Google Groups "reviewboard" group.
>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from 
>>>>>>>>>>>> it, send an email to reviewboard...@googlegroups.com.
>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> -- 
>>>>>>>>>>> Christian Hammond
>>>>>>>>>>> President/CEO of Beanbag <https://www.beanbaginc.com/>
>>>>>>>>>>> Makers of Review Board <https://www.reviewboard.org/>
>>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>> Supercharge your Review Board with Power Pack: 
>>>>>>>>> https://www.reviewboard.org/powerpack/
>>>>>>>>> Want us to host Review Board for you? Check out RBCommons: 
>>>>>>>>> https://rbcommons.com/
>>>>>>>>> Happy user? Let us know! https://www.reviewboard.org/users/
>>>>>>>>> --- 
>>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>>> Groups "reviewboard" group.
>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>>> send an email to reviewboard...@googlegroups.com.
>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> -- 
>>>>>>>> Christian Hammond
>>>>>>>> President/CEO of Beanbag <https://www.beanbaginc.com/>
>>>>>>>> Makers of Review Board <https://www.reviewboard.org/>
>>>>>>>>
>>>>>>> -- 
>>>>>>> Supercharge your Review Board with Power Pack: 
>>>>>>> https://www.reviewboard.org/powerpack/
>>>>>>> Want us to host Review Board for you? Check out RBCommons: 
>>>>>>> https://rbcommons.com/
>>>>>>> Happy user? Let us know! https://www.reviewboard.org/users/
>>>>>>> --- 
>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>> Groups "reviewboard" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>> send an email to reviewboard...@googlegroups.com.
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> -- 
>>>>>> Christian Hammond
>>>>>> President/CEO of Beanbag <https://www.beanbaginc.com/>
>>>>>> Makers of Review Board <https://www.reviewboard.org/>
>>>>>>
>>>>> -- 
>>>>> Supercharge your Review Board with Power Pack: 
>>>>> https://www.reviewboard.org/powerpack/
>>>>> Want us to host Review Board for you? Check out RBCommons: 
>>>>> https://rbcommons.com/
>>>>> Happy user? Let us know! https://www.reviewboard.org/users/
>>>>> --- 
>>>>> You received this message because you are subscribed to the Google 
>>>>> Groups "reviewboard" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>> an email to reviewboard...@googlegroups.com.
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>
>>>>
>>>>
>>>> -- 
>>>> Christian Hammond
>>>> President/CEO of Beanbag <https://www.beanbaginc.com/>
>>>> Makers of Review Board <https://www.reviewboard.org/>
>>>>
>>> -- 
>> Supercharge your Review Board with Power Pack: 
>> https://www.reviewboard.org/powerpack/
>> Want us to host Review Board for you? Check out RBCommons: 
>> https://rbcommons.com/
>> Happy user? Let us know! https://www.reviewboard.org/users/
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "reviewboard" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to reviewboard...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
>
> -- 
> Christian Hammond
> President/CEO of Beanbag <https://www.beanbaginc.com/>
> Makers of Review Board <https://www.reviewboard.org/>
>

-- 
Supercharge your Review Board with Power Pack: 
https://www.reviewboard.org/powerpack/
Want us to host Review Board for you? Check out RBCommons: 
https://rbcommons.com/
Happy user? Let us know! https://www.reviewboard.org/users/
--- 
You received this message because you are subscribed to the Google Groups 
"reviewboard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to reviewboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to