Commit graph

80 commits

Author SHA1 Message Date
Mike Frysinger f98bc791e6 catalyst-auto: pass current targets down to post_build
Commit b7e493b4e4 (run trigger_post_build
after every successful spec) broke a lot of builders.  The configs were
written to be called only after everything was done, but by calling it
after the first build (stage1 only), all the other artifacts we expected
did not yet exist.

Change post_build to pass the current set & spec name down so the config
can figure out what is available at that point in time.
2018-01-15 20:52:14 -05:00
Mike Frysinger 8f6370f8b3 catalyst-auto: run update_symlinks by default in pre_build
All configs defining update_symlinks run it in pre_build, and all the
other configs will want to do the same.  So make it the default in the
pre_build phase.
2018-01-15 20:42:19 -05:00
Mike Frysinger a8e70e1976 catalyst-auto: move git update into main script
All of our config files are doing this already, so move it into the
common code.
2018-01-15 20:17:43 -05:00
Mike Frysinger 04b56eaab3 catalyst-auto: move container logic into a func too
This lets us put it after command line parsing.
2018-01-15 20:13:59 -05:00
Mike Frysinger b291ea4754 catalyst-auto: move all code into functions
Mixing inline funcs and executable code makes it hard to follow and
shuffle ordering of operations.  Put everything other than variables
into functions.

The delta here is large, but it's almost entirely indentation changes.

