Continuous Integration #19

Open
opened 2022-07-02 17:58:06 +02:00 by BodgeMaster · 2 comments

Below are just a bunch of ideas, I would like to get input on this topic.

We need automation for building and testing the following:

  • multiple platforms (see below)
  • using multiple toolchains (GCC, Clang)
  • both X and Wayland where appropriate

The test results could be presented using a web interface. Development commits would be submitted to a separate branch and the CI system would merge it into master once all the tests have passed.

The reason why I would like to have testing with so many variables is that conforming only with generally accepted standards and not with specific quirks of a specific platform is preferable imo, also building for multiple hardware platforms is supposedly good for unveiling bugs.

If we cannot figure out a good way to spin up VMs/QEMU emulators for testing, I can provide a big endian system using real hardware, though spinning up VMs when needed is generally preferable.

Below are just a bunch of ideas, I would like to get input on this topic. We need automation for building and testing the following: - multiple platforms (see below) - using multiple toolchains (GCC, Clang) - both X and Wayland where appropriate The test results could be presented using a web interface. Development commits would be submitted to a separate branch and the CI system would merge it into master once all the tests have passed. The reason why I would like to have testing with so many variables is that conforming only with generally accepted standards and not with specific quirks of a specific platform is preferable imo, also building for multiple hardware platforms is supposedly good for unveiling bugs. If we cannot figure out a good way to spin up VMs/QEMU emulators for testing, I can provide a big endian system using real hardware, though spinning up VMs when needed is generally preferable.
BodgeMaster added the
Workflow
Fix Later
labels 2022-07-02 17:58:06 +02:00

CI boxes and systems

Things to figure out:

  • Things to figure out:
    • PowerMac issues:
      • GPU problem
      • FreeBSD K2 driver (optional)
    • Storage
      • PowerMac
      • "Beefy Pentium Box"
        • 80G ExcelStor HDD
        • Need to find another 80G drive bc the Maxtor died
      • ??? (whatever x86_64 machine we end up with)
    • Windows
      • Licenses
      • Building on Windows without ugly hacks
        • probably using W64 Devkit or similar
  • Systems to set up:
    • ppc64be (PowerMac G5):
      • Linux GNU (Debian Sid)
      • Linux Musl (optional, if switching to Gentoo for Linux GNU, might as well have another installation using musl)
      • FreeBSD (optional, assuming we can solve the driver problem)
    • ppc32 (PowerMac G5 running in 32-bit mode):
      • OpenBSD
      • FreeBSD (optional, assuming we can solve the driver problem)
      • Linux GNU (optional)
    • x86_32 ("Beefy Pentium Box")
      • Linux GNU (Void)
      • Alpine Linux (optional if it isn’t too much of a pita)
      • NetBSD (assuming drivers work as intended or after 10.0 release where they do)
      • FreeBSD
      • Windows 7
      • OpenBSD
    • x86_64 (???)
      • Linux GNU (Debian)
      • Linux GNU (Fedora)
      • Linux Musl (Void Linux)
      • Linux Musl+FreeBSD (Chimera Linux)
      • NetBSD
      • FreeBSD
      • OpenBSD
      • Illumos
      • Windows 10 or 11
      • Windows 7
CI boxes and systems Things to figure out: - Things to figure out: - [ ] PowerMac issues: - [ ] GPU problem - [ ] *FreeBSD K2 driver (optional)* - [ ] Storage - [ ] PowerMac - [ ] "Beefy Pentium Box" - 80G ExcelStor HDD - Need to find another 80G drive bc the Maxtor died - [ ] ??? (whatever x86_64 machine we end up with) - [ ] Windows - [ ] Licenses - [ ] Building on Windows without ugly hacks - probably using W64 Devkit or similar - Systems to set up: - ppc64be (PowerMac G5): - [x] Linux GNU (Debian Sid) - [ ] *Linux Musl (optional, if switching to Gentoo for Linux GNU, might as well have another installation using musl)* - [ ] *FreeBSD (optional, assuming we can solve the driver problem)* - ppc32 (PowerMac G5 running in 32-bit mode): - [ ] OpenBSD - [ ] *FreeBSD (optional, assuming we can solve the driver problem)* - [ ] *Linux GNU (optional)* - x86_32 ("Beefy Pentium Box") - [ ] Linux GNU (Void) - [ ] *Alpine Linux (optional if it isn’t too much of a pita)* - [ ] NetBSD (assuming drivers work as intended or after 10.0 release where they do) - [ ] FreeBSD - [ ] Windows 7 - [ ] OpenBSD - x86_64 (???) - [ ] Linux GNU (Debian) - [ ] Linux GNU (Fedora) - [ ] Linux Musl (Void Linux) - [ ] Linux Musl+FreeBSD (Chimera Linux) - [ ] NetBSD - [ ] FreeBSD - [ ] OpenBSD - [ ] Illumos - [ ] Windows 10 or 11 - [ ] Windows 7

Storage layout for "Beefy Pentium Box":

  • 76G MBR
    • Windows 7 (54G, 2 primary)
      • WinRE (a couple hundred megs)
      • C: 53G
    • unused (10G, 1 primary)
    • Extended partition (12G, 1 primary)
      • shared Linux swap (3G, 1 logical)
      • FreeBSD swap (3G, 1 logical)
      • OpenBSD swap (3G, 1 logical)
      • NetBSD swap (3G, 1 logical)
  • 76G GPT
    • GRUB BIOS boot (a couple megs)
    • Alpine Linux (8G)
      • / (6G)
      • /home (2G)
    • Void Linux (14G)
      • /boot (2G)
      • / (10G)
      • /home (2G)
    • shared Linux /srv/ci (8G)
    • Free space (4G, not a partition)
    • FreeBSD (15G)
    • OpenBSD (12G)
    • NetBSD (12G)
Storage layout for "Beefy Pentium Box": - 76G MBR - Windows 7 (54G, 2 primary) - WinRE (a couple hundred megs) - C: 53G - unused (10G, 1 primary) - Extended partition (12G, 1 primary) - shared Linux swap (3G, 1 logical) - FreeBSD swap (3G, 1 logical) - OpenBSD swap (3G, 1 logical) - NetBSD swap (3G, 1 logical) - 76G GPT - GRUB BIOS boot (a couple megs) - Alpine Linux (8G) - / (6G) - /home (2G) - Void Linux (14G) - /boot (2G) - / (10G) - /home (2G) - shared Linux /srv/ci (8G) - Free space (4G, not a partition) - FreeBSD (15G) - OpenBSD (12G) - NetBSD (12G)
Sign in to join this conversation.
There is no content yet.