GithubHelp home page GithubHelp logo

documentation-6's Introduction

DEPRECATED

This project has been migrated to GNOME GitLab under World/gimp-ci. Refer to the documentation repository for better information. If you just want to build GIMP, then check out the GIMP development environment based on Docker. The Docker environment also allows you to run GIMP if you have Xorg display; instructions therein.

GIMP CI Documentation

This is centralized documentation which helps to onboard a new maintainer or contributor to the GIMP CI system.

Project Goals

  • Make configuration of the GIMP CI system transparent for developers and contributors.
  • Provide a means for contributors of GIMP to easily provision a development environment for building GIMP.
  • Make use of modern technologies and concepts such as infrastructure as code, continuous integration, and continuous delivery.

The above goals will be met when a contributor is able to:

  1. Fully provision a Jenkins build system for building GIMP.
  2. Fully provision a GIMP development environment for contributing to GIMP.

About build.gimp.org

  • Point of Contact: Sam Gleske
  • Sponsors: flamingtext provides hardware for the build system and majority of bandwidth. The GNOME Foundation provides the HTTP load balancer.
  • Currently, none of the automation scripts are being used to configure build.gimp.org. The automation scripts are being developed to replace it.

There is an HTTP load balancer in front of GIMP build server controlled by the GNOME infrastructure team. SSL is terminated by this load balancer.

On the back end, the Jenkins build system lives on a virtual machine provided by flamingtext. Host is CentOS 6 and the guest is Debian Testing. GIMP developers prefer to develop GIMP on Debian Testing so that is the OS of choice for the GIMP CI system.

Hardware specs:

  • CPU: Intel(R) Core(TM) i7 CPU 870 @ 2.93GHz stepping 05 (6 cores available to guest)
  • RAM: 8GB (4GB available to guest)
  • Disk: 2x500GB HDD (150GB available to guest)
  • Virtualization Layer: VMWare
  • Network speed: Gigabit LAN; dual 100BaseT WAN.

watchdog is configured on the build system to monitor the health of Jenkins and repair it automatically.

Jenkins is installed via the jenkins debian package.

What will replace build.gimp.org

  • jenkins-os-packages will create a DEB package with exact version of Jenkins as well as exact version of all plugins.
  • Ansible playbooks will be created to properly configure all of the different parts of Jenkins. Jenkins may be configured by a combination of Script Console Scripts and perhaps the Job DSL plugin.
  • Reuse as much code as possible which is why use of Ansible roles is emphasized.

Developing new infrastructure

If you need to develop new infrastructure as code, then it should be broken out into Ansible roles and referenced by Ansible playbooks. See creating ansible roles.

See existing Ansible roles.

documentation-6's People

Contributors

samrocketman 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.