This also makes updating the script (like `git pull`) more resilient.
2018-01-15 20:11:44 -05:00
Robin H. Johnson 5d73c6b04a
catalyst-auto: add intermediate verbose, that prints the command, but not the output; -vv has old behavior
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2017-12-28 21:32:10 -08:00
Robin H. Johnson af9a181c70
catalyst-auto: fix title.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2017-12-15 10:40:07 -08:00
Robin H. Johnson 85bac3a8a2
catalyst-auto: only purge tmpdir+autoresume, not pkgdir.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2017-12-14 19:45:09 -08:00
Robin H. Johnson b7e493b4e4
catalyst-auto: run trigger_post_build after every successful spec, to export results sooner.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2017-12-14 19:44:41 -08:00
Robin H. Johnson 561af1245f
catalyst-auto/run_cmd: append logs instead of overwrite
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2017-12-14 19:44:07 -08:00
Robin H. Johnson ed258c751b
tools/catalyst-auto: change datestamp->timestamp
Prepare for doing multiple automated runs in a single day on
newer/faster build systems.

Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2017-12-07 23:40:38 -08:00
Robin H. Johnson 44b56bd2f8
catalyst: do not use --purge so we can hit binpkgcache.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2017-12-06 23:01:35 -08:00
Mike Frysinger 1de39bb16d catalyst-auto: use full system hostname by default 2017-03-22 22:14:42 -04:00
Mike Frysinger e98ae4f69e catalyst-auto: add missing local body in send_email 2016-12-21 20:20:03 -05:00
Mike Frysinger ef83c934a8 catalyst-auto: fix return value passing with run_cmd helper 2016-12-21 20:20:03 -05:00
Mike Frysinger e8186ef489 catalyst-auto: rework run_cmd pass through
Make the logfile the first arg so the rest of the args are the command
to actually run.  This allows us to properly quote arguments.
2016-12-21 20:20:03 -05:00
Mike Frysinger 12b23fa07e catalyst-auto: fix quoting in a number of places 2016-12-21 20:20:03 -05:00
Mike Frysinger 6fd55163c0 catalyst-auto: reject unknown command line arguments 2016-12-21 20:20:03 -05:00
Mike Frysinger d56243723a catalyst-auto: drop unused variables 2016-12-21 20:20:02 -05:00
Robin H. Johnson 3a6d81ff2e
catalyst-auto: do not fail if /usr/bin/time is not present.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2016-05-30 09:13:32 -07:00
Robin H. Johnson 380990612e
catalyst-auto: datestamp tmpdir for ease of debug.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2016-05-27 13:43:08 -07:00
Mike Frysinger d97b2662fa catalyst-auto: use local in a few more places 2016-05-23 22:02:22 -04:00
Mike Frysinger b86673c791 catalyst-auto: convert echo -e to printf
Makes the code a bit more robust.
2016-05-23 22:00:31 -04:00
Mike Frysinger d4e6ae0019 convert GITDIR over to REPO_DIR
The variables were representing the same thing, so merge them.
2016-05-19 22:17:41 -04:00
Mike Frysinger 170331ecea catalyst-auto: automatically calculate REPO_DIR
Rather than hardcode it to a path that works on only a few systems,
switch it to the dynamic calculation like we use for GITDIR.
2016-05-19 22:16:14 -04:00
Mike Frysinger 1294da6932 catalyst-auto: try to fix syntax error in previous commits 2016-05-07 16:04:33 -04:00
Robin H. Johnson 56e7e887ec
catalyst-auto: fix whitespace.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2016-05-06 11:30:25 -07:00
Jorge Manuel B. S. Vicetto (jmbsvicetto) bac6e3a2d7 Move the code to update symlinks to a separate function, call it from pre_build and after each set build.
Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto) <jmbsvicetto@gentoo.org>
2016-05-05 10:07:20 +00:00
Robin H. Johnson a77a4ebce5
catalyst-auto: Record how long the catalyst runs take.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2016-04-29 11:20:28 -07:00
Jorge Manuel B. S. Vicetto (jmbsvicetto) 67beeebbdf Stop using hardcoded paths for the releng repo.
Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto) <jmbsvicetto@gentoo.org>
2016-04-26 22:27:56 +00:00
Mike Frysinger 08a69c4392 catalyst-auto: move default email settings to main script 2016-03-27 01:31:30 -04:00
Mike Frysinger bc16472a15 catalyst-auto: allow configs to set BUILD_SRCDIR_BASE
At least the amd64/x86 ones do this via ../config/build.env files.
2016-03-24 01:25:28 -04:00
Mike Frysinger 51b8860d23 catalyst-auto: add an option to hold a lock while running
This makes it easy to put into a cronjob and not worry about a copy
already/still running.
2016-03-23 14:20:52 -04:00
Mike Frysinger fdc39e249c catalyst-auto: minor word smithing 2016-03-22 12:46:36 -04:00
Mike Frysinger f34a62d0ab catalyst-auto: add a time delay option
We usually run catalyst on systems via cronjob, and do so at weekly
(or so) intervals.  But if a failure hits a run, it will be a while
before we know if changes fixed the situation.  Instead, let's push
the delay logic into the script itself so we can run this tool once
a day.  When it passes, it will take care of quitting early.  When
it fails, it will retry once a day until it passes.
2016-03-21 01:34:12 -04:00
Mike Frysinger 880a1aa775 catalyst-auto: add a preclean option to trim temp files
This makes it easier to cronjob things w/out needing manual cleanup
from time to time by people.
2016-03-21 01:27:34 -04:00
Mike Frysinger a85f4327c6 catalyst-auto: unify catalyst.conf parsing 2016-03-21 01:21:05 -04:00
Mike Frysinger 6a2361a8ea make portage_confdir location dynamic
Don't hardcode /root/ or /release/ paths to the releng git checkout.
Use the active git repo as the base path instead.
2016-03-20 16:14:42 -04:00
Robin H. Johnson 9b18c9796e
tools/catalyst-auto: Allow multiple config files, for host-specific overrides.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2016-01-25 23:17:34 -08:00
Jorge Manuel B. S. Vicetto (jmbsvicetto) 4ed90e5bb5 Update sed to match snapshot version.
Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto) <jmbsvicetto@gentoo.org>
2015-12-27 02:44:04 +00:00
Mike Frysinger a05155c18b catalyst-auto: set up a default GITDIR for scripts
Rather than hardcode system-specific paths, let catalyst-auto probe
the current git dir based on its script name.
2014-09-10 15:58:54 -04:00
Mike Frysinger 187e786116 catalyst-auto: automatically use uts/ipc/pid namespaces
If the system can support them, throw the build process into various
namespaces to further isolate ourselves from the host system.
2014-09-10 15:54:16 -04:00
Mike Frysinger dbacb3edd6 catalyst-auto: construct tempdir with mktemp rather than pid
This way we can sanely use pid namespaces without tempdirs clashing.
2014-09-10 15:52:48 -04:00
Mike Frysinger 9133fc879c catalyst-auto: clean up usage a bit 2014-09-10 15:51:20 -04:00
Guy Martin d203cfd8ba tools/catalyst-auto: Set pipefail to catch failure in verbose mode as well. 2014-04-15 13:07:03 +02:00
Mike Frysinger 509986231a catalyst-auto: run in a mount namespace
This way if things crash, we don't leak mounts that need cleaning up.
2014-02-24 02:49:49 -05:00
Raúl Porcel c569225fea Set to /tmp if isn't set 2013-01-02 11:03:19 +00:00
Jorge Manuel B. S. Vicetto (jmbsvicetto) f42a40df9a Move hardcoded paths out of the script files. 2012-10-13 04:06:36 +00:00
Jorge Manuel B. S. Vicetto (jmbsvicetto) 104107c2b0 Create catalyst temp dirs, including logs, under /release path instead of using system /tmp. 2012-10-11 06:08:14 +00:00
Jorge Manuel B. S. Vicetto (jmbsvicetto) e38dced51f Update catalyst tools to use git for amd64 and x86. 2012-02-13 00:10:01 -01:00