Better build and test infra for Node.
Pull request Compare This branch is 255 commits behind nodejs:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
ansible
backup
doc
jenkins
setup
static-assets
tools/jenkins-status
.gitignore
ONBOARDING.md
README.md

README.md

NodeSource ARM Cluster

(our arm cluster - picture is CC BY-SA 3.0 AU, Rod Vagg)

Node.js Build Working Group

Chat with us! We use IRC: #node-build at Freenode.

Purpose

The Node.js Build Working Group maintains and controls infrastructure used for continuous integration (CI), releases, benchmarks, web hosting (of nodejs.org and other Node.js web properties) and more.

Our mission is to provide Node.js Foundation projects with solid computing infrastructure in order to improve the quality of the software itself by targeting correctness, speed and compatibility and to ensure streamlined delivery of binaries and source code to end-users.

This repository contains information used to set up and maintain the various pieces of Node.js Foundation infrastructure managed by the Build Working Group. It is intended to be open and transparent, if you see any relevant information missing please open an issue. If you are interested in joining check out this.

Build WG Members

Infra Admins

Release Admins

Github Bot Admins

For more information about accesses and team roles see access.md.

Infrastructure Providers

The Node.js Foundation is proud to receive contributions from many companies, both in the form of monetary contributions in exchange for membership or in-kind contributions for required resources. The Build Working Group collaborates with the following companies who contribute various kinds of cloud and physical hardware to the Node.js project.

Tier-1 Providers

The Node.js Foundation's tier-1 infrastructure providers contribute the largest share of infrastructure to the Node.js project. Without these companies, the project would not be able to provide the quality, speed and availability of test coverage that it does today.

Tier 1 Infrastructure Providers

  • DigitalOcean: a popular cloud hosting service, provides a significant amount of the resources required to run the Node.js project including key CI infrastructure/servers required to host nodejs.org.

  • Rackspace: a popular managed cloud company, provides significant resources used to power much of the Node.js project's CI system, including key Windows compilation servers, along with additional services such as object storage for backups via Cloud Files and Mailgun for some nodejs.org email services.

Tier-2 Providers

The Node.js Foundation's tier-2 infrastructure providers fill essential gaps in architecture and operating system variations and shoulder some of the burden from the tier-1 providers, contributing to availability and speed in our CI system.

Tier 2 Infrastructure Providers

  • Microsoft: provides Windows-related test infrastructure on Azure for the Node.js CI system.

  • Joyent:, a public/private cloud infrastructure company, provides SmartOS and other test/build resources for the Node.js CI system.

  • IBM:

  • Voxer: a voice, text, photo and video messaging service and well-known Node.js early-adopter donated and host OS X hardware for building and testing via the Node.js project's CI system.

  • Scaleway: a "BareMetal" SSD cloud server provider, contributes key ARMv7 hardware for test and build for the Node.js CI system.

  • NodeSource: a Node.js enterprise products and services company, donates hardware and hosting for most of the Node.js project's ARM test and build infrastructure.

  • CloudFlare: a CDN and internet traffic management provider, are responsible for providing fast and always-available access to nodejs.org.

  • ARM: semiconductor intellectual property supplier, have donated ARMv8 hardware used by the Node.js CI system for build and testing Node.js.

  • Intel: "the world leader in silicon innovation," contributes hardware used for benchmarking in the Node.js project's CI system to advance and accelerate Node.js performance.

    Node.js project's CI system.

  • MacStadium: Managed hosting provider for Mac. Provides Mac hardware used for testing in the Node.js project's CI system.

  • Packet: Bare metal cloud for developers. Through their Works on Arm, Packet provides ARM64 build infrastructure.

Community Donations

From time to time, the Node.js Build Working group calls for, and receives donations of hardware in order to expand the breadth of the build and test infrastructure it maintains.

The Node.js Foundation would like to thank the following individuals and companies that have donated miscellaneous hardware:

  • NodeSource for a Raspberry Pi B, a Raspberry Pi B+, a Raspberry Pi 2 B and an ODROID-XU3
  • Andrew Chilton @chilts for a Raspberry Pi B
  • Julian Duque @julianduque for a Beaglebone Black
  • Andi Neck @andineck for 2 x Raspberry Pi B+
  • Bryan English @bengl for 2 x Raspberry Pi B+
  • Continuation Labs @continuationlabs for a Raspberry Pi B+
  • C J Silverio @ceejbot for a Raspberry Pi B+ and a Raspberry Pi 2 B
  • miniNodes for a Raspberry Pi B+ and a Raspberry Pi 2 B
  • Simeon Vincent @svincent for 3 x Raspberry Pi 2 B
  • Joey van Dijk @joeyvandijk and Techtribe for 2 x Raspberry Pi 2 B and an ODROID-U3+
  • Matteo Collina @mcollina for a Raspberry Pi 2 B
  • Sam Thompson @sambthompson for a Raspberry Pi 2 B
  • Louis Center @louiscntr for a Raspberry Pi 2 B
  • Dav Glass @davglass for 2 x ODROID-XU3, Raspberry Pi 1 B+, Raspberry Pi 3, power, networking and other miscellaneous equipment
  • Tessel for a Tessel 2
  • KahWee Teng @kahwee for a Raspberry Pi 3
  • Chinmay Pendharkar @notthetup and Sayanee Basu @sayanee for a Raspberry Pi 3
  • Michele Capra @piccoloaiutante for a Raspberry Pi 3
  • Pivotal Agency for two Raspberry Pi 3's
  • SecuroGroup for two Raspberry Pi 1 B+'s and two Raspberry Pi 3's
  • William Kapke @williamkapke for three Raspberry Pi 3's and networking equipment
  • Jonathan Barnett @indieisaconcept for a Raspberry Pi B+
  • James Snell @jasnell for a Raspberry Pi 2
  • Michael Dawson @mhdawson for a Raspberry Pi 1 B+
  • Chris Lea @chrislea for a Raspberry Pi 1 B+

If you would like to donate hardware to the Node.js Foundation, please reach out to the Build Working Group, via IRC (details at the top of this page) or contact Rod Vagg directly. The Build Working Group reserves the right to choose what hardware is actively used and how it is used, donating hardware does not guarantee its use within the testing infrastructure as there are many other factors that must be considered. Some donated hardware, while not used actively in the CI infrastructure, is used from time to time for R&D purposes by the project.

CI Software

Build and test orchestration is performed by Jenkins.