repositor.io - Linux Repository Management
repositor.io is a tool to create and manage linux repositories. You can mirror online repositories so that you don't need to download the package every time you set up a new server. You can also secure your servers behind a firewall and disable outgoing http traffic.
With repositor.io it is easy to create custom repositories for your own packages. With the integration of a configuration management tool you can create consistant installations of your server.
GETTING HELP
Web Site: http://repositor.io/
IRC: irc.freenode.net #repositorio
Bug Tracker: https://github.com/krimdomu/repositorio/issues
Twitter: http://twitter.com/jfried83
COMMAND LINE
- --mirror mirror a configured repository (needs --repo)
- --tag=tagname tag a repository (needs --repo)
- --repo=reponame the name of the repository to use
- --update-metadata update the metadata of a repository
- --update-files download files even if they are already downloaded
- --init initialize an empty repository
- --add-file=file add a file to a repository (needs --repo)
- --remove-file=file remove a file from a repository (needs --repo)
- --list list known repositories
- --help display this help message
CONFIGURATION
To configure repositor.io create a configuration file /etc/rex/repositorio.conf. RepositoryRoot = /srv/html/repo/
# log4perl configuration file
<Log4perl>
config = /etc/rex/io/log4perl.conf
</Log4perl>
# create a mirror of the nightly rex repository
# the files will be stored in
# /srv/html/repo/head/rex-centos-6-x86-64/CentOS/6/rex/x86_64/
<Repository rex-centos-6-x86-64>
url = http://nightly.rex.linux-files.org/CentOS/6/rex/x86_64/
local = rex-centos-6-x86-64/CentOS/6/rex/x86_64/
type = Yum
</Repository>
# create a mirror of centos 6
# and download the pxe boot files, too.
<Repository centos-6-x86-64>
url = http://ftp.hosteurope.de/mirror/centos.org/6/os/x86_64/
local = centos-6-x86-64/CentOS/6/os/x86_64/
type = Yum
images = true
</Repository>
# create a custom repository
<Repository centos-6-x86-64-mixed>
local = centos-6-x86-64-mixed/mixed/6/x86_64/
type = Yum
</Repository>
An example log4perl.conf file:
log4perl.rootLogger = DEBUG, FileAppndr1
log4perl.appender.FileAppndr1 = Log::Log4perl::Appender::File
log4perl.appender.FileAppndr1.filename = /var/log/repositorio.log
log4perl.appender.FileAppndr1.layout = Log::Log4perl::Layout::SimpleLayout