Combine remaining install tests

This commit is contained in:
Jordan Carlin 2024-10-15 00:11:09 -07:00
parent 53d4086947
commit 10f0e5eeee
No known key found for this signature in database

View File

@ -34,6 +34,16 @@ jobs:
- name: almalinux-9 - name: almalinux-9
os: ubuntu-latest os: ubuntu-latest
image: almalinux:9 image: almalinux:9
# User level installation
- name: user-install
os: ubuntu-latest
image: null
user: true
# Custom location installation
- name: custom-install
os: ubuntu-latest
image: null
riscv_path: /home/riscv
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
container: container:
@ -60,9 +70,18 @@ jobs:
fi fi
df -h df -h
- name: Install - name: Install
run: sudo ./bin/wally-tool-chain-install.sh --clean run: |
if [ -z ${{ matrix.user }} ]; then
sudo ./bin/wally-tool-chain-install.sh --clean ${{ matrix.riscv_path }}
else
sudo ./bin/wally-package-install.sh
. /bin/wally-tool-chain-install.sh --clean ${{ matrix.riscv_path }}
fi
- name: Set Environment Variables - name: Set Environment Variables
run: | run: |
if [ ! -z ${{ matrix.riscv_path }} ]; then
sed -i 's,exit 1,export RISCV=${{ matrix.riscv_path }},g' setup.sh
fi
source setup.sh source setup.sh
echo "RISCV=$RISCV" >> "$GITHUB_ENV" echo "RISCV=$RISCV" >> "$GITHUB_ENV"
- name: Upload Installation Logs - name: Upload Installation Logs
@ -77,7 +96,7 @@ jobs:
make riscof --jobs $(nproc --ignore 1) make riscof --jobs $(nproc --ignore 1)
- name: Remove Buildroot to Save Space - name: Remove Buildroot to Save Space
run: | run: |
sudo rm -rf /opt/riscv/buildroot/output/build sudo rm -rf $RISCV/buildroot/output/build
df -h df -h
- name: Regression - name: Regression
run: | run: |
@ -89,100 +108,3 @@ jobs:
with: with:
name: regression-logs-${{ matrix.name }} name: regression-logs-${{ matrix.name }}
path: ${{ github.workspace }}/sim/verilator/logs/ path: ${{ github.workspace }}/sim/verilator/logs/
user_install:
name: Test installation with user permissions
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Clone Necessary Submodules
run: |
git config --global --add safe.directory '*'
git submodule update --init addins/riscv-arch-test addins/verilog-ethernet
- name: Free up storage
run: |
df -h
./.github/cli-space-cleanup.sh
df -h
- name: install packages with sudo
run: sudo ./bin/wally-package-install.sh
- name: install
run: ./bin/wally-tool-chain-install.sh --clean
- name: Upload installation logs
uses: actions/upload-artifact@v4
if: always()
with:
name: installation-logs-user-install
path: ~/riscv/logs/
- name: make tests
run: |
source setup.sh
make riscof --jobs $(nproc --ignore 1)
- name: check storage
run: |
sudo rm -rf /opt/riscv/buildroot/output/build
df -h
- name: regression
run: |
source setup.sh
regression-wally
- name: Upload regression logs
uses: actions/upload-artifact@v4
if: always()
with:
name: regression-logs-user-install
path: ${{ github.workspace }}/sim/verilator/logs/
custom_location_install:
name: Test installation with custom location ${{ matrix.path }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
path: ["/home/riscv"]
steps:
- name: Unique name for Artifacts
id: prep_artifact_name
run: |
name=$(echo -n "${{ matrix.os }}" | sed -e 's/[ \t:\/\\"<>|*?]/-/g' -e 's/--*/-/g')
echo "ARTIFACT_NAME=$name" >> $GITHUB_ENV
- uses: actions/checkout@v4
- name: Clone Necessary Submodules
run: |
git config --global --add safe.directory '*'
git submodule update --init addins/riscv-arch-test addins/verilog-ethernet
- name: Free up storage
run: |
df -h
./.github/cli-space-cleanup.sh
df -h
- name: install
run: sudo ./bin/wally-tool-chain-install.sh --clean ${{ matrix.path }}
- name: Upload instalation logs
uses: actions/upload-artifact@v4
if: always()
with:
name: installation-logs-custom-location-install-${{ env.ARTIFACT_NAME }}
path: ${{ matrix.path }}/logs/
- name: Update setup.sh with new $RISCV location
run: sed -i 's,exit 1,export RISCV=${{ matrix.path }},g' setup.sh
- name: make tests
run: |
source setup.sh
make riscof --jobs $(nproc --ignore 1)
- name: check storage
run: |
sudo rm -rf ${{ matrix.path }}/buildroot/output/build
df -h
- name: regression
run: |
source setup.sh
regression-wally
- name: Upload regression logs
uses: actions/upload-artifact@v4
if: always()
with:
name: regression-logs-custom-location-install-${{ env.ARTIFACT_NAME }}
path: ${{ github.workspace }}/sim/verilator/logs/