Mash is a Python based CI/CD pipeline for automated testing and publishing of public cloud images. Currently the production and development deployment for the package is inconsistent, slow and manual. This is a barrier to rapid development, deployment and testing. It also means the development workflow is different than production. This can lead to production issues which were not seen during development.

In order to modernize the Mash workflow I plan to spend the week digging into a plethora of tools to first learn then build out a new workflow. The goal is to simplify deployment by choosing tools that provide consistency, modularity and repeatability. By leveraging the best tools available we can harden the code and accelerate the release cycle.

Key metrics to target are:

  • Mash deployment and runtime environment is consistent (dev, staging, prod, etc.).
  • Mash runtime environment is decoupled from the host.
  • Mash can be deployed with one click.
  • Any Mash branch in GitHub can be deployed with a single config change.
  • Mash has an automated E2E test suite using the new deployment

Technologies to investigate:

  • Docker, Podman, containers
  • OBS (packages, images)
  • Salt
  • Terraform (stretch goal to handle cloud instance management)
  • Pytest, Testinfra, img-proof for E2E testing

Looking for hackers with the skills:

containers podman deployment iac salt terraform ci/cd python3 docker obs

This project is part of:

Hack Week 19

Activity

  • over 3 years ago: jesus_bv joined this project.
  • over 3 years ago: seanmarlow added keyword "obs" to this project.
  • over 3 years ago: seanmarlow added keyword "docker" to this project.
  • over 3 years ago: seanmarlow added keyword "containers" to this project.
  • over 3 years ago: seanmarlow added keyword "podman" to this project.
  • over 3 years ago: seanmarlow added keyword "deployment" to this project.
  • over 3 years ago: seanmarlow added keyword "iac" to this project.
  • over 3 years ago: seanmarlow added keyword "salt" to this project.
  • over 3 years ago: seanmarlow added keyword "terraform" to this project.
  • over 3 years ago: seanmarlow added keyword "ci/cd" to this project.
  • over 3 years ago: seanmarlow added keyword "python3" to this project.
  • over 3 years ago: seanmarlow started this project.
  • over 3 years ago: seanmarlow originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    Image generation AI in container using Radeon GPU by tjyrinki_suse

    [comment]: # (Please use the project descriptio...


    Improve Docker registry listing tool by rbranco

    Project Description

    [regview](https://git...


    openSUSE MicroOS based NAS by dmach

    [comment]: # (Please use the project descriptio...


    K3S Control Planes as a service by ademicev0

    [comment]: # (Please use the project descriptio...


    Containerfile / Dockerfile generator library by amanzini

    [comment]: # (Please use the project descriptio...


    Containerfile / Dockerfile generator library by amanzini

    [comment]: # (Please use the project descriptio...


    Uyuni test suite improvements by dgedon

    Project Description

    Uyuni is the upstream...


    drgn: implement crash top-level commands by marxin

    Project Description

    The goal of the proje...


    Create tool to analyze supportconfig to spot common SUSE Manager / Uyuni issues by cbosdonnat

    [comment]: # (Please use the project descriptio...


    Make orthos/cobbler more ansible aware by trenn

    Enhance ansible usage in orthos

    What is...


    Improve Docker registry listing tool by rbranco

    Project Description

    [regview](https://git...


    Containerized git server/client for playground and tutorials by mberti

    [comment]: # (Please use the project descriptio...


    Containerfile / Dockerfile generator library by amanzini

    [comment]: # (Please use the project descriptio...


    obs_scm_demo by smithfarm

    Project Description

    For a long time, I ha...


    OSSelot collaboration on legal reviews of community packages by lkocman

    [comment]: # (Please use the project descriptio...


    Improve error handling of the '/search' API endpoints of OBS by enavarro_suse

    Project Description

    Improve error handlin...


    Explore the integration between OBS and GitHub by pdostal

    Project Description

    The goals:

    1) When...


    Use systemd Service Templates to manage OBS workers by enavarro_suse

    Project Description

    Currently, the system...