You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildstream.apache.org by no...@apache.org on 2020/12/29 12:26:27 UTC

[buildstream] branch chandan/testpy38 created (now f0ac72d)

This is an automated email from the ASF dual-hosted git repository.

not-in-ldap pushed a change to branch chandan/testpy38
in repository https://gitbox.apache.org/repos/asf/buildstream.git.


      at f0ac72d  TEST

This branch includes the following new commits:

     new b67b246  tox.ini: Add python3.8 to default environment list
     new 0a9a9c2  .gitlab-ci.yml: Add test environment for Python 3.8
     new 0555042  WIP: Enforce SafeChildWatcher
     new f0ac72d  TEST

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[buildstream] 01/04: tox.ini: Add python3.8 to default environment list

Posted by no...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

not-in-ldap pushed a commit to branch chandan/testpy38
in repository https://gitbox.apache.org/repos/asf/buildstream.git

commit b67b246b87371ba984b48f67924af2a211ec39a7
Author: Chandan Singh <cs...@bloomberg.net>
AuthorDate: Wed Oct 16 16:53:25 2019 +0100

    tox.ini: Add python3.8 to default environment list
---
 tox.ini | 34 +++++++++++++++++-----------------
 1 file changed, 17 insertions(+), 17 deletions(-)

diff --git a/tox.ini b/tox.ini
index 62737b0..8569708 100644
--- a/tox.ini
+++ b/tox.ini
@@ -2,7 +2,7 @@
 # Tox global configuration
 #
 [tox]
-envlist = py{35,36,37}
+envlist = py{35,36,37,38}
 skip_missing_interpreters = true
 isolated_build = true
 
@@ -14,22 +14,22 @@ isolated_build = true
 [testenv]
 usedevelop =
     # This is required by Cython in order to get coverage for cython files.
-    py{35,36,37}-!nocover: True
+    py{35,36,37,38}-!nocover: True
 
 commands =
     # Running with coverage reporting enabled
-    py{35,36,37}-!external-!nocover: pytest --basetemp {envtmpdir} --cov=buildstream --cov-config .coveragerc {posargs}
-    py{35,36,37}-!nocover: mkdir -p .coverage-reports
+    py{35,36,37,38}-!external-!nocover: pytest --basetemp {envtmpdir} --cov=buildstream --cov-config .coveragerc {posargs}
+    py{35,36,37,38}-!nocover: mkdir -p .coverage-reports
     external-!nocover: {envpython} {toxinidir}/tests/external_plugins.py {envtmpdir} --cov=buildstream --cov-append {posargs}
-    py{35,36,37}-!external-!nocover: mv {envtmpdir}/.coverage {toxinidir}/.coverage-reports/.coverage.{env:COVERAGE_PREFIX:}{envname}
-    py{35,36,37}-external-!nocover: - mv {envtmpdir}/.coverage {toxinidir}/.coverage-reports/.coverage.{env:COVERAGE_PREFIX:}{envname}
+    py{35,36,37,38}-!external-!nocover: mv {envtmpdir}/.coverage {toxinidir}/.coverage-reports/.coverage.{env:COVERAGE_PREFIX:}{envname}
+    py{35,36,37,38}-external-!nocover: - mv {envtmpdir}/.coverage {toxinidir}/.coverage-reports/.coverage.{env:COVERAGE_PREFIX:}{envname}
     # Running with coverage reporting disabled
-    py{35,36,37}-!external-nocover: pytest --basetemp {envtmpdir} {posargs}
+    py{35,36,37,38}-!external-nocover: pytest --basetemp {envtmpdir} {posargs}
     external-nocover: {envpython} {toxinidir}/tests/external_plugins.py {envtmpdir} {posargs}
 deps =
-    py{35,36,37}: -rrequirements/requirements.txt
-    py{35,36,37}: -rrequirements/dev-requirements.txt
-    py{35,36,37}: -rrequirements/plugin-requirements.txt
+    py{35,36,37,38}: -rrequirements/requirements.txt
+    py{35,36,37,38}: -rrequirements/dev-requirements.txt
+    py{35,36,37,38}: -rrequirements/plugin-requirements.txt
     git+https://gitlab.com/BuildStream/bst-plugins-experimental.git@5b004e5850ab0e987c00c681b2c768f6ae02586b
 
     # Only require coverage and pytest-cov when using it
