You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildstream.apache.org by tv...@apache.org on 2021/01/03 14:57:20 UTC
[buildstream] branch tristan/test-workflows created (now 33aae13)
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a change to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git.
at 33aae13 .github/workflows/merge.yml: Generate the gh-pages branch with .nojekyll
This branch includes the following new commits:
new 9fd8558 Test Actions
new 42d13b7 Remove notes
new 0b187c8 Move CI_IMAGE to global scope
new 23e2af9 Add no-usedevelop job
new be8b9e5 Add tests-plugins-master job
new bd3a7f3 Add missing-deps test job
new a4e0056 Move PYTEST_ARGS to top-level env
new b7c4258 .github/workflows/ci.yml: Use fresh docker images
new 44ff8e1 .github/workflows/ci.yml: Fix TOXENV, there is no py6-plugins env.
new 43b9284 .github/workflows/ci.yml: Add py38 to the toxenv list
new 944d22e .github/workflows/ci.yml: Disable parallelism in pytest
new 41d3fe5 .github/workflows/ci.yml: Generate test runner script
new af87b46 .github/workflows/ci.yml: Upload an artifact from the docs job
new bf48af7 .github/workflows/ci.yml: Ensure we rebuild the docs sessions in CI
new 51acea3 .github/workflows/release.yml: Add release.yml workflow for uploading releases
new e52715c .github/workflows/merge.yml: Publish docs post merge
new 6faceda Fixing merge CI to update github pages
new 33aae13 .github/workflows/merge.yml: Generate the gh-pages branch with .nojekyll
The 18 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] 03/18: Move CI_IMAGE to global scope
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 0b187c8e6c847c9c887fe8c6f9abdfd0fadb3b0b
Author: Chandan Singh <ch...@chandansingh.net>
AuthorDate: Wed Aug 19 19:49:58 2020 +0100
Move CI_IMAGE to global scope
---
.github/workflows/ci.yml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 51bfb06..d382e08 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -19,6 +19,9 @@ on: push
# - run tests on mac (GitHub provides MacOS runners)
# - standardize WSL tasks by using GitHub-provided runners
+env:
+ CI_IMAGE: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
+
jobs:
tests:
runs-on: ubuntu-20.04
@@ -88,7 +91,6 @@ jobs:
docs:
runs-on: ubuntu-20.04
env:
- CI_IMAGE: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
BST_FORCE_SESSION_REBUILD: 1
steps:
- name: Check out repository
[buildstream] 02/18: Remove notes
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 42d13b7edc3eccb1c242bf6e2ed96e62d71e7dfb
Author: Chandan Singh <ch...@chandansingh.net>
AuthorDate: Wed Aug 19 19:22:36 2020 +0100
Remove notes
---
.github/workflows/ci.yml | 21 ---------------------
1 file changed, 21 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index f5aabb7..51bfb06 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -18,27 +18,6 @@ on: push
# New opportunities:
# - run tests on mac (GitHub provides MacOS runners)
# - standardize WSL tasks by using GitHub-provided runners
-#
-#
-# NOTE:
-#
-# * GitHub Actions do not support YAML variables and/or YAML anchors, which
-# leads to some repetition. Job matrices solve this to some extent but
-# combined with some other issues, this seems like a ongoing source of
-# misery.
-# * Not being able to use the standard `container` directive for running our
-# tests is one such example that makes this situation seem worse.
-#
-# * We have caches etc in GitHub Actions as well, so I don't think we are
-# missing any killer feature.
-#
-# * Fixing most of the to-do items is mostly mostly a matter of adding more
-# configuration.
-# * Some of these tasks can probably live in a different yaml file as a
-# separate workflow.
-#
-# * Similar to GitLab, GitHub also has a container registry, so we can move our
-# testsuite images there if/when we want to fully migrate off of GitLab.
jobs:
tests:
[buildstream] 11/18: .github/workflows/ci.yml: Disable parallelism
in pytest
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 944d22e586ac82b23851cdc41efae7af2ab02fe5
Author: Tristan van Berkom <tr...@codethink.co.uk>
AuthorDate: Wed Oct 7 13:43:47 2020 +0900
.github/workflows/ci.yml: Disable parallelism in pytest
There are a lot of INTERNALERROR failures, lets get rid of them by
disabling the shakey parallelism thing.
---
.github/workflows/ci.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index b741e28..74f6e4b 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -21,7 +21,7 @@ on: push
env:
CI_IMAGE: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:32-master-177137613
- PYTEST_ARGS: --color=yes --integration -n 4
+ PYTEST_ARGS: --color=yes --integration
jobs:
tests:
[buildstream] 10/18: .github/workflows/ci.yml: Add py38 to the
toxenv list
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 43b928432dc0e36bf3f49154c9d70f611338596f
Author: Tristan van Berkom <tr...@codethink.co.uk>
AuthorDate: Wed Oct 7 12:53:21 2020 +0900
.github/workflows/ci.yml: Add py38 to the toxenv list
Ensure that we use `nocover` with py38, as there is a bug with coverage
and python 3.8
---
.github/workflows/ci.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index a10b6d9..b741e28 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -31,7 +31,7 @@ jobs:
env:
CI_IMAGE_PREFIX: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite
CI_IMAGE_SUFFIX: master-177137613
- TOXENV: py36,py36-plugins,py37,py37-plugins,py38,py38-plugins
+ TOXENV: py36,py37,py38-nocover,py36-plugins,py37-plugins,py38-plugins-nocover
# FIXME: De-duplicate against tox.ini
BST_PLUGINS_EXPERIMENTAL_VERSION: 1.93.4
[buildstream] 05/18: Add tests-plugins-master job
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit be8b9e5136d20048285e65b97dc3492f66d64b7e
Author: Chandan Singh <ch...@chandansingh.net>
AuthorDate: Wed Aug 19 20:27:26 2020 +0100
Add tests-plugins-master job
---
.github/workflows/ci.yml | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 9bed010..e934f9a 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -25,12 +25,15 @@ env:
jobs:
tests:
runs-on: ubuntu-20.04
+ continue-on-error: ${{ matrix.allow-failure || false }}
env:
CI_IMAGE_PREFIX: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite
CI_IMAGE_SUFFIX: master-154893333
PYTEST_ARGS: --color=yes --integration -n 4
TOXENV: py36,py6-plugins,py37,py37-plugins,py38,py38-plugins
+ # FIXME: De-duplicate against tox.ini
+ BST_PLUGINS_EXPERIMENTAL_VERSION: 1.93.4
strategy:
fail-fast: false
@@ -45,11 +48,17 @@ jobs:
- ubuntu:18.04
- centos:7.7.1908
- # Ensure that tests also pass without `--develop` flag.
include:
+ # Ensure that tests also pass without `--develop` flag.
- test-name: no-usedevelop
+ image-name: fedora:31
toxenv: py36-nocover,py37-nocover,py38-nocover
+
+ # Test the master version of some external plugins
+ - test-name: plugins-master
image-name: fedora:31
+ bst-plugins-experimental-version: master
+ allow-failure: true
steps:
- name: Check out repository
@@ -74,6 +83,7 @@ jobs:
--device /dev/fuse \
--env PYTEST_ARGS \
--env TOXENV=${{ matrix.toxenv || env.TOXENV }} \
+ --env BST_PLUGINS_EXPERIMENTAL_VERSION=${{ matrix.bst-plugins-experimental-version || env.BST_PLUGINS_EXPERIMENTAL_VERSION }} \
--volume /home/runner/work:/__w \
--workdir /__w/buildstream/buildstream \
"$CI_IMAGE_PREFIX"-${{ matrix.image-name || matrix.test-name }}-"$CI_IMAGE_SUFFIX" \
[buildstream] 06/18: Add missing-deps test job
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit bd3a7f3c5025e8c1eab3c0daf481bf2806f532cd
Author: Chandan Singh <ch...@chandansingh.net>
AuthorDate: Wed Aug 19 20:58:11 2020 +0100
Add missing-deps test job
---
.github/workflows/ci.yml | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index e934f9a..e1487ed 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -89,6 +89,29 @@ jobs:
"$CI_IMAGE_PREFIX"-${{ matrix.image-name || matrix.test-name }}-"$CI_IMAGE_SUFFIX" \
bash -c 'useradd -Um buildstream && chown -R buildstream:buildstream . && su buildstream -c "tox -- $PYTEST_ARGS"'
+ tests-fedora-missing-deps:
+ runs-on: ubuntu-20.04
+ container: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v2
+ # BuildStream requires tags to be able to find its version.
+ with:
+ fetch-depth: 0
+ - name: Uninstall Bubblewrap and OSTree
+ # 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.
+ run: |
+ dnf mark install fuse-libs systemd-udev
+ dnf erase -y bubblewrap ostree
+ - name: Add test user
+ run: |
+ useradd -Um buildstream
+ chown -R buildstream:buildstream .
+ - name: Run tests
+ run: su buildstream -c "tox -- $PYTEST_ARGS"
+
mypy:
runs-on: ubuntu-20.04
container: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
[buildstream] 13/18: .github/workflows/ci.yml: Upload an artifact
from the docs job
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit af87b46b193194b4be6bcf527d4e41c5c5d14263
Author: Chris Polin <ch...@codethink.co.uk>
AuthorDate: Thu Oct 8 16:21:12 2020 +0100
.github/workflows/ci.yml: Upload an artifact from the docs job
---
.github/workflows/ci.yml | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 54af9c1..61396b9 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -170,3 +170,10 @@ jobs:
--workdir /__w/buildstream/buildstream \
$CI_IMAGE \
tox -e docs
+
+ - name: Upload artifacts
+ uses: actions/upload-artifact@v2
+ with:
+ name: docs
+ path: doc/build/html
+
[buildstream] 07/18: Move PYTEST_ARGS to top-level env
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit a4e00564f084a809f319688ef98fa645adc79596
Author: Chandan Singh <ch...@chandansingh.net>
AuthorDate: Fri Aug 21 20:56:55 2020 +0100
Move PYTEST_ARGS to top-level env
---
.github/workflows/ci.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index e1487ed..bdc5c2e 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -21,6 +21,7 @@ on: push
env:
CI_IMAGE: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
+ PYTEST_ARGS: --color=yes --integration -n 4
jobs:
tests:
@@ -30,7 +31,6 @@ jobs:
env:
CI_IMAGE_PREFIX: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite
CI_IMAGE_SUFFIX: master-154893333
- PYTEST_ARGS: --color=yes --integration -n 4
TOXENV: py36,py6-plugins,py37,py37-plugins,py38,py38-plugins
# FIXME: De-duplicate against tox.ini
BST_PLUGINS_EXPERIMENTAL_VERSION: 1.93.4
[buildstream] 04/18: Add no-usedevelop job
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 23e2af95bae23c3e3708134ff7cb1eec1687f2ba
Author: Chandan Singh <ch...@chandansingh.net>
AuthorDate: Wed Aug 19 19:51:36 2020 +0100
Add no-usedevelop job
---
.github/workflows/ci.yml | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index d382e08..9bed010 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -35,13 +35,22 @@ jobs:
strategy:
fail-fast: false
matrix:
- ci_image_name:
+
+ # Main test targets, the name defines the image that will be used as
+ # the base for running tests.
+ test-name:
- debian:10
- fedora:30
- fedora:31
- ubuntu:18.04
- centos:7.7.1908
+ # Ensure that tests also pass without `--develop` flag.
+ include:
+ - test-name: no-usedevelop
+ toxenv: py36-nocover,py37-nocover,py38-nocover
+ image-name: fedora:31
+
steps:
- name: Check out repository
uses: actions/checkout@v2
@@ -64,10 +73,10 @@ jobs:
--privileged \
--device /dev/fuse \
--env PYTEST_ARGS \
- --env TOXENV \
+ --env TOXENV=${{ matrix.toxenv || env.TOXENV }} \
--volume /home/runner/work:/__w \
--workdir /__w/buildstream/buildstream \
- "$CI_IMAGE_PREFIX"-${{ matrix.ci_image_name }}-"$CI_IMAGE_SUFFIX" \
+ "$CI_IMAGE_PREFIX"-${{ matrix.image-name || matrix.test-name }}-"$CI_IMAGE_SUFFIX" \
bash -c 'useradd -Um buildstream && chown -R buildstream:buildstream . && su buildstream -c "tox -- $PYTEST_ARGS"'
mypy:
[buildstream] 14/18: .github/workflows/ci.yml: Ensure we rebuild
the docs sessions in CI
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit bf48af7ae5cbfac8b29dc46bef2bb70ead878a75
Author: Tristan van Berkom <tr...@codethink.co.uk>
AuthorDate: Fri Oct 9 15:04:59 2020 +0900
.github/workflows/ci.yml: Ensure we rebuild the docs sessions in CI
---
.github/workflows/ci.yml | 1 +
1 file changed, 1 insertion(+)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 61396b9..a820522 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -166,6 +166,7 @@ jobs:
docker run \
--privileged \
--device /dev/fuse \
+ --env BST_FORCE_SESSION_REBUILD \
--volume /home/runner/work:/__w \
--workdir /__w/buildstream/buildstream \
$CI_IMAGE \
[buildstream] 17/18: Fixing merge CI to update github pages
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 6faceda7e4e7733115096f106792e7edf1d80eed
Author: Tristan van Berkom <tr...@codethink.co.uk>
AuthorDate: Fri Oct 16 16:21:53 2020 +0900
Fixing merge CI to update github pages
---
.github/workflows/merge.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/merge.yml b/.github/workflows/merge.yml
index 11a1fbd..c63f380 100644
--- a/.github/workflows/merge.yml
+++ b/.github/workflows/merge.yml
@@ -57,10 +57,10 @@ jobs:
- name: Update repo
run: |
- cp -a doc/* pages/
+ cp -a docs/* pages/
cd pages/
git add .
- git config --local user.email "me+nightly-ci@pony"
+ git config --local user.email "merge-ci@ponyland"
git config --local user.name "Github Actions Nightly Job"
git commit -m "Update repo for docs build $GITHUB_RUN_NUMBER"
git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$GITHUB_REPOSITORY.git" gh-pages
[buildstream] 08/18: .github/workflows/ci.yml: Use fresh docker
images
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit b7c42582fd97cdef5ce701d2978318cff231b26e
Author: Tristan van Berkom <tr...@codethink.co.uk>
AuthorDate: Tue Oct 6 15:16:35 2020 +0900
.github/workflows/ci.yml: Use fresh docker images
---
.github/workflows/ci.yml | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index bdc5c2e..26d4d85 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -20,7 +20,7 @@ on: push
# - standardize WSL tasks by using GitHub-provided runners
env:
- CI_IMAGE: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
+ CI_IMAGE: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:32-master-177137613
PYTEST_ARGS: --color=yes --integration -n 4
jobs:
@@ -30,7 +30,7 @@ jobs:
env:
CI_IMAGE_PREFIX: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite
- CI_IMAGE_SUFFIX: master-154893333
+ CI_IMAGE_SUFFIX: master-177137613
TOXENV: py36,py6-plugins,py37,py37-plugins,py38,py38-plugins
# FIXME: De-duplicate against tox.ini
BST_PLUGINS_EXPERIMENTAL_VERSION: 1.93.4
@@ -43,20 +43,20 @@ jobs:
# the base for running tests.
test-name:
- debian:10
- - fedora:30
- fedora:31
+ - fedora:32
- ubuntu:18.04
- centos:7.7.1908
include:
# Ensure that tests also pass without `--develop` flag.
- test-name: no-usedevelop
- image-name: fedora:31
+ image-name: fedora:32
toxenv: py36-nocover,py37-nocover,py38-nocover
# Test the master version of some external plugins
- test-name: plugins-master
- image-name: fedora:31
+ image-name: fedora:32
bst-plugins-experimental-version: master
allow-failure: true
@@ -91,7 +91,7 @@ jobs:
tests-fedora-missing-deps:
runs-on: ubuntu-20.04
- container: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
+ container: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:32-master-177137613
steps:
- name: Check out repository
uses: actions/checkout@v2
@@ -114,7 +114,7 @@ jobs:
mypy:
runs-on: ubuntu-20.04
- container: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
+ container: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:32-master-177137613
steps:
- name: Check out repository
uses: actions/checkout@v2
@@ -123,7 +123,7 @@ jobs:
lint:
runs-on: ubuntu-20.04
- container: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
+ container: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:32-master-177137613
steps:
- name: Check out repository
uses: actions/checkout@v2
[buildstream] 16/18: .github/workflows/merge.yml: Publish docs post
merge
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit e52715c927d79b954e2d80700917d85d18e7347f
Author: Tristan van Berkom <tr...@codethink.co.uk>
AuthorDate: Thu Oct 15 17:54:00 2020 +0900
.github/workflows/merge.yml: Publish docs post merge
---
.github/workflows/ci.yml | 6 ++++-
.github/workflows/merge.yml | 66 +++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 71 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index a820522..b99b0ce 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -5,7 +5,11 @@ name: PR Checks
# request, and
# 2. running on both pushes and pull requests results in the classic problem of
# having double jobs.
-on: push
+on:
+ push:
+ branches-ignore:
+ - gh-pages
+ - master
# Left to-do:
# - coverage
diff --git a/.github/workflows/merge.yml b/.github/workflows/merge.yml
new file mode 100644
index 0000000..11a1fbd
--- /dev/null
+++ b/.github/workflows/merge.yml
@@ -0,0 +1,66 @@
+name: Merge actions
+
+env:
+ CI_IMAGE: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:10-master-132813612
+ BST_FORCE_SESSION_REBUILD: 1
+
+on:
+ push:
+ branches:
+ - master
+
+jobs:
+ build:
+ name: Build documentation
+ runs-on: ubuntu-20.04
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v2
+ # BuildStream requires tags to be able to find its version.
+ with:
+ fetch-depth: 0
+
+ - name: Build documentation
+ run: |
+ docker run \
+ --privileged \
+ --device /dev/fuse \
+ --env BST_FORCE_SESSION_REBUILD \
+ --volume /home/runner/work:/__w \
+ --workdir /__w/buildstream/buildstream \
+ $CI_IMAGE \
+ tox -e docs
+ tar -C doc/build/html -zcf docs.tgz .
+
+ - name: Upload artifacts
+ uses: actions/upload-artifact@v2
+ with:
+ name: docs
+ path: doc/build/html
+
+ publish:
+ needs: build
+ runs-on: ubuntu-20.04
+ steps:
+
+ - name: Download artifact
+ uses: actions/download-artifact@v2
+ with:
+ name: docs
+ path: docs
+
+ - name: Checkout code
+ uses: actions/checkout@v2
+ with:
+ ref: gh-pages
+ path: pages
+
+ - name: Update repo
+ run: |
+ cp -a doc/* pages/
+ cd pages/
+ git add .
+ git config --local user.email "me+nightly-ci@pony"
+ git config --local user.name "Github Actions Nightly Job"
+ git commit -m "Update repo for docs build $GITHUB_RUN_NUMBER"
+ git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$GITHUB_REPOSITORY.git" gh-pages
[buildstream] 15/18: .github/workflows/release.yml: Add release.yml
workflow for uploading releases
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 51acea3028bef5b947134fd92e5fb3d502264d7f
Author: Tristan van Berkom <tr...@codethink.co.uk>
AuthorDate: Fri Oct 9 15:36:41 2020 +0900
.github/workflows/release.yml: Add release.yml workflow for uploading releases
---
.github/workflows/release.yml | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
new file mode 100644
index 0000000..1153eab
--- /dev/null
+++ b/.github/workflows/release.yml
@@ -0,0 +1,40 @@
+name: Upload Release Asset
+
+env:
+ CI_IMAGE: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:32-master-177137613
+ BST_FORCE_SESSION_REBUILD: 1
+
+on:
+ push:
+ tags:
+ - '*.*.*'
+
+jobs:
+ build:
+ name: Upload Release Asset
+ runs-on: ubuntu-20.04
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v2
+ # BuildStream requires tags to be able to find its version.
+ with:
+ fetch-depth: 0
+
+ - name: Build documentation
+ run: |
+ docker run \
+ --privileged \
+ --device /dev/fuse \
+ --env BST_FORCE_SESSION_REBUILD \
+ --volume /home/runner/work:/__w \
+ --workdir /__w/buildstream/buildstream \
+ $CI_IMAGE \
+ tox -e docs
+ tar -C doc/build/html -zcf docs.tgz .
+
+ - name: Upload release assets
+ run: |
+ tag_name="${GITHUB_REF##*/}"
+ hub release create -a "docs.tgz" -m "$tag_name" "$tag_name"
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
[buildstream] 18/18: .github/workflows/merge.yml: Generate the
gh-pages branch with .nojekyll
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 33aae132aefc69fc6928690e5e050746da2e7668
Author: Tristan van Berkom <tr...@codethink.co.uk>
AuthorDate: Fri Oct 16 17:29:56 2020 +0900
.github/workflows/merge.yml: Generate the gh-pages branch with .nojekyll
This disables the jekyll on GitHub which interferes with the proper
rendering of the site.
---
.github/workflows/merge.yml | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/.github/workflows/merge.yml b/.github/workflows/merge.yml
index c63f380..3fb50e1 100644
--- a/.github/workflows/merge.yml
+++ b/.github/workflows/merge.yml
@@ -57,7 +57,14 @@ jobs:
- name: Update repo
run: |
+
+ # Copy the docs asset over and overwrite the orphan gh-pages branch, ensure
+ # that we disable GitHub's jekyll by creating the .nojekyll file, otherwise
+ # it will interfere with the rendering of the site.
+ #
cp -a docs/* pages/
+ touch pages/.nojekyll
+
cd pages/
git add .
git config --local user.email "merge-ci@ponyland"
[buildstream] 12/18: .github/workflows/ci.yml: Generate test runner
script
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 41d3fe51a64303ee793942642b7f7e068b1bfcc8
Author: Tristan van Berkom <tr...@codethink.co.uk>
AuthorDate: Wed Oct 7 15:56:14 2020 +0900
.github/workflows/ci.yml: Generate test runner script
This allows us to have a more robust scaffolding inside the container
once it's launched.
Here we:
- Add some diagnostic info
- Maximize verbosity of tox invocations, helps to debug if anything goes wrong
- Ensure that we run tox in a login shell, the ubuntu 18.04 breaks at
the time of installing cython without this change.
---
.github/workflows/ci.yml | 23 ++++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 74f6e4b..54af9c1 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -78,6 +78,27 @@ jobs:
# TODO: Have test user pre-created in the test image.
- name: Run tox inside a container
run: |
+
+ cat << EOF > runtox.sh
+ #!/bin/bash
+
+ # Create user
+ useradd -Um buildstream
+ chown -R buildstream:buildstream .
+
+ # Diagnostics
+ echo "Running diagnostics checks"
+ mount
+ df -h
+ tox --version
+
+ # Run tox as user, ensure we have a login shell
+ echo "Running tests"
+ su buildstream -c '/bin/bash --login -c "tox -vvvvv -- $PYTEST_ARGS"'
+ EOF
+
+ chmod +x runtox.sh
+
docker run \
--privileged \
--device /dev/fuse \
@@ -87,7 +108,7 @@ jobs:
--volume /home/runner/work:/__w \
--workdir /__w/buildstream/buildstream \
"$CI_IMAGE_PREFIX"-${{ matrix.image-name || matrix.test-name }}-"$CI_IMAGE_SUFFIX" \
- bash -c 'useradd -Um buildstream && chown -R buildstream:buildstream . && su buildstream -c "tox -- $PYTEST_ARGS"'
+ ./runtox.sh
tests-fedora-missing-deps:
runs-on: ubuntu-20.04
[buildstream] 01/18: Test Actions
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 9fd855890443850bc1df56bea72acc0dd7790ad3
Author: Chandan Singh <ch...@chandansingh.net>
AuthorDate: Mon Aug 10 20:58:45 2020 +0100
Test Actions
---
.github/workflows/ci.yml | 128 +++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 128 insertions(+)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..f5aabb7
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,128 @@
+name: PR Checks
+
+# We don't run these jobs on pull requests because:
+# 1. it is often useful to run tests on one's branch without creating a pull
+# request, and
+# 2. running on both pushes and pull requests results in the classic problem of
+# having double jobs.
+on: push
+
+# Left to-do:
+# - coverage
+# - publishing docs to gh-pages
+# - persistent artifact cache
+# - overnight jobs
+# - other one-off jobs like missing-deps, plugin jobs etc
+# - wsl tasks (TODO: Check if GitHub's Windows runners allow WSL)
+#
+# New opportunities:
+# - run tests on mac (GitHub provides MacOS runners)
+# - standardize WSL tasks by using GitHub-provided runners
+#
+#
+# NOTE:
+#
+# * GitHub Actions do not support YAML variables and/or YAML anchors, which
+# leads to some repetition. Job matrices solve this to some extent but
+# combined with some other issues, this seems like a ongoing source of
+# misery.
+# * Not being able to use the standard `container` directive for running our
+# tests is one such example that makes this situation seem worse.
+#
+# * We have caches etc in GitHub Actions as well, so I don't think we are
+# missing any killer feature.
+#
+# * Fixing most of the to-do items is mostly mostly a matter of adding more
+# configuration.
+# * Some of these tasks can probably live in a different yaml file as a
+# separate workflow.
+#
+# * Similar to GitLab, GitHub also has a container registry, so we can move our
+# testsuite images there if/when we want to fully migrate off of GitLab.
+
+jobs:
+ tests:
+ runs-on: ubuntu-20.04
+
+ env:
+ CI_IMAGE_PREFIX: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite
+ CI_IMAGE_SUFFIX: master-154893333
+ PYTEST_ARGS: --color=yes --integration -n 4
+ TOXENV: py36,py6-plugins,py37,py37-plugins,py38,py38-plugins
+
+ strategy:
+ fail-fast: false
+ matrix:
+ ci_image_name:
+ - debian:10
+ - fedora:30
+ - fedora:31
+ - ubuntu:18.04
+ - centos:7.7.1908
+
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v2
+ # BuildStream requires tags to be able to find its version.
+ with:
+ fetch-depth: 0
+ # XXX: Our run command looks like a monstrosity because we need to
+ # specify `--device /dev/fuse` and there's no way to do that using the
+ # `container` directive directly.
+ # This is also why we have forward environment variables by hand.
+ # TODO: In future, we should find a way to simplify this. See some
+ # relevant discussion at:
+ # https://github.community/t/how-to-run-privileged-docker-container/16431.
+ # XXX: Value of `volume` and `workdir` must match how GitHub
+ # Actions sets up paths.
+ # TODO: Have test user pre-created in the test image.
+ - name: Run tox inside a container
+ run: |
+ docker run \
+ --privileged \
+ --device /dev/fuse \
+ --env PYTEST_ARGS \
+ --env TOXENV \
+ --volume /home/runner/work:/__w \
+ --workdir /__w/buildstream/buildstream \
+ "$CI_IMAGE_PREFIX"-${{ matrix.ci_image_name }}-"$CI_IMAGE_SUFFIX" \
+ bash -c 'useradd -Um buildstream && chown -R buildstream:buildstream . && su buildstream -c "tox -- $PYTEST_ARGS"'
+
+ mypy:
+ runs-on: ubuntu-20.04
+ container: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v2
+ - name: Run tox inside a container
+ run: tox -e mypy
+
+ lint:
+ runs-on: ubuntu-20.04
+ container: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v2
+ - name: Run tox inside a container
+ run: tox -e format-check,lint
+
+ docs:
+ runs-on: ubuntu-20.04
+ env:
+ CI_IMAGE: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:30-master-154893333
+ BST_FORCE_SESSION_REBUILD: 1
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v2
+ # BuildStream requires tags to be able to find its version.
+ with:
+ fetch-depth: 0
+ - name: Run tox inside a container
+ run: |
+ docker run \
+ --privileged \
+ --device /dev/fuse \
+ --volume /home/runner/work:/__w \
+ --workdir /__w/buildstream/buildstream \
+ $CI_IMAGE \
+ tox -e docs
[buildstream] 09/18: .github/workflows/ci.yml: Fix TOXENV,
there is no py6-plugins env.
Posted by tv...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
tvb pushed a commit to branch tristan/test-workflows
in repository https://gitbox.apache.org/repos/asf/buildstream.git
commit 44ff8e1d979417fbab19cdb5511b87ee93aad6af
Author: Tristan van Berkom <tr...@codethink.co.uk>
AuthorDate: Tue Oct 6 16:10:06 2020 +0900
.github/workflows/ci.yml: Fix TOXENV, there is no py6-plugins env.
---
.github/workflows/ci.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 26d4d85..a10b6d9 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -31,7 +31,7 @@ jobs:
env:
CI_IMAGE_PREFIX: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite
CI_IMAGE_SUFFIX: master-177137613
- TOXENV: py36,py6-plugins,py37,py37-plugins,py38,py38-plugins
+ TOXENV: py36,py36-plugins,py37,py37-plugins,py38,py38-plugins
# FIXME: De-duplicate against tox.ini
BST_PLUGINS_EXPERIMENTAL_VERSION: 1.93.4