forked from radareorg/radare2
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Revert "Merge all things in one workflow file, reducing duplication o…
…f CI code (radareorg#17355)" This reverts commit dfde84d.
- Loading branch information
Showing
7 changed files
with
383 additions
and
285 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
name: CentOS 6 test | ||
|
||
on: | ||
push: | ||
branches: | ||
- 'pre-release*' | ||
- 'prerelease*' | ||
- 'release-*' | ||
- 'centos*' | ||
schedule: | ||
- cron: '0 18 * * 1,3,5' # Three-weekly at 18:00 UTC on Monday, Wednesday, and Friday | ||
|
||
jobs: | ||
build: | ||
name: centos-6-build | ||
runs-on: ubuntu-latest | ||
container: centos:6 | ||
|
||
steps: | ||
- name: Install tools | ||
run: yum install -y patch unzip git gcc make | ||
- name: Checkout r2 | ||
run: | | ||
git clone https://github.com/${{ github.repository }} | ||
cd radare2 | ||
git fetch origin ${{ github.ref }} | ||
git checkout -b local_branch FETCH_HEAD | ||
- name: Configure with ACR and build | ||
run: ./configure --prefix=/usr && make CS_RELEASE=1 | ||
working-directory: radare2 | ||
- name: Install with make | ||
run: make install | ||
working-directory: radare2 | ||
- name: Run tests | ||
run: cd test/unit && make | ||
working-directory: radare2 | ||
env: | ||
# `make install` installs, for some unknown reasons, pkgconfig files in | ||
# /usr/lib and not in /usr/lib64, thus pkg-config cannot find the right | ||
# .pc files if the right path is not specified | ||
PKG_CONFIG_PATH: /usr/lib/pkgconfig |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,109 @@ | ||
name: Radare2 CI | ||
|
||
on: | ||
push: | ||
branches: | ||
- master | ||
- 'pre-release*' | ||
- 'prerelease*' | ||
- 'release*' | ||
|
||
jobs: | ||
build: | ||
name: ${{ matrix.name }} | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
name: [linux-acr-gcc-tests, linux-acr-clang-tests, linux-meson-gcc-tests, linux-meson-gcc-newshell-tests, macos-clang-tests] | ||
include: | ||
- name: linux-acr-gcc-tests | ||
os: ubuntu-latest | ||
build_system: acr | ||
compiler: gcc | ||
- name: linux-acr-clang-tests | ||
os: ubuntu-latest | ||
build_system: acr | ||
compiler: clang | ||
- name: linux-meson-gcc-tests | ||
os: ubuntu-latest | ||
build_system: meson | ||
compiler: gcc | ||
meson_options: -Db_coverage=true | ||
coverage: 1 | ||
- name: linux-meson-gcc-newshell-tests | ||
os: ubuntu-latest | ||
build_system: meson | ||
compiler: gcc | ||
newshell: true | ||
- name: macos-clang-tests | ||
os: macos-latest | ||
build_system: acr | ||
compiler: clang | ||
|
||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Install pkg-config with Homebrew | ||
if: matrix.os == 'macos-latest' | ||
run: brew install pkg-config | ||
- name: Install python | ||
if: matrix.os != 'macos-latest' | ||
run: sudo apt-get --assume-yes install python3-wheel python3-setuptools | ||
- name: Install meson and ninja | ||
if: matrix.build_system == 'meson' | ||
run: pip3 install --user meson==0.52.0 ninja==1.10.0 | ||
- name: Install test dependencies | ||
run: pip3 install --user 'git+https://github.com/radareorg/radare2-r2pipe#egg=r2pipe&subdirectory=python' | ||
- name: Install clang | ||
if: matrix.compiler == 'clang' && matrix.os == 'ubuntu-latest' | ||
run: sudo apt-get --assume-yes install clang | ||
- name: Checkout our Testsuite Binaries | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: radareorg/radare2-testbins | ||
path: test/bins | ||
- name: Configure with ACR and build | ||
if: matrix.build_system == 'acr' | ||
run: ./configure --prefix=${HOME} && make | ||
env: | ||
CC: ${{ matrix.compiler }} | ||
- name: Build with Meson | ||
if: matrix.build_system == 'meson' | ||
run: | | ||
export PATH=${HOME}/.local/bin:${PATH} | ||
meson ${{ matrix.meson_options }} --prefix=${HOME} build && ninja -C build | ||
env: | ||
CC: ${{ matrix.compiler }} | ||
- name: Install with make | ||
if: matrix.build_system == 'acr' | ||
run: | | ||
# Install the radare2 | ||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH} | ||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH} | ||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH} | ||
make install | ||
- name: Install with meson | ||
if: matrix.build_system == 'meson' | ||
run: | | ||
# Install the radare2 | ||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH} | ||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH} | ||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH} | ||
ninja -C build install | ||
- name: Run tests | ||
run: | | ||
# Running the test suite | ||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH} | ||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH} | ||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH} | ||
if [ "$NEWSHELL" == "true" ]; then | ||
export R2_CFG_NEWSHELL=1 | ||
fi | ||
cd test | ||
radare2 -N -Qc 'e cfg.newshell' - | ||
make && make fuzz-tests | ||
env: | ||
NEWSHELL: ${{ matrix.newshell }} | ||
- name: Upload coverage info | ||
uses: codecov/codecov-action@v1 | ||
if: matrix.coverage == '1' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
name: Debian OLD | ||
|
||
on: | ||
push: | ||
branches: | ||
- 'pre-release*' | ||
- 'prerelease*' | ||
- 'release-*' | ||
- 'debian*' | ||
schedule: | ||
- cron: '0 18 * * 1,3,5' # Three-weekly at 18:00 UTC on Monday, Wednesday, and Friday | ||
|
||
jobs: | ||
build: | ||
name: debian-oldies-build | ||
strategy: | ||
matrix: | ||
container: | ||
- debian:wheezy | ||
- debian:jessie | ||
|
||
runs-on: ubuntu-latest | ||
container: ${{ matrix.container }} | ||
|
||
steps: | ||
- name: Fix containers (Wheezy) | ||
if: matrix.container == 'debian:wheezy' | ||
run: | | ||
sed -i '/deb http:\/\/deb.debian.org\/debian wheezy-updates main/d' /etc/apt/sources.list | ||
echo "deb http://archive.debian.org/debian wheezy main" > /etc/apt/sources.list | ||
echo "deb http://archive.debian.org/debian-security wheezy/updates main" >> /etc/apt/sources.list | ||
echo "Acquire::Check-Valid-Until no;" > /etc/apt/apt.conf.d/99no-check-valid-until | ||
- name: Install tools | ||
run: apt-get update && apt-get install --yes patch unzip git gcc make curl pkg-config libc6-i386 build-essential | ||
- name: Install Python source build dependcies | ||
run: apt-get install --yes checkinstall libbz2-dev libc6-dev libgdbm-dev libncursesw5-dev libreadline-gplv2-dev libssl-dev libsqlite3-dev tk-dev | ||
- name: Install Python from source | ||
run: | | ||
curl -o Python-3.6.9.tgz https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tgz | ||
tar -zxvf Python-3.6.9.tgz | ||
cd Python-3.6.9/ | ||
./configure | ||
make install | ||
- name: Checkout r2 | ||
run: | | ||
git clone https://github.com/${{ github.repository }} | ||
cd radare2 | ||
git fetch origin ${{ github.ref }} | ||
git checkout -b local_branch FETCH_HEAD | ||
- name: Checkout our Testsuite Binaries | ||
run: git clone https://github.com/radareorg/radare2-testbins test/bins | ||
- name: Configure with ACR and build | ||
run: ./configure --prefix=/usr && make | ||
working-directory: radare2 | ||
- name: Install with make | ||
run: make install | ||
working-directory: radare2 | ||
- name: Install test dependencies | ||
run: python3 -m pip install --user 'git+https://github.com/radareorg/radare2-r2pipe#egg=r2pipe&subdirectory=python' | ||
- name: Run tests | ||
run: cd test && make | ||
working-directory: radare2 | ||
env: | ||
PKG_CONFIG_PATH: /usr/lib/x86_64-linux-gnu/pkgconfig |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
name: Publish Docker | ||
on: [push] | ||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@master | ||
- name: Publish to Registry | ||
uses: elgohr/Publish-Docker-Github-Action@master | ||
with: | ||
name: radare/radare2 | ||
username: ${{ secrets.DOCKER_USERNAME }} | ||
password: ${{ secrets.DOCKER_PASSWORD }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,115 @@ | ||
name: Radare2 CI PR | ||
|
||
on: | ||
pull_request: | ||
branches: | ||
- master | ||
|
||
jobs: | ||
build: | ||
name: ${{ matrix.name }} | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 35 | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
name: [linux-acr-gcc-tests, linux-acr-clang-build, linux-meson-gcc-build, linux-meson-gcc-newshell-tests, macos-clang-tests] | ||
include: | ||
- name: linux-acr-gcc-tests | ||
os: ubuntu-latest | ||
build_system: acr | ||
compiler: gcc | ||
run_tests: true | ||
- name: linux-acr-clang-build | ||
os: ubuntu-latest | ||
build_system: acr | ||
compiler: clang | ||
- name: linux-meson-gcc-build | ||
os: ubuntu-latest | ||
build_system: meson | ||
compiler: gcc | ||
- name: linux-meson-gcc-newshell-tests | ||
os: ubuntu-latest | ||
build_system: meson | ||
compiler: gcc | ||
run_tests: true | ||
newshell: true | ||
- name: macos-clang-tests | ||
os: macos-latest | ||
build_system: acr | ||
compiler: clang | ||
run_tests: true | ||
|
||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Install pkg-config with Homebrew | ||
if: matrix.os == 'macos-latest' | ||
run: brew install pkg-config | ||
- name: Install python | ||
if: (matrix.run_tests || matrix.build_system == 'meson') && matrix.os != 'macos-latest' | ||
run: sudo apt-get --assume-yes install python3-wheel python3-setuptools | ||
- name: Install meson and ninja | ||
if: matrix.build_system == 'meson' | ||
run: pip3 install --user meson==0.52.0 ninja==1.10.0 | ||
- name: Install test dependencies | ||
if: matrix.run_tests | ||
run: pip3 install --user 'git+https://github.com/radareorg/radare2-r2pipe#egg=r2pipe&subdirectory=python' | ||
- name: Install clang | ||
if: matrix.compiler == 'clang' && matrix.os == 'ubuntu-latest' | ||
run: sudo apt-get --assume-yes install clang | ||
- name: Checkout our Testsuite Binaries | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: radareorg/radare2-testbins | ||
path: test/bins | ||
- name: Configure with ACR and build | ||
if: matrix.build_system == 'acr' | ||
run: ./configure --prefix=${HOME} && make | ||
env: | ||
CC: ${{ matrix.compiler }} | ||
- name: Build with Meson | ||
if: matrix.build_system == 'meson' | ||
run: | | ||
export PATH=${HOME}/.local/bin:${PATH} | ||
meson --prefix=${HOME} build && ninja -C build | ||
env: | ||
CC: ${{ matrix.compiler }} | ||
- name: Install with make | ||
if: matrix.build_system == 'acr' | ||
run: | | ||
# Install the radare2 | ||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH} | ||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH} | ||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH} | ||
make install | ||
- name: Install with meson | ||
if: matrix.build_system == 'meson' | ||
run: | | ||
# Install the radare2 | ||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH} | ||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH} | ||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH} | ||
ninja -C build install | ||
- name: Run tests | ||
if: matrix.run_tests | ||
run: | | ||
# Running the test suite | ||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH} | ||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH} | ||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH} | ||
if [ "$NEWSHELL" == "true" ]; then | ||
export R2_CFG_NEWSHELL=1 | ||
fi | ||
cd test | ||
radare2 -N -Qc 'e cfg.newshell' - | ||
make | ||
env: | ||
NEWSHELL: ${{ matrix.newshell }} | ||
- name: Run fuzz tests | ||
if: matrix.run_tests && contains(github.event.pull_request.head.ref, 'fuzz') | ||
run: | | ||
export PATH=${HOME}/bin:${HOME}/.local/bin:${PATH} | ||
export LD_LIBRARY_PATH=${HOME}/lib/$(uname -m)-linux-gnu:${HOME}/lib:${HOME}/lib64:${LD_LIBRARY_PATH} | ||
export PKG_CONFIG_PATH=${HOME}/lib/pkgconfig:${HOME}/lib/$(uname -m)-linux-gnu/pkgconfig:${PKG_CONFIG_PATH} | ||
cd test | ||
make fuzz-tests |
Oops, something went wrong.