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 2 years ago: jesus_bv joined this project.
  • over 2 years ago: seanmarlow added keyword "obs" to this project.
  • over 2 years ago: seanmarlow added keyword "docker" to this project.
  • over 2 years ago: seanmarlow added keyword "containers" to this project.
  • over 2 years ago: seanmarlow added keyword "podman" to this project.
  • over 2 years ago: seanmarlow added keyword "deployment" to this project.
  • over 2 years ago: seanmarlow added keyword "iac" to this project.
  • over 2 years ago: seanmarlow added keyword "salt" to this project.
  • over 2 years ago: seanmarlow added keyword "terraform" to this project.
  • over 2 years ago: seanmarlow added keyword "ci/cd" to this project.
  • over 2 years ago: seanmarlow added keyword "python3" to this project.
  • over 2 years ago: seanmarlow started this project.
  • over 2 years ago: seanmarlow originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    Migrate suntorytimed/resourcespace container to an openSUSE base by suntorytimed

    Project Description

    For quite some time I a...


    WASM support for cloud native buildpacks by atgracey

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


    Uyuni/SUSE Manager Server Helm chart on k3s by moio

    ![Combined icons of k3s and Uyuni](https://user...


    Home mirror 101 refresh of hotstuff by lkocman

    I'm running a simple home mirror, but I managed...


    Package docker compose v2 by hennevogel

    Package [compose](https://github.com/docker/com...


    Uyuni/SUSE Manager Server Helm chart on k3s by moio

    ![Combined icons of k3s and Uyuni](https://user...


    Package docker compose v2 by hennevogel

    Package [compose](https://github.com/docker/com...


    Migrate suntorytimed/resourcespace container to an openSUSE base by suntorytimed

    Project Description

    For quite some time I a...


    Uyuni/SUSE Manager Server Helm chart on k3s by moio

    ![Combined icons of k3s and Uyuni](https://user...