@@ -58,17 +58,17 @@ passenv =
 # These keys are not inherited by any other sections
 #
 setenv =
-    py{35,36,37}: COVERAGE_FILE = {envtmpdir}/.coverage
-    py{35,36,37}: BST_TEST_HOME = {envtmpdir}
-    py{35,36,37}: BST_TEST_XDG_CACHE_HOME = {envtmpdir}/cache
-    py{35,36,37}: BST_TEST_XDG_CONFIG_HOME = {envtmpdir}/config
-    py{35,36,37}: BST_TEST_XDG_DATA_HOME = {envtmpdir}/share
+    py{35,36,37,38}: COVERAGE_FILE = {envtmpdir}/.coverage
+    py{35,36,37,38}: BST_TEST_HOME = {envtmpdir}
+    py{35,36,37,38}: BST_TEST_XDG_CACHE_HOME = {envtmpdir}/cache
+    py{35,36,37,38}: BST_TEST_XDG_CONFIG_HOME = {envtmpdir}/config
+    py{35,36,37,38}: BST_TEST_XDG_DATA_HOME = {envtmpdir}/share
     # This is required to get coverage for Cython
-    py{35,36,37}-!nocover: BST_CYTHON_TRACE = 1
+    py{35,36,37,38}-!nocover: BST_CYTHON_TRACE = 1
     randomized: PYTEST_ADDOPTS="--random-order-bucket=global"
 
 whitelist_externals =
-    py{35,36,37}:
+    py{35,36,37,38}:
         mv
         mkdir
 


[buildstream] 02/04: .gitlab-ci.yml: Add test environment for Python 3.8

Posted by no...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

not-in-ldap pushed a commit to branch chandan/testpy38
in repository https://gitbox.apache.org/repos/asf/buildstream.git

commit 0a9a9c2b2837968dee09e7ab6519200f146db612
Author: Chandan Singh <cs...@bloomberg.net>
AuthorDate: Wed Oct 16 16:55:28 2019 +0100

    .gitlab-ci.yml: Add test environment for Python 3.8
---
 .gitlab-ci.yml | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 1fe2581..1c605bd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -88,6 +88,12 @@ tests-centos-7.6:
   <<: *tests
   image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-centos:7.6.1810-${DOCKER_IMAGE_VERSION}
 
+tests-python-3.8-buster:
+  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-python:3.8-buster-chandan-python3-8-89265968
+  <<: *tests
+  variables:
+    TOXENV: py38
+
 overnight-fedora-30-aarch64:
   image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:aarch64-30-${DOCKER_IMAGE_VERSION}
   tags:


[buildstream] 04/04: TEST

Posted by no...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

not-in-ldap pushed a commit to branch chandan/testpy38
in repository https://gitbox.apache.org/repos/asf/buildstream.git

commit f0ac72de49210741d785227d23fd5e0db0515a5b
Author: Chandan Singh <cs...@bloomberg.net>
AuthorDate: Mon Dec 23 16:39:22 2019 +0000

    TEST
---
 .gitlab-ci.yml | 455 +--------------------------------------------------------
 1 file changed, 4 insertions(+), 451 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 1c605bd..e4a9a7f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,19 +1,5 @@
-include:
-  - template: Code-Quality.gitlab-ci.yml
-  - template: License-Management.gitlab-ci.yml
-  - template: SAST.gitlab-ci.yml
-
-image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:10-${DOCKER_IMAGE_VERSION}
-
-cache:
-  key: "$CI_JOB_NAME-"
-  paths:
-    - cache/
-
 stages:
   - test
-  - post
-  - publish
 
 variables:
   # SAST related variables
@@ -24,12 +10,11 @@ variables:
   # Our own variables
   # Version of the docker images we should use for all the images.
   # This is taken from buildstream/buildstream-docker-images
-  DOCKER_IMAGE_VERSION: master-103717922
+  DOCKER_IMAGE_VERSION: master-105004115
   PYTEST_ADDOPTS: "--color=yes"
   INTEGRATION_CACHE: "${CI_PROJECT_DIR}/cache/integration-cache"
   PYTEST_ARGS: "--color=yes --integration -n 2"
