Hello Everyone,
If you have looked at the git repo lately you may have noticed a big
restructure. We had many sub-packages in beaker that all had their own
way of doing things. I found some great Makefile rules from another
Fedora project called python-slip. These help with git, scm, python,
rpmspecs, etc.. So I modified our Makefiles to take advantage of them.
This let us stop using python setup.py sdist as a way to build our
source archive. This was just a bad idea and created lots of problems.
So what do we have now?
At the top level we have a common spec file called beaker.spec which
lists the following sub-packages:
beaker-server - This used to be medusa-server
beaker-lab-controller - This used to be medusa-lab-controller
beaker-client - This is our client interface to
beaker-server. This relies on python-kobo which isn't released quite yet.
beaker-lib - This used to be rhtslib.
All of these can be built from the top level directory with the
following commands:
make archive <- This will check that you don't have any outstanding
commits waiting.
Also checks for any incoming changes from master
Pushes changes to master
Tags based on version in beaker.spec
Finally creates a tarball using the
git-archive command
make srpm/rpm <- Just like before it will build an SRPM or RPM.
make push <- This will push the archive to
fedorahosted.org
For local development in-between releases you can use snaparchive
instead of archive and it will only make an archive local without
tagging or pushing to master. This is good for verifying things work
before pushing.
I've removed any reference to medusa in the repo, Everything will be
referenced by beaker. The scheduler components in Logan will be merged
into server. More on that in another email.
Email me if you have any questions!