Commit Graph

18 Commits

Author SHA1 Message Date
Thomas Orozco a2de1a79f2 Build i386 binary
Fixes https://github.com/krallin/tini/issues/30
2017-01-28 15:24:05 +01:00
Thomas Orozco c8cc8274b8 ARM Cross Builds
- Upgrade to Trusty for the ARM 64 toolchain.
- Cross-compile to ARM.
- Label binaries and packages when releasing.
2016-10-30 15:55:56 +01:00
Thomas Orozco be71d120e7 Embed license and add -l flag to show it
This adds 1k of weight to the resulting binary, which is reasonable
(it's less than 5% for the smaller non-static binary), but alleviates
legitimate user concern that the license requires being included when
Tini is redistributed.
2016-08-10 08:50:47 +02:00
Thomas Orozco 44b5675f0e Sign `tini` and `tini-static` binaries
The GPG signing subkey and passphrase are respectively provided through
a Travis encrypted file and a Travis encrypted environment variable.

Signing is only done if there is a signing key present when the build is
complete (so as to not fail when e.g. building a PR that doesn't have
encrypted files available).
2016-01-26 21:56:43 -05:00
Thomas Orozco 2b5b0ecb6e Add tests for hardening in CI script
This ensures that _FORTIFY_SOURCE is actually used!
2015-11-05 11:19:36 +01:00
Thomas Orozco a0bf435d2f Test that Tini restores signal configuration
Tini ignores certain signals, and blocks others, but in both cases
we restore them before executing the child process.

Add tests to ensure that we actually do that!
2015-10-31 15:31:57 +01:00
Thomas Orozco 1dc66f81eb Accelerate local builds by caching psutil, prctl 2015-09-01 21:17:10 +02:00
Thomas Orozco 1a863f8366 Run some functional tests in ci/run_build.sh
Using the child subreaper mechanism, we can actually run
tests inside the CI environment without depending on Docker.

While this does not replace the existing tests, it allows
at least some functional coverage within CI.
2015-07-05 14:25:21 +02:00
Thomas Orozco 12749881e0 Workaround to ensure compatibility with older CMake
Travis uses Ubuntu Precise, which has CMake 3.8. That version does not
have support for excluding /usr and /usr/bin from the %files% list
(which results in a package that conflicts with the filesystem package
and fails to install).

This commit:

+ Builds on Precise instead of Trusty
+ Adds install tests
2015-05-04 22:24:01 +02:00
Thomas Orozco 178f46aa01 Convert to out-of-tree builds 2015-03-15 18:46:13 +01:00
Thomas Orozco 699c3aadf2 Remove the static build for now
The static build doesn't build with clang, and its usefulness is dubious
for the time being considering the only requirement is glibc.
2015-03-15 16:56:12 +01:00
Thomas Orozco ec36a858db Add travis / ci build script 2015-03-15 16:12:45 +01:00
Thomas Orozco 296a29e3da Convert to CMake 2015-03-15 14:21:03 +01:00
Thomas Orozco 5b7d66bfe3 Add a valgind test 2015-03-01 11:03:48 -05:00
Thomas Orozco c666a4f718 Add version in usage, improve usage 2015-02-28 19:42:36 -05:00
Thomas Orozco 0b3e77da75 Ensure we always build in a clean environment 2015-02-28 19:05:25 -05:00
Thomas Orozco fa8200cc1c Refactor further around functions 2015-02-28 18:11:54 -05:00
Thomas Orozco 191dd0a97f WIP - Split into functions 2015-02-28 10:58:14 -08:00