-  TEST_COMMAND: "tox -- ${PYTEST_ARGS}"
-  EXTERNAL_TESTS_COMMAND: "tox -e py35-external,py36-external,py37-external -- ${PYTEST_ARGS}"
+  TEST_COMMAND: "tox -e py38-nocover --develop -- ${PYTEST_ARGS}"
   COVERAGE_PREFIX: "${CI_JOB_NAME}."
 
 
@@ -55,7 +40,6 @@ variables:
 
   # Run the tests as a simple user to test for permission issues
   - su buildstream -c "${TEST_COMMAND}"
-  - su buildstream -c "${EXTERNAL_TESTS_COMMAND}"
 
   after_script:
   except:
@@ -64,437 +48,6 @@ variables:
     paths:
     - .coverage-reports
 
-tests-debian-9:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:9-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-
-tests-debian-10:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:10-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-
-tests-fedora-30:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-
-tests-fedora-31:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-
-tests-ubuntu-18.04:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-ubuntu:18.04-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-
-tests-centos-7.6:
-  <<: *tests
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-centos:7.6.1810-${DOCKER_IMAGE_VERSION}
-
-tests-python-3.8-buster:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-python:3.8-buster-chandan-python3-8-89265968
-  <<: *tests
-  variables:
-    TOXENV: py38
-
-overnight-fedora-30-aarch64:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:aarch64-30-${DOCKER_IMAGE_VERSION}
-  tags:
-    - aarch64
-  <<: *tests
-  # We need to override the exclusion from the template
-  # in order to run on schedules
-  except: []
-  only:
-  - schedules
-
-tests-unix:
-  # Use fedora here, to a) run a test on fedora and b) ensure that we
-  # can get rid of ostree - this is not possible with debian-8
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-  variables:
-    BST_FORCE_SANDBOX: "chroot"
-
-  script:
-
-    # We remove the Bubblewrap and OSTree packages here so that we catch any
-    # codepaths that try to use them. Removing OSTree causes fuse-libs to
-    # disappear unless we mark it as user-installed.
-    - dnf mark install fuse-libs systemd-udev
-    - dnf erase -y bubblewrap ostree
-
-    # Since the unix platform is required to run as root, no user change required
-    - ${TEST_COMMAND}
-
-tests-buildbox-run:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-  variables:
-    BST_FORCE_SANDBOX: "buildbox-run"
-
-tests-userchroot:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-  variables:
-    BST_FORCE_SANDBOX: "buildbox-run"
-    BST_CAS_STAGING_ROOT: "/builds/userchroot"
-
-  script:
-    - mkdir -p "${INTEGRATION_CACHE}"
-    - useradd -Um buildstream
-
-    # Use buildbox-run-userchroot and hardlinking
-    - ln -svf buildbox-run-userchroot /usr/local/bin/buildbox-run
-    - rm -vf /usr/local/bin/buildbox-fuse
-
-    # When using userchroot, buildbox-casd must run as a separate user
-    - useradd -g buildstream buildbox-casd
-    - chown buildbox-casd:buildstream /usr/local/bin/buildbox-casd
-    - chmod u+s /usr/local/bin/buildbox-casd
-
-    # Set up staging root with permissions required by userchroot,
-    # must be on same filesystem as current directory to support hardlinks
-    - mkdir -p "${BST_CAS_STAGING_ROOT}"
-    - chown -R buildbox-casd:buildstream "${BST_CAS_STAGING_ROOT}"
-    # userchroot doesn't allow group/world-writable base directory
-    - chmod go-w /builds
-    - echo buildbox-casd:${BST_CAS_STAGING_ROOT} > /etc/userchroot.conf
-
-    - chown -R buildstream:buildstream .
-
-    # Run the tests as a simple user to test for permission issues
-    - su buildstream -c "umask 002 && ${TEST_COMMAND}"
-    - su buildstream -c "umask 002 && ${EXTERNAL_TESTS_COMMAND}"
-
-tests-fedora-missing-deps:
-  # Ensure that tests behave nicely while missing bwrap and ostree
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
+tests-py38:
+  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-python:3.8-buster-${DOCKER_IMAGE_VERSION}
   <<: *tests
