Autodesk / hubble

🛰 Collaboration, usage, and health data visualization for GitHub Enterprise
https://autodesk.github.io/hubble
MIT License
176 stars 47 forks source link
analytics git github github-enterprise hubble-enterprise

Logo Banner

Hubble Enterprise GitHub Release CI Status codecov

Hubble Enterprise visualizes GitHub Enterprise collaboration, usage, and health data.

Explore our interactive demo or watch the recording of our GitHub Universe talk to learn more!

:warning: Attention: Hubble Enterprise is not supported by or affiliated with GitHub. Use it at your own risk! Autodesk assumes no responsibility for any data loss or hardship incurred directly or indirectly by using Hubble Enterprise.

Hubble Enterprise runs all queries through the GitHub Enterprise administrative shell and ignores repository visibility settings to generate statistics over all repositories on your appliance. Consequently, the names (no content!) of private repositories could show up on the Hubble dashboard published via GitHub Pages on your appliance. If you have enabled Public Pages on your GitHub Enterprise management console, then everyone on your network will be able to see the Hubble dashboard!

Please use Hubble Enterprise on your production instance only after reviewing the source code carefully!

Getting Started

Hubble Enterprise consists of two components. The updater component is a Python script that queries relevant data from a GitHub Enterprise appliance and stores the results in a Git repository once a day. The docs component is a web application that visualizes the collected data and is hosted with GitHub Pages.

  1. Create a new, initialized, public repository for Hubble’s data on your GitHub Enterprise appliance (for instance, https://git.company.com/scm/hubble-data).
  2. Publish Hubble’s data repository on GitHub Pages. Go to the repository settings, options tab, GitHub Pages section, then choose master branch as source, and click save. GitHub Enterprise will now tell you the URL of the published data pages (for instance, https://pages.git.company.com/scm/hubble-data if you have subdomain isolation enabled). Please be aware that this is a GitHub Pages URL and not just the repository’s URL. Note this URL down as dataURL, as you will need it later.
  3. Create a new, uninitialized, public repository for Hubble on your GitHub Enterprise appliance (for instance, https://git.company.com/scm/hubble).
  4. Clone this repository to your local machine, add your new Hubble repository as a remote, and push Hubble’s master branch to this remote:
    git clone https://github.com/autodesk/hubble
    cd hubble
    git remote add ghe https://git.company.com/scm/hubble
    git push -u ghe master
  5. Open docs/_config.yml in your editor and set the dataURL that you noted earlier. Commit and push the change to your Hubble repository:
    git add docs/_config.yml
    git commit -m "Adjusting dataURL to our own instance"
    git push
  6. Publish Hubble’s docs folder on GitHub Pages. Go to the repository settings, options tab, GitHub Pages section, then choose master branch/docs folder as source, and click save. GitHub Enterprise will now tell the URL of the published dashboard pages. You may want to bookmark this URL to conveniently access the dashboard of Hubble Enterprise.
  7. Configure the updater component.

Contributing

Review the contributing guidelines before you consider working on Hubble Enterprise and proposing contributions.

Core Team

These are the humans that form the core team of Hubble Enterprise, in alphabetical order:

br><sub>[@larsxschneider](https://github.com/larsxschneider)</sub br><sub>[@pluehne](https://github.com/pluehne)</sub

License

SPDX-License-Identifier: MIT