No Description

krish 1cadc97c56 HUE-6654 [doc2] Do not fail import when document parent directory is null 8 years ago
apps 024e6c3cc0 HUE-6622 [jb] Avoid page freeze if the counters call returns zero results 8 years ago
desktop 1cadc97c56 HUE-6654 [doc2] Do not fail import when document parent directory is null 8 years ago
dist 252b5a19f6 [doc] Friendler tarball install README 10 years ago
docs 3c6e7fad88 HUE-6077 [frontend] Unified Hue dark blue to cui-blue-700 8 years ago
ext 09f20df2e5 HUE-2523 [core] Convert tests to the new generator 10 years ago
maven ea57424881 HUE-6603 [core] Bump version to 4.0 8 years ago
tools 7a1ced74f0 HUE-6541 [core] Update test tarballs to pick up the latest version 8 years ago
.coveragerc 0625ad0464 HUE-5078 [core] Omit irrelevant files and paths in coverage 9 years ago
.gitattributes ae333e405b hue (formerly Cloudera Desktop) from internal commit 4694ac0434dad85170854c5378a389585d87f679 15 years ago
.gitignore 251c94ecb4 HUE-5706 [core] Put back responsive.css for development purposes 8 years ago
Gruntfile.js 1b3fc57c7e HUE-6077 [home] Move styles to less, unify colours and extend browser flex support 8 years ago
LICENSE.txt ae333e405b hue (formerly Cloudera Desktop) from internal commit 4694ac0434dad85170854c5378a389585d87f679 15 years ago
Makefile 720b043c36 HUE-6077 [frontend] Removed 'theme' from makefile 8 years ago
Makefile.sdk 7ee080aec3 HUE-758 [core] Internationalization 13 years ago
Makefile.tarball 79a4fe10d1 HUE-2943 [core] Manually exclude boto from the pruning to fix packaging 10 years ago
Makefile.vars 91c7efe5e9 HUE-5127 [core] Revert typo about Python 2.6 in Makefile 9 years ago
Makefile.vars.priv ae333e405b hue (formerly Cloudera Desktop) from internal commit 4694ac0434dad85170854c5378a389585d87f679 15 years ago
NOTICE.txt cea265d68a [core] Add third-party dependency references 11 years ago
README.md bd1897d053 HUE-2890 [doc] Fix typo in README.md packaging section 8 years ago
VERSION ea57424881 HUE-6603 [core] Bump version to 4.0 8 years ago
data db2e9f2f30 Make app registry location configurable 12 years ago
package.json d68f3fcb66 HUE-6091 [core] Re-organized webpack 8 years ago
webpack.config.js 7e5ec09e9a HUE-6091 [core] Fixed webpack entry point naming 8 years ago

README.md

alt text

Welcome to the repository for Hue

Hue is an open source Web interface for analyzing data with any Apache Hadoop: gethue.com

alt text

It features:

  • SQL editors for Hive, Impala, MySQL, Oracle, PostgreSQL, SparkSQL, Solr SQL, Phoenix...
  • Dynamic Search dashboards with Solr
  • Spark and Hadoop notebooks
  • Scheduling of jobs and workflows through an Oozie Editor and Dashboard

More user and developer documentation is available at gethue.com.

Getting Started

To build and get the development server running:

$ git clone https://github.com/cloudera/hue.git
$ cd hue
$ make apps
$ build/env/bin/hue runserver

Now Hue should be running on http://localhost:8000 !

The configuration in development mode is desktop/conf/pseudo-distributed.ini.

Note: to start the production server (but lose the automatic reloading after source modification):

$ build/env/bin/supervisor

To run the tests:

Install the mini cluster (only once):

$ ./tools/jenkins/jenkins.sh slow

Run all the tests:

$ build/env/bin/hue test all

Or just some parts of the tests, e.g.:

$ build/env/bin/hue test specific impala
$ build/env/bin/hue test specific impala.tests:TestMockedImpala
$ build/env/bin/hue test specific impala.tests:TestMockedImpala.test_basic_flow

Docker

Start Hue in a single click with the Docker Guide or the video blog post.

Development Prerequisites

You'll need these library development packages and tools installed on your system:

Ubuntu:

  • sudo apt-get install git ant gcc g++ libffi-dev libkrb5-dev libmysqlclient-dev libsasl2-dev libsasl2-modules-gssapi-mit libsqlite3-dev libssl-dev libxml2-dev libxslt-dev make maven libldap2-dev python-dev python-setuptools libgmp3-dev

  • Oracle's JDK (read more here)

    sudo add-apt-repository ppa:webupd8team/java
    sudo apt-get update
    sudo apt-get install oracle-java7-installer
    
  • mvn (from maven package or maven3 tarball)

  • openldap-dev / libldap2-dev

  • libtidy-0.99-0 (for unit tests only)

CentOS/RHEL:

  • Oracle's JDK (read more here)
  • ant
  • asciidoc
  • cyrus-sasl-devel
  • cyrus-sasl-gssapi
  • cyrus-sasl-plain
  • gcc
  • gcc-c++
  • krb5-devel
  • libffi-devel
  • libtidy (for unit tests only)
  • libxml2-devel
  • libxslt-devel
  • make
  • mvn (from apache-maven package or maven3 tarball)
  • mysql
  • mysql-devel
  • openldap-devel
  • python-devel
  • sqlite-devel
  • openssl-devel (for version 7+)
  • gmp-devel

MacOS:

  • Xcode command line tools
  • Oracle's JDK 1.7+
  • maven (Homebrew)
  • mysql (Homebrew)
  • gmp (Homebrew)
  • openssl (Homebrew)
  • Required for Mac OS X 10.11+ (El Capitan), after brew install openssl, run: export LDFLAGS=-L/usr/local/opt/openssl/lib && export CPPFLAGS=-I/usr/local/opt/openssl/include

All, just in case you want to run the Jasmine tests:

File Layout

The Hue "framework" is in desktop/core/ and contains the Web components. desktop/libs/ is the API for talking to various Hadoop services. The installable apps live in apps/. Please place third-party dependencies in the app's ext-py/ directory.

The typical directory structure for inside an application includes:

  src/
    for Python/Django code
      models.py
      urls.py
      views.py
      forms.py
      settings.py

  conf/
    for configuration (``.ini``) files to be installed

  static/
    for static HTML/js resources and help doc

  templates/
    for data to be put through a template engine

  locales/
    for localizations in multiple languages

For the URLs within your application, you should make your own urls.py which will be automatically rooted at /yourappname/ in the global namespace. See apps/about/src/about/urls.py for an example.

Main Stack

Hue would not be possible without:

Community

License

Apache License, Version 2.0 http://www.apache.org/licenses/LICENSE-2.0