Commit Graph

32 Commits

Author SHA1 Message Date
Brian C. Lane b75b692607 composer-cli: Remove all traces of composer-cli
weldr-client has replaced composer-cli so remove all of the code and
tests, adjust various things so they don't expect it to be available,
and rename some things like test/composertest.py to reflect its
exclusive use by lorax.
2021-04-26 15:59:35 -07:00
Brian C. Lane ee2496d672 Switch to using upstream mk-s390image for s390 cdboot.img creation
mk-s390-cdboot has stopped working because the kernel outgrew the
hard-coded offset it used when creating cdboot.img. IBM now has a script
in s390utils that can do the same thing so use the upstream script
instead.

This drops mk-s390-cdboot script, switches the s390 templates to use
mk-s390image from s390utils.

It adds @ROOT@ to cdboot.prm, and sets inst.stage2 so that the installer
image will be found when booting the iso.

Resolves: rhbz#1891778
2020-11-02 11:46:02 -08:00
Brian C. Lane 7616a10373 Remove lorax-composer, it has been replaced by osbuild-composer
Remove the code, related files, and tests.
2020-09-30 15:42:46 -07:00
Brian C. Lane f74a5cc4a6 mkksiso: Add a tool to add a kickstart to an existing boot.iso
This tool will add the kickstart to the boot.iso, edit the kernel boot
arguments so that the kickstart is used when the iso boots, as well as
allow adding extra files and directories to the / of the iso which can
then be used by the kickstart (they are found under /run/install/repo
while Anaconda is running).
2019-11-05 11:09:42 -08:00
Evan Goode 2692e8138c Automatically upload composed images to the cloud
Currently, Azure, vSphere, and OpenStack are supported. See
https://github.com/weldr/lorax/pull/826 for more details about this new
feature.

I've called the upload library "lifted" as a reference to Seuss'
The Lorax -- in the book, the Lorax lifts himself up by the seat of his
pants through a hole in the smog clouds, and they start calling him the
"Lifted Lorax."

This adds new features to the /compose route under API v1
2019-10-16 09:17:53 -07:00
Brian C. Lane e4fe1aab32 lorax: Move default tmp dir to /var/tmp/lorax
If systemd's tmpfiles.d timer is executed while lorax is running it will
remove any files and directories older than 30 days. This is what has
been causing the occasional error where /proc/ would seem to vanish
during the install.

Upstream has proposed this solution, https://github.com/systemd/systemd/pull/11482
but until that is released we need a work-around to protect the lorax
files.

This commit does several things:

* Move the default tmpdir from /var/tmp/ to /var/tmp/lorax/
* Add a lorax.conf tmpfiles.d file that prevents systemd-tmpfiles from
  removing anything under /var/tmp/lorax/
* Add an exit handler to lorax so that temporary directories are removed on
  exit or on a python traceback.
* Use flock to lock access to the tempdir while lorax is running.
* Remove any unlocked tempdirs named /var/tmp/lorax/lorax.* at startup

Note that the exit handler will not remove the tempdir if lorax is
killed with a signal -- those are being caught by dnf and prevent the
exit handler from running.

systemd-tmpfiles cannot clean up the tempdirs at boot time because they
contain files labeled as shadow_t, so we have to remove those when lorax
runs. It uses the flock to prevent removing any directories created by
parallel instances of lorax and only removes ones that are unlocked.
Worst case they will be around until the first run of lorax after a
reboot.

If you want to keep the working directory around for debugging purposes
use --workdir /var/tmp/lorax/my-workdir and it won't be removed by
lorax.
2019-01-29 13:57:12 -08:00
Brian C. Lane c017300ad6 Revert "Rename composer-cli to composer"
This reverts commit c9be91c879.

