Add support for files in reccmp-project detect
#107
Workflow file for this run
This file contains hidden or 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
| name: Test with Ghidra | |
| on: [push, pull_request] | |
| jobs: | |
| test: | |
| name: 'Ghidra integration tests' | |
| runs-on: 'ubuntu-latest' | |
| container: | |
| image: blacktop/ghidra:12.0.2 | |
| env: | |
| # not set by default for some reason | |
| GHIDRA_INSTALL_DIR: '/ghidra' | |
| steps: | |
| - uses: actions/checkout@v4 | |
| # We cannot reuse the fetch-deps step from the other unit tests because the cache is not shared if different | |
| # container images are used, see https://github.com/actions/cache/issues/1361#issuecomment-2611294058 | |
| - name: Restore original binaries | |
| id: cache | |
| uses: actions/cache@v3 | |
| with: | |
| path: binfiles | |
| key: legobin | |
| - name: Download original island binaries | |
| if: ${{ !steps.cache.outputs.cache-hit }} | |
| run: | | |
| wget https://legoisland.org/download/ISLE.EXE --directory-prefix=binfiles | |
| - name: Verify files | |
| run: | | |
| echo "5cf57c284973fce9d14f5677a2e4435fd989c5e938970764d00c8932ed5128ca binfiles/ISLE.EXE" | sha256sum --check | |
| # Install manually because the install action does not work | |
| - name: Install python | |
| shell: bash | |
| run: | | |
| apt-get update | |
| apt-get -y install python3 python3-pip python3-venv | |
| python3 -m venv .venv | |
| - name: Install python libraries | |
| shell: bash | |
| run: | | |
| source .venv/bin/activate | |
| pip install -r requirements.txt -r requirements-tests.txt | |
| - name: Run unit tests | |
| shell: bash | |
| run: | | |
| source .venv/bin/activate | |
| pytest . --binfiles=binfiles --require-ghidra |