name: Test on: push: branches: [ main ] pull_request: branches: [ main ] workflow_dispatch: jobs: docker-run: if: ${{ !github.event.act }} # skip during local actions testing runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Install requirements # make sure nvme-cli installed (we need it for /etc/nvme/hostnqn and /etc/nvme/hostid) run: | sudo apt update sudo apt-get install --yes --quiet nvme-cli - name: Load Kernel drivers run: sudo modprobe -v nvme-fabrics - name: Fix D-BUS run: | sed 's/@STAFD_DBUS_NAME@/org.nvmexpress.staf/g' etc/dbus-1/system.d/org.nvmexpress.staf.in.conf | sudo tee /usr/share/dbus-1/system.d/org.nvmexpress.staf.conf sed 's/@STACD_DBUS_NAME@/org.nvmexpress.stac/g' etc/dbus-1/system.d/org.nvmexpress.stac.in.conf | sudo tee /usr/share/dbus-1/system.d/org.nvmexpress.stac.conf sudo systemctl reload dbus.service - name: Build & Start containers run: docker-compose -f "docker-compose.yml" up --detach --build - name: Run tests run: | docker-compose ps docker-compose exec -T stafd stafctl ls docker-compose exec -T stafd stafctl status docker-compose exec -T stacd stacctl ls docker-compose exec -T stacd stacctl status docker-compose logs - name: Logs if: failure() run: | docker-compose ps || true docker-compose logs || true - name: Stop containers if: always() run: docker-compose -f "docker-compose.yml" down