GithubHelp home page GithubHelp logo

codebug8 / build-system Goto Github PK

View Code? Open in Web Editor NEW

This project forked from almalinux/build-system

0.0 0.0 0.0 64 KB

The AlmaLinux OS project Build System documentation and issue tracker.

License: Creative Commons Attribution Share Alike 4.0 International

build-system's Introduction

About the AlmaLinux Build System

What is AlmaLinux Build System? AlmaLinux Build System is a project designed to automate processes of building distribution and packages, testing packages, signing packages, and releasing them to public repositories. The general purpose of the AlmaLinux Build System is to minimize manual work in order to reduce the amount of human-caused mistakes. We started to develop our product in 2012 for CloudLinux OS building and automatization. Specifically for AlmaLinux's other projects KernelCare and Imunify360 support, we launched the ability to build and test deb packages type. Besides being used for typical testing scenarios, AlmaLinux Build System is integrated with Jenkins for complicated scenarios.

Why did we roll our own?

The main reason is to help our quickly-growing community to learn how to build and test rpm packages faster and easier. As well, the support of deb packaged was required. So AlmaLinux needed an integrated pipeline for all the distribution maintenance processes: building, testing, signing and releasing packages. To manage all these phases together, not separately, successfully and effectively we created AlmaLinux Build System.

Development

image

  • Build System's Master Service interacts via API interface with UI and CLI tools.
  • Build Node sends requests to the Master Service and receives Build Tasks to build packages. After being built these packages are kept as artifacts at the Artifact Storage.
  • Test System sends a request and receives Test Tasks (builds) to test built packages from Artefact Storage. Test System test packages via Test Nodes (eg. Docker or OpenNebula with different architectures) and send test artifacts or test logs and reports back to Artifact Storage.
  • Sign Server sends a request and receives sign tasks to sign packages with our PGP key. It takes unsigned packages from Artifact Storage and puts them back signed.
  • Release System sends a request and receives release tasks to upload signed packages to public repositories.
  • Git Server sends updates via API to Master Service. It does it with the help of two services: gitea-listener and git-cacher

AlmaLinux Build System supports different architectures such as x86_64, aarch64 and ppc64le. Build system and test system are scalable. Also, their benefits are auto modification and debranding. We support several types of packages (also for Ubuntu and Debian).

Reporting issues and track the progress

All issues should be reported to this project. A GitHub's kanban board is used for the Build System project to track the progress.

build-system's People

Contributors

ezamriy avatar iseletsk avatar jaboutboul 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.