mirror of
https://github.com/rpm-software-management/tito.git
synced 2025-02-23 20:22:46 +00:00
110 lines
4 KiB
Text
110 lines
4 KiB
Text
releasers.conf(5)
|
|
=================
|
|
include::man.asciidoc[]
|
|
|
|
NAME
|
|
----
|
|
releasers.conf - Config file defining release targets where builds can be published.
|
|
|
|
|
|
SYNOPSIS
|
|
--------
|
|
None
|
|
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
Tito allows projects to define their own release targets, which can specify the exact releaser implementation to use (potentially a custom one), and any arguments it may need for a specific type of build.
|
|
|
|
|
|
RELEASERS
|
|
---------
|
|
|
|
Tito includes several releaser implementations that can be used in releasers.conf. Additionally you may define a lib_dir in your tito.props globalconfig section, and place your own custom implementation of a releaser there.
|
|
|
|
Specify "builder.test = 1" in your releasers.conf target to enable --test builds. (uses the latest git HEAD rather than the latest tagged package) This can be useful for automating the publishing of a nightly build, which you would not want to continually have to tag.
|
|
|
|
tito.release.YumRepoReleaser::
|
|
Releaser which will build your packages, rsync down an existing yum repository, place your packages in it, regenerate the yum repodata, and rsync the yum repository back up.
|
|
|
|
Specify "filetypes = srpm" if you want to build a source rpm instead of a regular rpm.
|
|
|
|
Specify "createrepo_command = createrepo -s sha1" if you are building on a recent distro and are working with yum repositories for rhel5.
|
|
|
|
|
|
tito.release.RsyncReleaser::
|
|
Releaser which will build your packages, and rsync up to a remote repository
|
|
|
|
specify "filetypes = rpm srpm tgz" to choose what type of packages will be uploaded.
|
|
|
|
|
|
tito.release.FedoraGitReleaser::
|
|
|
|
Releaser which will checkout your project in Fedora git using fedpkg. Sources are then synced to the first branch your releaser lists. After this tito will git merge the first branch into all other listed branches, triggering builds in each.
|
|
|
|
WARNING: Highly experimental, very prone to failure if merging master into your branches is likely to cause a conflict. You will need to cleanup manually if this occurs.
|
|
|
|
[fedora-git]
|
|
releaser = tito.release.FedoraGitReleaser
|
|
branches = master el5 el6 f14 f15 f16
|
|
|
|
tito.release.CvsReleaser::
|
|
Releaser which will submit builds through CVS build systems. (no longer useful for Fedora) The CVS module is checked out, sources, spec file, and patches are synced and committed, the release is tagged (make tag), and then submitted to the build system. (make build)
|
|
|
|
[cvs]
|
|
releaser = tito.release.CvsReleaser
|
|
cvsroot = :ext:myuser@cvs.fedoraproject.org:/cvs/extra
|
|
branches = BRANCH1 BRANCH2
|
|
|
|
tito.release.KojiReleaser::
|
|
Highly experimental, ignore for now.
|
|
|
|
|
|
|
|
EXAMPLE
|
|
-------
|
|
|
|
; Release into fedora-15-x86_64 yum repo
|
|
[yum-f15-x86_64]
|
|
releaser = tito.release.YumRepoReleaser
|
|
builder = tito.builder.MockBuilder
|
|
builder.mock = fedora-15-x86_64
|
|
rsync = fedorapeople.org:/srv/repos/dgoodwin/tito/fedora-15/x86_64/ fedorapeople.org:/srv/repos/dgoodwin/tito/fedora-15/x86_64/
|
|
|
|
; Release into el6 yum repository. specify builder.test=1 so that
|
|
; we build on latest commit (instead of latest tito tag)
|
|
[yum-el6-x86_64]
|
|
releaser = tito.release.YumRepoReleaser
|
|
builder = tito.builder.MockBuilder
|
|
builder.mock = epel-6-x86_64
|
|
builder.test = 1
|
|
rsync = remoteserver.org:/srv/repos/el6/testing/x86_64
|
|
|
|
; Upload into source repository
|
|
[yum-fc15-sources]
|
|
releaser = tito.release.YumRepoReleaser
|
|
builder = tito.builder.MockBuilder
|
|
builder.mock = fedora-15-x86_64
|
|
filetypes = srpm
|
|
rsync = remoteserver.org:/srv/repos/fedora-15/SRPMS
|
|
|
|
; el5 yum repository. Overloading createrepo_command to make
|
|
; el5 compatible repo.
|
|
[yum-el5-i386]
|
|
releaser = tito.release.YumRepoReleaser
|
|
builder = tito.builder.MockBuilder
|
|
builder.mock = epel-5-i386
|
|
createrepo_command = createrepo -s sha1
|
|
rsync = remoteserver.org:/srv/repos/rhel5/i386
|
|
|
|
[cvs]
|
|
cvsroot = :gserver:cvs.example.com:/cvs/dist
|
|
branches = FEDORA-15
|
|
|
|
; rsync tgz file to remote site
|
|
[rsync]
|
|
releaser = tito.release.RsyncReleaser
|
|
builder = tito.builder.MockBuilder
|
|
builder.mock = fedora-15-x86_64
|
|
filetypes = tgz
|
|
rsync = remoteserver.org:/srv/tarballs/
|