David Wragg
109019f917
Support for killing the whole child process group
...
tini only kills the immediate child process. This means that if you
do, for example,
docker run krallin/ubuntu-tini sh -c 'sleep 10'
and ctrl-C it, nothing happens: SIGINT is sent to the 'sh' process,
but that shell won't react to it while it is waiting for the 'sleep'
to finish.
This change adds a -g option to put the child process of tini into a
new process group, and sends signals to that group, so that every
process in the group gets a signal. This corresponds more closely to
what happens when you do ctrl-C etc. in a terminal: The signal is sent
to the foreground process group.
So if you try the example above with a container image that passes -g
to tini, the SIGINT will be received by the 'sleep', and the container
promptly exits.
2015-10-26 21:52:06 +01:00
Thomas Orozco
1bfde9c126
Merge pull request #14 from krallin/release-0.7.0
...
Bump version to 0.7.0
2015-10-16 15:42:41 -07:00
Thomas Orozco
e4b6654130
Bump version to 0.7.0
2015-10-16 15:39:14 -07:00
Thomas Orozco
f2e8ed2487
Merge pull request #13 from krallin/better-git-checks
...
Better git checks
2015-10-16 15:38:28 -07:00
Thomas Orozco
7a6105e44d
Add a default for FORCE_SUBREAPER in ddist.sh
...
Usually, we want to have FORCE_SUBREAPER=1.
2015-10-16 15:24:22 -07:00
Thomas Orozco
405eea7941
More robust git version checking
...
- Check the exit code from git log to check if we have a version.
- Add a "-dirty" suffix if the repo is dirty when the build is made.
2015-10-16 15:23:10 -07:00
Thomas Orozco
9b8a8a5764
Bump version to 0.6.0
2015-09-06 15:52:25 +02:00
Thomas Orozco
672c86cd36
Add smoke test in ci build
2015-09-06 15:50:24 +02:00
Thomas Orozco
a285acc616
Merge pull request #7 from krallin/child-subreaper
...
Add child subreaper support
2015-09-06 15:49:05 +02:00
Thomas Orozco
bfa8e0bf03
Update README to mention child subreaping support
2015-09-06 15:38:57 +02:00
Thomas Orozco
5650d29790
Only mention child subreaping if it's available
...
Tini can be built without child subreaper support. The warning message
shouldn't suggest using it if it's not available
2015-09-06 15:37:05 +02:00
Thomas Orozco
4b3075a11d
Add tests for subreaper-less Tini
...
If we're going to make subreaper support an option, we should ensure
that running without subreaper support also works.
2015-09-06 15:29:11 +02:00
Thomas Orozco
fa1f3602a6
Update README (subreaping)
2015-09-01 21:43:02 +02:00
Thomas Orozco
98e4449b36
Add tests for subreaping (and subreaping failures)
2015-09-01 21:17:10 +02:00
Thomas Orozco
e1b463cdf5
Allow subreaping to be controlled with an env var
...
This allows users to enable subreaping even if they aren't the ones
calling Tini.
2015-09-01 21:17:10 +02:00
Thomas Orozco
1dc66f81eb
Accelerate local builds by caching psutil, prctl
2015-09-01 21:17:10 +02:00
Thomas Orozco
376d186b2e
Set default verbosity level to 1
...
This means warnings always show warnings, which is the right thing to do
considering the 2 warnings we show are actually for important
information.
2015-09-01 21:17:10 +02:00
Thomas Orozco
bcb8a4b870
Allow users to enable sub-reaping
...
This allows users that don't control PID 1 in their container to still
use Tini to reap zombies.
2015-09-01 21:17:10 +02:00
Thomas Orozco
98311caf52
Merge pull request #5 from krallin/tests-in-ci
...
Run some functional tests in ci/run_build.sh
2015-07-05 14:36:35 +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
5ed5f227e9
Merge pull request #4 from krallin/tini-static-from-tianon
...
Tini static from @tianon
2015-06-26 22:08:41 +02:00
Thomas Orozco
e9546e0e1a
Bump version to 0.5.0
...
+ `tini-static` is back, thanks to @tianon!
2015-06-26 21:43:53 +02:00
Thomas Orozco
3577da19cf
Adjust tests to support tini-static
...
Valgrind does like statically-linked binaries due to false positives
coming from libc, which are ignord only if Valgrind can tell they're in
libc (which isn't the case when using static linking).
2015-06-26 21:43:53 +02:00
Tianon Gravi
f2229f937e
Bring back tini-static! 🎉
...
This allows the use of `tini` within even more minimal environments (such as images that are `FROM scratch` with a single application binary `COPY`'d in).
2015-06-26 21:43:53 +02:00
Thomas Orozco
1656d47301
Reuse CMAKE_PROJECT_NAME variable
2015-06-26 21:16:56 +02:00
Thomas Orozco
f6f26afc2a
Bump version to 0.4.3
...
+ More packaging changes to facilitate building packages in tini-images
2015-05-05 22:04:50 +02:00
Thomas Orozco
f9dd36c1c0
Don't fail build if logging contents fails
2015-05-05 22:02:19 +02:00
Thomas Orozco
73aabc2a40
Bump version to 0.4.2
...
+ Only packaging changes
2015-05-05 21:24:44 +02:00
Thomas Orozco
363f480520
Merge pull request #2 from krallin/build-debug-rebased
...
Fix `rpmbuild` stub for Travis
2015-05-05 21:23:35 +02:00
Thomas Orozco
22e58b4c59
Log contents of packages for visual audit
2015-05-05 21:21:39 +02:00
Thomas Orozco
75f674edb1
Use absolute path to load stub rpmbuild
...
On Travis, Cmake does not run from the same directory as in our local
build environment. We need to ensure that PATH contains absolute paths
so that Cmake can find our stub rpmbuild.
2015-05-05 21:14:56 +02:00
Thomas Orozco
3764a7f224
Bump to 0.4.1
...
+ Add support for older Cmake to build on Ubuntu Precise (which is what
we have in Travis)
2015-05-04 22:30:10 +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
b7afb24a82
Add notes about autogenerated files
2015-05-04 21:05:21 +02:00
Thomas Orozco
434dd956bd
Bump version to 0.4.0
...
New features:
+ Generate DEB and RPM packages
2015-05-04 21:02:27 +02:00
Thomas Orozco
813c1c52fc
Merge pull request #1 from krallin/build-packages
...
Generate DEB and RPM packages
2015-05-04 21:01:15 +02:00
Thomas Orozco
a1d6372ef6
Generate DEB and RPM packages
2015-05-04 20:59:17 +02:00
Thomas Orozco
d7727acdca
Fix typo in LICENSE
2015-05-04 20:44:32 +02:00
Thomas Orozco
a417b59f1a
Ensure ${} isn't eaten by CMake
2015-04-05 18:02:52 +02:00
Thomas Orozco
1eb56cc7f9
Add link to tini-images repo
2015-04-04 19:23:44 +02:00
Thomas Orozco
556948c48e
Update README for v0.3.4
2015-04-04 19:02:14 +02:00
Thomas Orozco
7567a81585
Bump version to 0.3.4
2015-04-04 18:41:39 +02:00
Thomas Orozco
c5a49cf4d6
Specify language in CMakeLists
2015-04-04 17:55:39 +02:00
Thomas Orozco
04c650339e
Add install rule in cmake
2015-04-04 16:07:33 +02:00
Thomas Orozco
1c52aee22c
Use const in spawn, remove redundant ()
2015-04-04 15:47:49 +02:00
Thomas Orozco
f3c3b1ec14
Bump to 0.3.3
...
Only packaging changes
2015-03-15 18:48:17 +01:00
Thomas Orozco
cf37f5a7f0
Include travis status image
2015-03-15 18:47:06 +01:00
Thomas Orozco
178f46aa01
Convert to out-of-tree builds
2015-03-15 18:46:13 +01:00
Thomas Orozco
84475c399b
Simplify build script
...
Binaries are now pushed by Travis, we don't need to copy them anymore.
2015-03-15 17:51:51 +01:00
Thomas Orozco
5bba1c35e5
Move code into ./src
2015-03-15 17:50:19 +01:00