makes v24.01 releases: DevSecOps framework

DevSecOps framework

Makes

A software supply chain framework powered by Nix.

Ever needed to run applications locally to try out your code? Execute CI/CD pipelines locally to make sure jobs are being passed. Keep execution environments frozen for strict dependency control against supply chain attacks. Know the exact dependency tree of your application? Well, we have!

Makes is an open-source, production-ready framework for building CI/CD pipelines and application environments. It cryptographically signs direct and indirect dependencies, supports a distributed and completely granular cache, runs on Docker, VMs, and any Linux-based OS can be installed with just one command and can be extended to work with any technology.

DevSecOps framework

The goal of Makes is to provide an immutable software supply chain while keeping technical implementation as simple as possible.

Why

Designing a fast, reliable, reproducible, easy-to-use CI/CD system is no easy task.

While there are free and paid tools in the market like: AnsibleAPTApache AntApache MavenBuckChefDockerGradleGruntGulpMavenGNU MakeLeiningenNPMpipPackerRakeRPMsbtSCons, and yum:

  1. Real-world production systems are composed of several programming languages.

    Tools normally focus only 1.

  2. Real-world production systems contain hundreds of thousands of dependencies:

    • Compilers
    • Shared-Object libraries (.so)
    • Runtime interpreters
    • Configuration files
    • Vendor artifacts
    • Accounts / Credentials / Secrets

    Tools normally cannot fetch, configure, or set up such dependencies in an easy, automated, secure way. They just build or install.

  3. Real-world production systems have tens to hundreds of developers. They work across the globe from different machines, stacks, and operative systems.

    Tools normally cannot guarantee all of them an exactly equal, comfortable developing environment.

  4. Real-world production systems have tens to thousands of production servers that need to be deployed to.

    Tools normally cover the: How to build? and not the: How to deploy? (or the other way around).

  5. Real-world production systems are made of several micro-components that one need to orchestrate correctly, or fix Sunday morning, instead of sharing with family ⛱️.

  6. Real-world production systems need to be reliable and 100% available.

    But how with so much friction?

You can use Nix instead, which features:

  1. A single build-tool for everything

  2. Easy, powerful, modular and expressive dependency declaration. From compilers to vendor artifacts.

  3. Guarantees each developer an exactreproducible, comfortable environment in which to build and run stuff. Isolating as much as possible, reducing a lot of bugs along the way.

  4. Defines a way for you to deploy software perfectly.

  5. And therefore helps you build reliable and 100% available systems.

So, if Nix is that powerful: Why Makes, then?

  1. Makes stands on the shoulders of Nix.

  2. Makes is specialized in creating CI/CD systems that deliver reliable software to your end-users.

  3. Makes incorporates common workflows for formatting, linting, building, testing, managing infrastructure as code with Terraform, deploying to Kubernetes clusters, creating development environments, etc. You can enable such workflows in a few clicks, with as little code as possible, in many providers.

  4. Makes hides unnecessary boilerplate and complexity so you can focus in the business: Adding value to your customers, daily!

Goal

  • 🌟 Simplicity: Easy setup with a laptop, Docker, GitHub Actions, GitLab CI, Travis CI, Circle CI, and more!
  • 🍻 Sensible defaults: Good for all projects of any size, out-of-the-box.
  • 👯 Reproducibility: Any member of your team builds and gets exactly the same results.
  • 👩‍💻 Dev environments: Any member of your team with the required secrets can execute the entire CI/CD pipeline.
  • 🏇 Performance: A highly granular caching system so you only have to build things once.
  • :shipit: Extendibility: You can add custom workflows, easily.

Changelog v24.01

Install & Use

Copyright 2021 Fluid Attacks and contributors