Skip to content
Katello integrates open source systems management tools into a single solution for controlling the lifecycle of your machines.
Ruby JavaScript HTML CSS Other
Find file
Latest commit 3c3201e @jlsherrill jlsherrill Merge pull request #5769 from jlsherrill/13652
Fixes #13652 - fixing content host link on host details
Failed to load latest commit information.
.tx fix paths in .tx/config after git reorganization
app Merge pull request #5769 from jlsherrill/13652
ca adding redhat-uep.pem to katello ca
config Fixes #12570: export of content views
db fixes #13550 - docker v2: remove code related to docker v1 images
engines/bastion_katello Merge pull request #5730 from bkearney/bkearney/13396
lib Fixes #12570: export of content views
locale Merge pull request #5760 from bkearney/bkearney/10241
script Fixes #13289 - Remove backup and restore scripts
spec Fixes #13470: Remove the use of Thread sessions for configuration
test Merge pull request #5759 from komidore64/rmi-13528
vendor Refs #10970: apply backwards compatible rails 4 changes.
.gitignore Fixes #13396 - Update the zanata mapping files
.rspec initial commit
.rubocop.yml Fixes #12208 - Seed script for katello-foreman migration
.rubocop_todo.yml Merge pull request #5677 from daviddavis/temp/20151222135922
.simplecov Setup simplecov in katello
.yardopts Add documentation of db schema Refs #7242: Add 1.5-2.0 Changelog. Fixes #6272/BZ1118479 - move Bastion guide to
CONTRIBUTORS adding myself to contrib
Gemfile Engine: Removing old gem files
LICENSE.txt set Markdown as default markup updates to README file
katello.gemspec Fixes #12722 - add sync status to the proxy show page

Katello Dependency Status

Full documentation is at


Katello is a systems life cycle management plugin to Foreman. Katello allows you to manage thousands of machines with one click. Katello can pull content from remote repositories into isolated environments, and make subscriptions management a breeze.

Currently, it is able to handle Fedora and Red Hat Enterprise Linux based systems.


The most common way to set up Katello for development is to use katello-deploy. This will set up a Vagrant instance with the Katello codebase checked out. You can also run setup.rb directly with katello-deploy if you prefer to not use Vagrant.

There is also katello-devel-installer if you would like to use that.

If you have questions or issues with any of the above methods, feel free to ask for assistance on #theforeman-dev IRC channel or via the foreman-dev mailing list.

Test Run

At this point, the development environment should be completely setup and the Katello engine functionality available. To verify this, go to your Foreman checkout:

  1. Start the development server

    cd $GITDIR/foreman
    rails s
  2. Access Foreman in your browser (e.g. https://<hostname>/). Note that while Rails will listen on port 3000, the dev installer will set up a reverse proxy so HTTPS on port 443 will work.

  3. Login to Foreman (default: admin and changeme)
  4. If you go to https://<hostname>/about and view the "Plugins" tab, you should see a "Katello" plugin listed.

Reset Development Environment

In order to reset the development environment, all backend data and the database needs to be reset. To reiterate, the following will destroy all data in Pulp, Candlepin and your Foreman/Katello database. From the Foreman checkout run:

rake katello:reset

Found a bug?

That's rather unfortunate. But don't worry! We can help. Just file a bug in our project tracker.


See the developer documentation.

Contact & Resources


Documentation is generated with YARD and hosted at This documentation is intended for developers, user documentation can be found on wiki. Developer documentation contains:

  • code documentation
  • high level guides to architectures and implementation details
  • how-tos

Note: older developer guides can be found on our wiki, they are being migrated.

How to

Current documentation

  • {file:doc/}
  • {file:doc/}


  • {file:doc/how_to/ Enabling Praise} - raise/exception investigation


  • {file:doc/how_to/ How to package new gem}


  • {file:doc/katellodb.html DB schema documentation}
  • Original Rails generated README {file:doc/RailsReadme}, we may do certain things differently

    • we use doc directory for storing markdown guides instead of a generated documentation


  • {Katello::Configuration}
  • {Notifications}
Something went wrong with that request. Please try again.