Echtzeitsysteme / gips-vm

CI and build scripts for the GIPS framework VM based on Ubuntu.
https://gips.dev
GNU General Public License v3.0
1 stars 0 forks source link
eclipse-modeling-framework emf emoflon graph-transformation gt ilp integer-linear-programming mdse model model-driven-software-engineering modeling pattern-matching pm simulation

GIPS-VM

Build GIPS VM

This repository is used to automatically build a GIPS virtual machine (VM).

Packages/Configuration

Usage/Installation

Please notice:

Runner requirements

There are two ways to provide this project with runners.

GitHub-hosted macOS-based runners

Unfortunately, only the macOS-based GitHub-hosted action runners do support nested virtualization: https://github.com/actions/runner-images/issues/433

Therefore, we've adapted the CI-configuration to provision the GIPS-VM on a macOS-based runner until nested virtualization support gets added to the Linux-based runners.

Unfortunately, these workflows did break very often lately so we switched back to self-hosted Linux-based runners.

Self-hosted Linux-based runners

Currently, all actions must be run by a self-hosted GitHub runner, because GitHub-hosted runners do not provide the VT-x flag:

[...]
==> ubuntu: Booting VM...
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.

Command: ["startvm", "594c50ca-4ec6-4ff6-b785-2c6ba627bffd", "--type", "headless"]

Stderr: VBoxManage: error: VT-x is not available (VERR_VMX_NO_VMX)
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ConsoleWrap, interface IConsole
Error: Process completed with exit code 1.

In order to run the "GitHub Actions" pipeline on a self-hosted runner, you must ensure that you have at least one properly configured Linux-based runner added to this GitHub project.

Required packages (at least):

Please keep in mind that your runner (VM) needs the virtualization flag enabled and at least 10 GB of RAM!