From 0fdc1a5decd8c58763d9bdc4e1f2f5ce5147ff83 Mon Sep 17 00:00:00 2001 From: Romain d'Alverny Date: Wed, 14 Nov 2012 16:15:59 +0000 Subject: first quick summary to attempt to get a big picture grasp on the buildsystem --- README.md | 116 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..b6fa71e --- /dev/null +++ b/README.md @@ -0,0 +1,116 @@ +# Mageia build system & tools + +***This is an attempt to summarize, document and organize the whole tools making +the buildsystem here at Mageia.*** + +## Big picture + +TODO _show_ what are all the pieces of the build system, +how they interact, who interacts with these, and what are the basic actions +of each actor, and expected reactions. + +---- +## Tools + +It currently comprises: + + * bcd + * iurt + * youri + * mgarepo + * web + + +### bcd + + * BCD a new tool to build Mandriva ISO. + * License: GNU LGPL 2.1 + + * works: manually (can be automated?) + * for: distribution release manager + * input: distribution repository + specific configurations + * output: installable ISO image of the distribution (what about live images? other images?) + +### iurt + + * No READMEs. Descriptions taken from header docs: + * iurt: compare and rebuild packages on different architecture + * emi: upload packages in queue when all the mandatory architectures are done + * ulri: compare and rebuild packages on different architecture + * TODOs are in comments in the code, should be checked for current validity. + * License: GNU GPL v2+ + + * works: manually + * for: packager + * input: ? + * output: ? + +### youri + + * YOURI stands for "Youri Offers an Upload & Repository Infrastucture". + * It aims to build tools making management of a coherent set of packages easier. + Managing a package repository involves many tasks, such as keeping packages + tree tidy, generating packages indexes, synchronising bug report system, + running coherency checks, checking for available updates, etc... + Instead of a gazillion project-specific scripts, we aim to provide a generic + package-format independant framework, so as to build coherent and robust tools. + + * Components: + * youri-check allows to check packages + * youri-upload allows to upload packages + + * License: Perl License + + * works: automatically and manually? + * for: buildsystem/repository admin? + * input: ? + * output: ? + +### mgarepo + + * mgarepo is the tool used to manage RPM packages in a subversion repository + on Mageia. + * It is a fork of the repsys tool used by Mandriva. + * It is used to create, tag releases, generate .src.rpm, generate changelog, + and request new package releases for build. It mostly acts as a interface + to svn(1) commands and small task scripts run that on the build system side + over ssh(1). + * For more information, see mgarepo(8) + * The discussion on the development of mageiarepo takes place on the + Mageia developers mailing list. + * License: + * Howtos: https://wiki.mageia.org/en/Mgarepo + + * works: manually + * for: packager + * input: ? + * output: ? + +### web + + * hosts components to report various states in the build system + (upload queue, uploaded packages and build results, etc.) + * License: + + * works: auto + * for: anyone willing to checkout status info about the whole system + * input: various data sources in the system (TODO details) + * output: HTML documents and parsable data structures (JSON, text) + +---- +## Code + +Code is available in: + + - [Subversion](svn://svn.mageia.org/svn/soft/build_system), + - [Web view](http://svnweb.mageia.org/soft/build_system). + +--- +## TODO & BUGS + + * please check out [our quite extensive Bugzilla](https://bugs.mageia.org/buglist.cgi?query_format=advanced&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=BuildSystem&product=Infrastructure) + and use it for further bugs. + + + +---- \ No newline at end of file -- cgit v1.2.1