It conflicts with the PHP dependency manager project named 'composer'
2018-10-08 09:23:47 -07:00
Lars Karlitski c9be91c879 Rename composer-cli to composer 2018-09-20 12:02:03 +03:00
Brian C. Lane 48e318b391 Add support for systemd socket activation
Instead of enabling lorax-composer.service enable lorax-composer.socket
and it will start lorax-composer on first access to
/run/weldr/api.socket
2018-05-14 13:57:44 -07:00
Brian C. Lane 29ceea3d05 Update setup.py for lorax-composer and composer-cli 2018-05-14 13:00:15 -07:00
Dan Horák 9264ec7f26 distribute the mk-s390-cdboot utility 2017-09-27 09:43:10 -07:00
Brian C. Lane 7827ba112c Update spec for python3 and add subpackages for lmc
This updates things for python3, and adds 2 subpackages to pull in
dependencies needed by lmc when running with virt-install or --no-virt
with anaconda.
2015-05-15 17:11:20 -07:00
Brian C. Lane 3f77b80d6c Use /usr/bin/python2 in scripts
New packaging guidelines:

https://fedoraproject.org/wiki/Packaging:Python#Multiple_Python_Runtimes
https://fedorahosted.org/fpc/ticket/327#comment:9
2015-02-09 08:48:22 -08:00
Brian C. Lane 0094fab0d4 Cleanup other misc pylint warnings 2014-05-09 08:10:41 -07:00
Brian C. Lane 99f2ab9137 move image-minimizer to lorax (#1082642)
This is used as a kickstart %post interpreter to streamline
modifications to images.

Also adds an example kickstart.

This obsoletes the old appliance-tools-minimizer and includes a Provide
so that the transition will be seamless.
2014-03-31 17:02:55 -07:00
Brian C. Lane 14fa40556c Stop using /usr/bin/env (#987028) 2013-07-24 13:41:03 -07:00
Brian C. Lane d3a9e77315 Modify spec file for livemedia-creator 2011-12-20 14:59:58 -08:00
Martin Gracik 73fc20b165 Write the lorax verion in the .buildstamp (#689697)
(cherry picked from commit 4271e0fc02)

Conflicts:
	src/pylorax/buildstamp.py

Signed-off-by: Will Woods <wwoods@redhat.com>
2011-10-24 16:07:25 -04:00
Will Woods 4343b12fc0 mkefiboot fixups (fix imports, mkdosimg, add to setup.py) 2011-05-12 17:28:53 -04:00
Martin Gracik 3a0ed30cca Setup and spec file changes
Added the license files and executable.
Marked lorax.conf as config.
2010-12-17 17:04:04 +01:00
Martin Gracik 8a91123766 Update setup.py 2010-12-02 13:37:06 +01:00
Martin Gracik 45c5ef566c Experimental single initrd image 2010-10-12 18:32:35 +02:00
Martin Gracik 1ab4a60bc7 Added some packages and config files
Also fixed the modules symlink
2010-04-02 14:20:05 +02:00
Martin Gracik a4c638f132 New version 2010-02-23 14:20:05 +01:00
David Cantrell 6c6a55154a Fix /usr/share/lorax installation. 2008-10-04 20:15:56 -10:00
David Cantrell c158df0024 Make sure /etc and /usr/share files go to the right place. 2008-10-04 20:14:31 -10:00
David Cantrell c8e52cbf27 Use os.path.join() rather than explicitly listing full paths. 2008-10-04 20:09:46 -10:00
David Cantrell f1375c5ea8 Fix more problems in setup.py. 2008-10-04 20:09:04 -10:00
David Cantrell 46052c010d Build the list of data_files more correctly in setup.py.
Build individual file lists for each subdirectory in etc/
2008-10-04 20:05:53 -10:00
David Cantrell c01846d9ae lorax.py -> lorax 2008-10-04 19:53:33 -10:00
David Cantrell 5623014506 Write Makefile and correct problems in setup.py. 2008-10-04 19:51:17 -10:00
David Cantrell f1ba230378 Added setup.py, a distutils-based install script. 2008-10-04 19:46:04 -10:00