angr / ci-settings

Docker image and azure templates for angr's CI
2 stars 6 forks source link

Refactor CI scripts into a pip-installable package #35

Open twizmwazin opened 2 years ago

twizmwazin commented 2 years ago

Currently the CI consists of a handful of scripts and configuration files that have been created over time carefully curated into a container image. This makes them difficult to use outside of the context of that docker image unless you know exactly what you are doing. It would be an improvement to refactor these scripts to provide an interface that can be used something like this:

# Install step
pip install --user angr-ci

# Build step
angr-ci build --python=`which python3.6` --repo=angr/angr --branch=master --artifact=angr-master-py36.tar.gz

# Test step
angr-ci test --artifact=angr-master-py36.tar.gz --worker=0/10 --include-slow

This would also open the door to making it easy to build and test on a matrix OS/python combinations, as well as improve long-term maintainability.