Installation instructions » History » Revision 34
Revision 33 (Ohad Levy, 11/10/2010 06:42 PM) → Revision 34/77 (Ohad Levy, 11/10/2010 06:44 PM)
{{toc}}
h1. Requirements
before you start, make sure you have:
* Puppet >= 0.24-4
* rake >= 0.84
* rubygems
* ruby-sqlite3 (libsqlite3-ruby) if you are going to use sqlite as your database
* git (if installing from source )
The installation has been successfully tested on RHEL[5,6], Fedora[13,14] and Ubuntu 8.04 - 10.04, for older operating systems you might need additional packages (e.g. sqlite)
It is also known to work on Solaris and Mac.
h1. Download
h2. Puppet Module ready to use
You may try out the puppet Foreman module, this should take care for most of the basic setup.
The module could be downloaded via: http://github.com/ohadlevy/puppet-foreman/tarball/master
you may use puppet (if you don't want to add it as a module to your puppetmaster) in the following way:
if you are using RHEL, EPEL repo must be enabled http://fedoraproject.org/wiki/EPEL
If you are using puppet store configs please set $using_store_configs to true in foreman/manifests/init.pp.
If you want this module to configure passenger as well, set $using_passenger to true in foreman/manifests/init.pp
usage:
<pre>
echo include foreman | puppet --verbose --modulepath /path_to/tarball
</pre>
*Its recommend to review the module prior usage.*
h2. Debian / Ubuntu Packages
Add one of the following lines to your @/etc/apt/sources.list@:
<pre>
# For stable packages
deb http://deb.theforeman.org/ stable main
# For testing packages
deb http://deb.theforeman.org/ testing main
</pre>
The public key for "secure APT":http://wiki.debian.org/SecureApt can be downloaded "here":http://deb.theforeman.org/foreman.asc
You can add this key with
<pre>
sudo apt-key add foreman.asc
</pre>
or combine downloading and registering:
<pre>
wget -q http://deb.theforeman.org/foreman.asc -O- | sudo apt-key add -
</pre>
The key fingerprint is
<pre>
1DCB 15D1 2CA1 40EE F494 7E57 66CF 053F E775 FF07
Foreman Archive Signing Key <packages@theforeman.org>
</pre>
To install Foreman, run
<pre>
sudo apt-get update
# Depending on the database you want to use with Foreman,
# install one of these:
sudo apt-get install foreman-mysql
sudo apt-get install foreman-pgsql
sudo apt-get install foreman-sqlite3
</pre>
h2. RPM
We maintain a repository for RHEL and Fedora (and clones) - you may add it via:
h3. Puppet
<pre>
yumrepo { 'foreman':
descr => 'Foreman Repo',
baseurl => 'http://yum.theforeman.org/stable',
gpgcheck => '0',
enabled => '1'
}
</pre>
h3. Quick and dirty
<pre>
cat > /etc/yum.repos.d/foreman.repo << EOF
[foreman]
name=Foreman Repo
baseurl=http://yum.theforeman.org/stable
gpgcheck=0
enabled=1
EOF
</pre>
<pre>
yum install foreman
</pre>
if you just want to get the rpms:
http://yum.theforeman.org
h2. Latest stable release
Latest stable version can be found under the files section
h2. Latest source code
You can get the latest source code of Foreman from the git repository hosted at github.
This is the preferred way to get Foreman if you want to benefit from the latest improvements. By using the git repository you can also upgrade more easily.
to get latest "stable" version do:
<pre><code>git clone git://github.com/ohadlevy/foreman.git foreman
cd foreman
git submodule init
git submodule update
</code></pre>
* if you are behind a proxy or firewall and dont have access to github using the git protocol, use http protocol instead (e.g.)
<pre>
git clone http://github.com/ohadlevy/foreman.git foreman
cd foreman
sed -i 's/git:\/\//http:\/\//g' .gitmodules
git submodule init
git submodule update
</pre>
h3. Daily snapshot
You can also fetch the latest daily snapshot of the development version at:
http://theforeman.org/foreman-nightly.tar.bz2
h1. Initial setup
h2. Database
Foreman uses a database, this database can be shared with Puppet store-configs (they are compatible, as Foreman extends the puppet database schema).
By default, SQLite is used, if you want to use other database (e.g. [[FAQ#I-want-to-use-MySQL|MySQL]]) please modify the configuration file under +config/database.yml+.
If you want to share the database with Puppets (storeconfig), just modify +config/database.yml+ to point to the same database configuration as puppet is.
In both cases, please use the *production* settings.
to initialize the database schema type:
<pre>
RAILS_ENV=production rake db:migrate
</pre>
h2. Import Data from Puppet
At this point, you might want to go through the [[FAQ]] to see how can you import your data into Foreman.
h2. Start The Web Server
if you installed via rpm, just start the foreman service, or start the built in web server by typing:
<code>./script/server -e production</code>
and point your browser to http://foreman:3000
If you would like to keep the server running, its recommend to setup passenger or use the RPM.
example usage with passenger can be found here: http://github.com/ohadlevy/puppet-foreman/blob/master/foreman/templates/foreman-vhost.conf.erb
h1. Future Updates
see [[Upgrade instructions]]
h1. Problems?
see [[Troubleshooting]]