Re: Building dashboard_v2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 14-02-2018 18:15, Alfredo Deza wrote:
On Wed, Feb 14, 2018 at 11:34 AM, Ricardo Dias <rdias@xxxxxxxx> wrote:
Hi,

The PR https://github.com/openattic/ceph/pull/91 updates
install-deps.sh script to install the development dependencies
required by dashboard_v2.

Since I can only test this in openSUSE based distros in a reliable way
I ask if there are some volunteers that can test this in other distros.

Please note that the install-deps.sh script is used for building Ceph
binaries, including those for
actual releases.

Unsure what distinctions (if any) are being made to separate
"development" of the dashboard vs. "running" the dashboard (as pointed
out earlier in the thread)

The only runtime dependency required by the dashboard that wasn't still
in the spec file, is python-bcrypt and is also added in the PR.
I think we covered both development and runtime with this PR, but
testing is needed.


Thanks,
Ricardo Dias

On 13-02-2018 15:29, John Spray wrote:

Hi folks,

Having just built the awesome new dashboard code
(https://github.com/ceph/ceph/pull/20103) in my dev environment for
the first time, I'll share my notes...

When building on Ubuntu 16.04, which does not have a recent enough
node.js for the build -- had to get one from an external source.  It
looks like Fedora and EPEL do have more recent ones.  Not sure if
there is a sufficiently trusted third party Ubuntu repo to add to
install_deps.sh.

My fedora 26 machine had a sufficiently recent node/npm, so building
there was simpler.  Just had to install the python2-bcrypt package (in
addition to what is already covered in install_deps).

The frontend build only takes 25 seconds, which I think is pretty
good.  The resulting dist/ dir is 18M at the moment, which is very
similar to the existing dashboard static files size.  I would suggest
we can decrease that a bit by restricting the font formats included:
by default we're getting eog/svg/ttf output, but we probably only need
WOFF.

I didn't need a virtualenv or any pip-installed things to run the
dashboard in development (presumably would have needed that to run
unit tests on the backend python code).

Detailed notes below.

Cheers,
John




On Ubuntu 16.04 (aka senta04)
=============

Had to symlink /usr/bin/nodejs to /usr/bin/node (one of the
dependencies depends on it)

The distro comes with node 4.2.6.  The dashboard_v2 code requires node

= 6.9.0 (per tmelo) -- that isn't being explicitly checked, so if

your node is old then you just get a nasty syntax error during "npm
run build".

Angular CLI depends on node >= 6.9.0 and npm >= 3 (according to its
README).

Repo with a more recent node is here:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
This is linked from the nodejs official page, but I have no idea of
provenance beyond that.

If you had already tried "npm run build" with an older node before
installing the newer one, do a "npm rebuild node-sass" after
installing the new node before trying to build dashboard frontend
again.

Had to install python-bcrypt.

Fedora 26 (aka my laptop)
========

This distro appears to come with node 6.12.

dnf install python2-bcrypt
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


--
Ricardo Dias
Senior Software Engineer - Storage Team
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton,
HRB 21284
(AG Nürnberg)
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux