Skip to content

Commit

Permalink
Re-work colcon/ci for use in the ros-infrastructure org
Browse files Browse the repository at this point in the history
  • Loading branch information
cottsay committed Mar 11, 2024
1 parent 942ed2a commit 67a4f30
Show file tree
Hide file tree
Showing 5 changed files with 43 additions and 85 deletions.
35 changes: 30 additions & 5 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,44 @@ name: Run tests

on: # yamllint disable-line rule:truthy
push:
branches: ['main']
branches: ['main', 'devel']
pull_request:
workflow_dispatch:

jobs:
canary:
uses: ./.github/workflows/pytest.yaml
with:
# Choose colcon-notification for a canary build. It has colcon
# dependencies and debian patches, so exercieses a fair amount of the
matrix-filter: del(.matrix.os[] | select(contains("windows")))
# Choose rosdistro for a canary build. It has ros-infrastructure
# dependencies and installs scripts, so exercieses a fair amount of the
# CI action features.
repository: colcon/colcon-notification
# Use HEAD to find strategy.json file instead of the tip of colcon/ci
repository: ros-infrastructure/rosdistro
# Use HEAD to find strategy.json file instead of the tip of
# ros-infrastructure/ci
setup-repository: ''
canary-catkin-pkg:
uses: ./.github/workflows/pytest.yaml
with:
matrix-filter: del(.matrix.os[] | select(contains("windows")))
repository: ros-infrastructure/catkin_pkg
setup-repository: ''
canary-rospkg:
uses: ./.github/workflows/pytest.yaml
with:
matrix-filter: del(.matrix.os[] | select(contains("windows")))
repository: ros-infrastructure/rospkg
setup-repository: ''
canary-rosinstall-generator:
uses: ./.github/workflows/pytest.yaml
with:
matrix-filter: del(.matrix.os[] | select(contains("windows")))
repository: ros-infrastructure/rosinstall_generator
setup-repository: ''
canary-rosdoc2:
uses: ./.github/workflows/pytest.yaml
with:
repository: ros-infrastructure/rosdoc2
setup-repository: ''
yamllint:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pytest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ on: # yamllint disable-line rule:truthy
type: string
setup-repository:
description: 'repository used during job setup'
default: 'colcon/ci'
default: 'ros-infrastructure/ci'
required: false
type: string

Expand Down
32 changes: 2 additions & 30 deletions action.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: colcon pytest
description: Continuous integration for colcon repositories
name: ros-infrastructure pytest
description: Continuous integration for ros-infrastructure repositories
runs:
using: composite
steps:
Expand Down Expand Up @@ -36,31 +36,3 @@ runs:
--cov-report xml:coverage.xml \
--cov-config setup.cfg
echo ::endgroup::
echo ::group::Test publish
# Run publish-python without uploading the results
if [ -f publish-python.yaml ]; then
PUBLISH_PYTHON=$(mktemp -d)
pushd $PUBLISH_PYTHON
git clone https://github.com/dirk-thomas/publish-python.git .
popd
python -m pip install -U PyYAML wheel
python $PUBLISH_PYTHON/bin/publish-python wheel:pypi
if [ ! -z "${{matrix.stdeb-check}}" ]; then
sudo apt install \
debhelper \
dh-python \
fakeroot \
python3-all \
python3-stdeb \
python3-yaml \
-y
DEB_BUILD_OPTIONS=nocheck /usr/bin/python3 \
$PUBLISH_PYTHON/bin/publish-python stdeb:packagecloud
else
echo "Skipping stdeb test on non-Debian platform..."
fi
else
echo "Repository not configured - Skipping..."
fi
echo ::endgroup::
55 changes: 10 additions & 45 deletions constraints-heads.txt
Original file line number Diff line number Diff line change
@@ -1,45 +1,10 @@
colcon-alias@ git+https://github.com/colcon/colcon-alias.git
colcon-argcomplete@ git+https://github.com/colcon/colcon-argcomplete.git
colcon-bash@ git+https://github.com/colcon/colcon-bash.git
colcon-bazel@ git+https://github.com/colcon/colcon-bazel.git
colcon-bundle@ git+https://github.com/colcon/colcon-bundle.git
colcon-cargo@ git+https://github.com/colcon/colcon-cargo.git
colcon-cd@ git+https://github.com/colcon/colcon-cd.git
colcon-clean@ git+https://github.com/colcon/colcon-clean.git
colcon-cmake@ git+https://github.com/colcon/colcon-cmake.git
colcon-common-extensions@ git+https://github.com/colcon/colcon-common-extensions.git
colcon-core@ git+https://github.com/colcon/colcon-core.git
colcon-coveragepy-result@ git+https://github.com/colcon/colcon-coveragepy-result.git
colcon-defaults@ git+https://github.com/colcon/colcon-defaults.git
colcon-devtools@ git+https://github.com/colcon/colcon-devtools.git
colcon-ed@ git+https://github.com/colcon/colcon-ed.git
colcon-gradle@ git+https://github.com/colcon/colcon-gradle.git
colcon-graphviz-anim@ git+https://github.com/colcon/colcon-graphviz-anim.git
colcon-hardware-acceleration@ git+https://github.com/colcon/colcon-hardware-acceleration.git
colcon-installed-package-information@ git+https://github.com/colcon/colcon-installed-package-information.git
colcon-lcov-result@ git+https://github.com/colcon/colcon-lcov-result.git
colcon-library-path@ git+https://github.com/colcon/colcon-library-path.git
colcon-meson@ git+https://github.com/colcon/colcon-meson.git
colcon-metadata@ git+https://github.com/colcon/colcon-metadata.git
colcon-mixin@ git+https://github.com/colcon/colcon-mixin.git
colcon-notification@ git+https://github.com/colcon/colcon-notification.git
colcon-output@ git+https://github.com/colcon/colcon-output.git
colcon-override-check@ git+https://github.com/colcon/colcon-override-check.git
colcon-package-information@ git+https://github.com/colcon/colcon-package-information.git
colcon-package-selection@ git+https://github.com/colcon/colcon-package-selection.git
colcon-parallel-executor@ git+https://github.com/colcon/colcon-parallel-executor.git
colcon-pkg-config@ git+https://github.com/colcon/colcon-pkg-config.git
colcon-powershell@ git+https://github.com/colcon/colcon-powershell.git
colcon-python-setup-py@ git+https://github.com/colcon/colcon-python-setup-py.git
colcon-recursive-crawl@ git+https://github.com/colcon/colcon-recursive-crawl.git
colcon-rerun@ git+https://github.com/colcon/colcon-rerun.git
colcon-ros-bazel@ git+https://github.com/colcon/colcon-ros-bazel.git
colcon-ros-bundle@ git+https://github.com/colcon/colcon-ros-bundle.git
colcon-ros-cargo@ git+https://github.com/colcon/colcon-ros-cargo.git
colcon-ros-domain-id-coordinator@ git+https://github.com/colcon/colcon-ros-domain-id-coordinator.git
colcon-ros@ git+https://github.com/colcon/colcon-ros.git
colcon-ros-gradle@ git+https://github.com/colcon/colcon-ros-gradle.git
colcon-sanitizer-reports@ git+https://github.com/colcon/colcon-sanitizer-reports.git
colcon-spawn-shell@ git+https://github.com/colcon/colcon-spawn-shell.git
colcon-test-result@ git+https://github.com/colcon/colcon-test-result.git
colcon-zsh@ git+https://github.com/colcon/colcon-zsh.git
bloom@ git+https://github.com/ros-infrastructure/bloom.git
catkin-pkg@ git+https://github.com/ros-infrastructure/catkin_pkg.git
catkin-sphinx@ git+https://github.com/ros-infrastructure/catkin-sphinx.git
ros-buildfarm@ git+https://github.com/ros-infrastructure/ros_buildfarm.git
rosdep@ git+https://github.com/ros-infrastructure/rosdep.git
rosdistro@ git+https://github.com/ros-infrastructure/rosdistro.git
rosdoc2@ git+https://github.com/ros-infrastructure/rosdoc2.git
rosinstall_generator@ git+https://github.com/ros-infrastructure/rosinstall_generator.git
rospkg@ git+https://github.com/ros-infrastructure/rospkg.git
superflore@ git+https://github.com/ros-infrastructure/superflore.git
4 changes: 0 additions & 4 deletions strategy.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,6 @@
{
"os": "ubuntu-20.04",
"python": "3.6"
},
{
"os": "ubuntu-latest",
"stdeb-check": "1"
}
]
}
Expand Down

0 comments on commit 67a4f30

Please sign in to comment.