[Tarantool-patches] [PATCH 2/3] github-ci: add init option for containers

Alexander V. Tikhonov avtikhon at tarantool.org
Tue Dec 29 21:32:32 MSK 2020


Hi Artem, thanks for the patch, as I see no new degradation found in
gitlab-ci testing commit criteria pipeline [1], also it helped to fix
issues in github-ci testing, patch LGTM.

[1] - https://gitlab.com/tarantool/tarantool/-/pipelines/235528929

On Tue, Dec 29, 2020 at 07:25:34PM +0300, Artem Starshov via Tarantool-patches wrote:
> From: Alexander Turenko <alexander.turenko at tarantool.org>
> 
> Now we have a PID 1 zombie reaping problem, when zombie
> processes launched in Docker aren't collected by init,
> how it would be done if we launch it on Unix.
> 
> It is fixed by adding --init option, when image launched.
> 
> Co-authored-by: Artem Starshov <artemreyt at tarantool.org>
> ---
>  .github/workflows/coverity.yml             | 6 +++++-
>  .github/workflows/debian_11.yml            | 1 +
>  .github/workflows/debug_coverage.yml       | 6 +++++-
>  .github/workflows/luacheck.yml             | 6 +++++-
>  .github/workflows/release.yml              | 6 +++++-
>  .github/workflows/release_asan_clang11.yml | 6 +++++-
>  .github/workflows/release_clang.yml        | 6 +++++-
>  .github/workflows/release_lto.yml          | 6 +++++-
>  .github/workflows/release_lto_clang11.yml  | 6 +++++-
>  9 files changed, 41 insertions(+), 8 deletions(-)
> 
> diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml
> index c8f370033..a265b3dab 100644
> --- a/.github/workflows/coverity.yml
> +++ b/.github/workflows/coverity.yml
> @@ -22,7 +22,11 @@ jobs:
>      # Image built by .gitlab.mk instructions and targets from .travis.mk.
>      # Also additional installation of coverity tool installation check
>      # exists in target deps_coverity_debian at .travis.mk file.
> -    container: docker.io/tarantool/testing:debian-buster
> +    container:
> +      image: docker.io/tarantool/testing:debian-buster
> +      # We lean on reaping processes by the init process (PID 1)
> +      # in tests.
> +      options: '--init'
>  
>      steps:
>        - uses: actions/checkout at v1
> diff --git a/.github/workflows/debian_11.yml b/.github/workflows/debian_11.yml
> index 06008c231..84db2644d 100644
> --- a/.github/workflows/debian_11.yml
> +++ b/.github/workflows/debian_11.yml
> @@ -24,6 +24,7 @@ jobs:
>            submodules: recursive
>        - name: packaging
>          env:
> +          PACKPACK_EXTRA_DOCKER_RUN_PARAMS: '--init'
>            AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
>            AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
>            AWS_S3_ENDPOINT_URL: ${{ secrets.AWS_S3_ENDPOINT_URL }}
> diff --git a/.github/workflows/debug_coverage.yml b/.github/workflows/debug_coverage.yml
> index e671484d7..6787a2e91 100644
> --- a/.github/workflows/debug_coverage.yml
> +++ b/.github/workflows/debug_coverage.yml
> @@ -18,7 +18,11 @@ jobs:
>        fail-fast: false
>  
>      # image built by .gitlab.mk instructions and targets from .travis.mk
> -    container: docker.io/tarantool/testing:debian-stretch
> +    container:
> +      image: docker.io/tarantool/testing:debian-stretch
> +      # We lean on reaping processes by the init process (PID 1)
> +      # in tests.
> +      options: '--init'
>  
>      steps:
>        - uses: actions/checkout at v1
> diff --git a/.github/workflows/luacheck.yml b/.github/workflows/luacheck.yml
> index 0a5af13b3..511265466 100644
> --- a/.github/workflows/luacheck.yml
> +++ b/.github/workflows/luacheck.yml
> @@ -18,7 +18,11 @@ jobs:
>        fail-fast: false
>  
>      # image built by .gitlab.mk instructions and targets from .travis.mk
> -    container: docker.io/tarantool/testing:debian-stretch
> +    container:
> +      image: docker.io/tarantool/testing:debian-stretch
> +      # We lean on reaping processes by the init process (PID 1)
> +      # in tests.
> +      options: '--init'
>  
>      steps:
>        - uses: actions/checkout at v1
> diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
> index ebd85cba3..b6fea6dbc 100644
> --- a/.github/workflows/release.yml
> +++ b/.github/workflows/release.yml
> @@ -18,7 +18,11 @@ jobs:
>        fail-fast: false
>  
>      # image built by .gitlab.mk instructions and targets from .travis.mk
> -    container: docker.io/tarantool/testing:debian-stretch
> +    container:
> +      image: docker.io/tarantool/testing:debian-stretch
> +      # We lean on reaping processes by the init process (PID 1)
> +      # in tests.
> +      options: '--init'
>  
>      steps:
>        - uses: actions/checkout at v1
> diff --git a/.github/workflows/release_asan_clang11.yml b/.github/workflows/release_asan_clang11.yml
> index a3885bc27..346f9f0ee 100644
> --- a/.github/workflows/release_asan_clang11.yml
> +++ b/.github/workflows/release_asan_clang11.yml
> @@ -18,7 +18,11 @@ jobs:
>        fail-fast: false
>  
>      # image built by .gitlab.mk instructions and targets from .travis.mk
> -    container: docker.io/tarantool/testing:debian-buster
> +    container:
> +      image: docker.io/tarantool/testing:debian-buster
> +      # We lean on reaping processes by the init process (PID 1)
> +      # in tests.
> +      options: '--init'
>  
>      steps:
>        - uses: actions/checkout at v2.3.4
> diff --git a/.github/workflows/release_clang.yml b/.github/workflows/release_clang.yml
> index a94c8840a..42decd5da 100644
> --- a/.github/workflows/release_clang.yml
> +++ b/.github/workflows/release_clang.yml
> @@ -18,7 +18,11 @@ jobs:
>        fail-fast: false
>  
>      # image built by .gitlab.mk instructions and targets from .travis.mk
> -    container: docker.io/tarantool/testing:debian-stretch
> +    container:
> +      image: docker.io/tarantool/testing:debian-stretch
> +      # We lean on reaping processes by the init process (PID 1)
> +      # in tests.
> +      options: '--init'
>  
>      steps:
>        - uses: actions/checkout at v1
> diff --git a/.github/workflows/release_lto.yml b/.github/workflows/release_lto.yml
> index c9905f226..526f19974 100644
> --- a/.github/workflows/release_lto.yml
> +++ b/.github/workflows/release_lto.yml
> @@ -18,7 +18,11 @@ jobs:
>        fail-fast: false
>  
>      # image built by .gitlab.mk instructions and targets from .travis.mk
> -    container: docker.io/tarantool/testing:debian-buster
> +    container:
> +      image: docker.io/tarantool/testing:debian-buster
> +      # We lean on reaping processes by the init process (PID 1)
> +      # in tests.
> +      options: '--init'
>  
>      steps:
>        - uses: actions/checkout at v2.3.4
> diff --git a/.github/workflows/release_lto_clang11.yml b/.github/workflows/release_lto_clang11.yml
> index d57b15f3a..4a10712de 100644
> --- a/.github/workflows/release_lto_clang11.yml
> +++ b/.github/workflows/release_lto_clang11.yml
> @@ -18,7 +18,11 @@ jobs:
>        fail-fast: false
>  
>      # image built by .gitlab.mk instructions and targets from .travis.mk
> -    container: docker.io/tarantool/testing:debian-buster
> +    container:
> +      image: docker.io/tarantool/testing:debian-buster
> +      # We lean on reaping processes by the init process (PID 1)
> +      # in tests.
> +      options: '--init'
>  
>      steps:
>        - uses: actions/checkout at v2.3.4
> -- 
> 2.28.0
> 


More information about the Tarantool-patches mailing list