GithubHelp home page GithubHelp logo

mtempling / dg Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 11 KB

How to test dmce-gui using incus containers.

Home Page: https://github.com/PatrikAAberg/dmce-gui

License: MIT License

Shell 100.00%
godot incus owel xfce xpra

dg's Introduction

dg

Automatic testing of dmce-gui within an incus container.

architecture

ove digraph
                        ┌─────────────┐
       ┌─────────────── │     ag      │
       │                └─────────────┘
       │                  │
       │                  │
       │                  ▼
       │                ┌─────────────┐
       │                │    base     │ ◀┐
       │                └─────────────┘  │
       │                                 │
  ┌────┘                                 │
  │                                      │
  │  ┌────────────┐     ┌─────────────┐  │
  │  │ screencast │ ◀── │     dg      │  │
  │  └────────────┘     └─────────────┘  │
  │                       │              │
  │                       │              │
  │                       ▼              │
  │  ┌────────────┐     ┌─────────────┐  │
  │  │   godot    │ ◀── │  dmce_gui   │  │
  │  └────────────┘     └─────────────┘  │
  │                       │              │
  │                       │              │
  │                       ▼              │
  │  ┌────────────┐     ┌─────────────┐  │
  └▶ │     xz     │ ◀── │    dmce     │ ─┘
     └────────────┘     └─────────────┘
                          │
                          │
                          ▼
                        ┌─────────────┐
                        │ clang_tools │
                        └─────────────┘

setup

curl -sSL https://raw.githubusercontent.com/Ericsson/ove/master/setup | bash -s dg https://github.com/mtempling/dg.git
cd dg
source ove
ove distrocheck base ubuntu/22.04/amd64

The "ove distrocheck..." command will first make sure that both incus and Xpra is installed on the host. NOTE: The incus installation is just a minimal installation.

When incus and Xpra has been installed, distrocheck will continue and launch an incus container based on Ubuntu 22.04. A few packages will be installed within the container:

  • openssh
  • OVE packages
  • Xfce
  • Xpra

Finally the post-distrocheck hook script will install a Xfce autostart file and restart the container. The autostart script will launch the following command:

ove distcheck dg

Looking into the dg's distcheck code one can see that ag is built, then OVE is configured to screenrecord all OVE commands. Finally, "ove dmce trace-lazy ag" is launched two times. First with Terminal GUI then using the Godot GUI.

useful commands

Attach to the container and peek into the action:

xpra attach --ssh=ssh ssh:${OVE_DISTROCHECK_CONTAINER_NAME:?}

Find the recorded screencast:

find $OVE_LOG_DIR -type f -name "*-ove-dmce-${OVE_DISTROCHECK_CONTAINER_NAME:?}-dg.mp4"

Remove the container:

incus delete -f ${OVE_DISTROCHECK_CONTAINER_NAME:?}

configuration

Check this file.

dg's People

Contributors

mtempling avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.