-
-  script:
-    # We remove the Bubblewrap and OSTree packages here so that we catch any
-    # codepaths that try to use them. Removing OSTree causes fuse-libs to
-    # disappear unless we mark it as user-installed.
-    - dnf mark install fuse-libs systemd-udev
-    - dnf erase -y bubblewrap ostree
-
-    - useradd -Um buildstream
-    - chown -R buildstream:buildstream .
-
-    - ${TEST_COMMAND}
-
-tests-fedora-update-deps:
-  # Check if the tests pass after updating requirements to their latest
-  # allowed version.
-  allow_failure: true
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-
-  script:
-    - useradd -Um buildstream
-    - chown -R buildstream:buildstream .
-
-    - make --always-make --directory requirements
-    - cat requirements/*.txt
-
-    - su buildstream -c "${TEST_COMMAND}"
-
-tests-remote-execution:
-  allow_failure: true
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-  before_script:
-    - dnf install -y docker docker-compose
-    - docker-compose --file ${COMPOSE_MANIFEST} up --detach
-  after_script:
-    - docker-compose --file ${COMPOSE_MANIFEST} stop
-    - docker-compose --file ${COMPOSE_MANIFEST} logs
-    - docker-compose --file ${COMPOSE_MANIFEST} down
-  services:
-    - docker:stable-dind
-  variables:
-    DOCKER_HOST: tcp://docker:2375
-    DOCKER_DRIVER: overlay2
-    # Required to be able to connect to the docker daemon. See https://gitlab.com/gitlab-org/gitlab-runner/issues/4501
-    DOCKER_TLS_CERTDIR: ""
-    COMPOSE_MANIFEST: .gitlab-ci/buildgrid-compose.yml
-    ARTIFACT_CACHE_SERVICE: http://docker:50052
-    REMOTE_EXECUTION_SERVICE: http://docker:50051
-    SOURCE_CACHE_SERVICE: http://docker:50052
-    PYTEST_ARGS: "--color=yes --remote-execution"
-
-tests-spawn-multiprocessing-start-method:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
-  <<: *tests
-  variables:
-    BST_FORCE_START_METHOD: "spawn"
-  script:
-    # FIXME: Until all the tests pass as normal, override which tests will run here.
-    - mkdir -p "${INTEGRATION_CACHE}"
-    - useradd -Um buildstream
-    - chown -R buildstream:buildstream .
-    - su buildstream -c "tox -- ${PYTEST_ARGS} tests/{artifactcache,cachekey,elements,format,frontend,internals,plugins,sourcecache}"
-
-# Run type checkers
-mypy:
-  stage: test
-
-  script:
-  - tox -e mypy
-  except:
-  - schedules
-
-# Lint separately from testing
-lint:
-  # We can't use the default debian:9 based image here since that comes with
-  # Python 3.5, and Black requires Python >= 3.6.
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
-  stage: test
-
-  before_script:
-  # Diagnostics
-  - python3 --version
-
-  script:
-  - tox -e format-check,lint
-  except:
-  - schedules
-
-# Catch regressions in native windows support
-tests-win32-master:
-  stage: test
-  variables:
-    LC_ALL: C.UTF-8
-    LANG: C.UTF-8
-  tags:
-  - win32
-  script:
-  - tox -e win32
-  only:
-  - master
-
-# Optional test to catch regressions in native windows support on non-master branches
-tests-win32-non-master:
-  stage: test
-  variables:
-    LC_ALL: C.UTF-8
-    LANG: C.UTF-8
-  tags:
-  - win32
-  script:
-  - tox -e win32
-  except:
-  - master
-  when: manual
-
-tests-wsl-master:
-  stage: test
-  variables:
-    LC_ALL: C.UTF-8
-    LANG: C.UTF-8
-  tags:
-  - wsl
-  before_script:
-  - mount
-  - df -h
-  - PATH=/root/.local/bin:$PATH tox --version
-  script:
-  # Install static buildbox-casd binary
-  - wget https://buildbox-casd-binaries.nyc3.cdn.digitaloceanspaces.com/buildbox-casd-x86_64-linux-20191104-598100dd.tar.xz
-  - tar -C /root/.local/bin -xf buildbox-casd-x86_64-linux-20191104-598100dd.tar.xz
-
-  - PATH=/root/.local/bin:$PATH ${TEST_COMMAND}
-  only:
-  - master
-
-tests-wsl-non-master:
-  stage: test
-  variables:
-    LC_ALL: C.UTF-8
-    LANG: C.UTF-8
-  tags:
-  - wsl
-  before_script:
-  - mount
-  - df -h
-  - PATH=/root/.local/bin:$PATH tox --version
-  script:
-  # Install static buildbox-casd binary
-  - wget https://buildbox-casd-binaries.nyc3.cdn.digitaloceanspaces.com/buildbox-casd-x86_64-linux-20191104-598100dd.tar.xz
-  - tar -C /root/.local/bin -xf buildbox-casd-x86_64-linux-20191104-598100dd.tar.xz
-
-  - PATH=/root/.local/bin:$PATH ${TEST_COMMAND}
-  when: manual
-  except:
-  - master
-
-# Automatically build documentation for every commit, we want to know
-# if building documentation fails even if we're not deploying it.
-docs:
-  stage: test
-  variables:
-    BST_FORCE_SESSION_REBUILD: 1
-  script:
-  - env BST_SOURCE_CACHE="$(pwd)/cache/integration-cache/sources" tox -e docs
-  - mv doc/build/html public
-  except:
-  - schedules
-  artifacts:
-    paths:
-    - public/
-
-.overnight-tests: &overnight-tests-template
-  stage: test
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-${DOCKER_IMAGE_VERSION}
-  variables:
-    BST_EXT_URL: git+https://gitlab.com/BuildStream/bst-plugins-experimental.git
-    BST_EXT_REF: 0.12.0-173-gbe5ac19#egg=bst_plugins_experimental[ostree,cargo]
-    FD_SDK_REF: freedesktop-sdk-19.08.5-buildstream2-0-g22588e2f41acecbcfc555942eb3086296bc14c6c
-  before_script:
-  - |
-    mkdir -p "${HOME}/.config"
-    cat <<EOF >"${HOME}/.config/buildstream.conf"
-    scheduler:
-      fetchers: 2
-    EOF
-  - dnf install -y ostree python3-gobject-base
-  - pip3 install -r requirements/requirements.txt -r requirements/plugin-requirements.txt
-  - pip3 wheel --wheel-dir wheels/ --no-deps .
-  - pip3 install --no-index wheels/*
-  - pip3 install --user -e ${BST_EXT_URL}@${BST_EXT_REF}
-  - git clone https://gitlab.com/freedesktop-sdk/freedesktop-sdk.git
-  - git -C freedesktop-sdk checkout ${FD_SDK_REF}
-  artifacts:
-    paths:
-    - "${HOME}/.cache/buildstream/logs"
-  only:
-  - schedules
-
-overnight-tests:
-  <<: *overnight-tests-template
-  script:
-  - make -C freedesktop-sdk
-  tags:
-  - overnight-tests
-
-overnight-tests-no-cache:
-  <<: *overnight-tests-template
-  script:
-  - sed -i '/artifacts:/,+1 d' freedesktop-sdk/project.conf
-  - make -C freedesktop-sdk
-  tags:
-  - overnight-tests
-
-# These tests might be a bit more flaky since they randomize the order
-# They will also take longer to run. Hence run them only nightly
-overnight-randomized:
-  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:31-master-97748867
-  <<: *tests
-
-  script:
-  - mkdir -p "${INTEGRATION_CACHE}"
-  - useradd -Um buildstream
-  - chown -R buildstream:buildstream .
-
-  # Don't run tests multiprocessed here, the randomized order doesn't like that
-  - su buildstream -c "tox -e py35-randomized,py36-randomized,py37-randomized -- --color=yes --integration"
-  - su buildstream -c "tox -e py35-randomized,py36-randomized,py37-randomized-external -- --color=yes --integration"
-
-  # We need to override the exclusion from the template in order to run on schedules
-  except: []
-  only:
-  - schedules
-
-#####################################################
-#                    Post stage                     #
-#####################################################
-
-analysis:
-  stage: post
-  script:
-  - |
-    pip3 install radon
-    mkdir analysis
-
-  - |
-    echo "Calculating Maintainability Index"
-    radon mi -s -j src/buildstream > analysis/mi.json
-    radon mi -s src/buildstream
-
-  - |
-    echo "Calculating Cyclomatic Complexity"
-    radon cc -a -s -j src/buildstream > analysis/cc.json
-    radon cc -a -s src/buildstream
-
-  - |
-    echo "Calculating Raw Metrics"
-    radon raw -s -j src/buildstream > analysis/raw.json
-    radon raw -s src/buildstream
-
-  except:
-  - schedules
-  artifacts:
-    paths:
-    - analysis/
-
-# Collate coverage reports
-#
-coverage:
-  stage: post
-  coverage: '/TOTAL +\d+ +\d+ +(\d+\.\d+)%/'
-  script:
-    - cp -a .coverage-reports/ ./coverage-sources
-    - tox -e coverage
-    - cp -a .coverage-reports/ ./coverage-report
-  dependencies:
-  - tests-buildbox-run
-  - tests-centos-7.6
-  - tests-debian-9
-  - tests-debian-10
-  - tests-fedora-30
-  - tests-fedora-31
-  - tests-fedora-missing-deps
-  - tests-fedora-update-deps
-  - tests-remote-execution
-  - tests-ubuntu-18.04
-  - tests-unix
-  - tests-userchroot
-  except:
-  - schedules
-  artifacts:
-    paths:
-    - coverage-sources/
-    - coverage-report/
-
-# Deploy, only for merges which land on master branch.
-#
-pages:
-  stage: publish
-  dependencies:
-  - coverage
-  - docs
-  variables:
-    ACME_DIR: public/.well-known/acme-challenge
-    COVERAGE_DIR: public/coverage
-  script:
-  - mkdir -p ${ACME_DIR}
-    # Required to finish the creation of the Let's Encrypt certificate,
-    # which allows using https://docs.buildstream.build/ for accessing
-    # the documentation.
-  - echo ${ACME_CHALLENGE} > ${ACME_DIR}/$(echo ${ACME_CHALLENGE} | cut -c1-43)
-  - mkdir -p ${COVERAGE_DIR}
-  - cp -a ./coverage-report/ ${COVERAGE_DIR}
-  artifacts:
-    paths:
-    - public/
-  only:
-  #
-  # FIXME:
-  #
-  # Ideally we want to publish to a different subdir of
-  # pages depending on which stable branch we are building here,
-  # not currently automatically supported but can be worked around.
-  #
-  # See https://gitlab.com/gitlab-org/gitlab-ce/issues/35141
-  #
-  - master
-  except:
-  - schedules


[buildstream] 03/04: WIP: Enforce SafeChildWatcher

Posted by no...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

not-in-ldap pushed a commit to branch chandan/testpy38
in repository https://gitbox.apache.org/repos/asf/buildstream.git

commit 05550426d4afe92854f7a53bc18f8b715dd04693
Author: Chandan Singh <cs...@bloomberg.net>
AuthorDate: Mon Oct 21 14:38:07 2019 +0100

    WIP: Enforce SafeChildWatcher
---
 src/buildstream/_scheduler/scheduler.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/buildstream/_scheduler/scheduler.py b/src/buildstream/_scheduler/scheduler.py
index a45da82..ca7e927 100644
--- a/src/buildstream/_scheduler/scheduler.py
+++ b/src/buildstream/_scheduler/scheduler.py
@@ -171,6 +171,12 @@ class Scheduler:
         # Hold on to the queues to process
         self.queues = queues
 
+        # NOTE: Enforce use of `SafeChildWatcher` as we generally don't want
+        # background threads.
+        # In Python 3.8+, `ThreadedChildWatcher` is the default watcher, and
+        # not `SafeChildWatcher`.
+        asyncio.set_child_watcher(asyncio.SafeChildWatcher())
+
         # Ensure that we have a fresh new event loop, in case we want
         # to run another test in this thread.
         self.loop = asyncio.new_event_loop()