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 Project and libuv 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 Project 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, please read
GOVERNANCE.md to understand the process and reasoning we use for granting access
to the resources we manage.
The Node.js Project 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 Project’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.
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
Mailgun for some nodejs.org and iojs.org email services.
Tier-2 Providers
The Node.js Project’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.
Microsoft: Provides Windows-related test infrastructure
on Azure for the Node.js CI system.
Joyent: A private cloud infrastructure company, provides SmartOS
and other test/build resources for the Node.js CI system, resources for
backup of our critical infrastructure, redundancy for nodejs.org and or
unencrypted.nodejs.org mirror.
Scaleway: Scalable cloud platform designed for developers &
growing companies, contributes key ARMv7 hardware for test and release
builds for the Node.js CI system.
Cloudflare: 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 / ARM64 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.
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 and additional resources for powering our CI system.
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 Project 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
If you would like to donate hardware to the Node.js Project, please reach
out to the Build Working Group, via the #nodejs-build channel on the OpenJS Foundation Slack
instance 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.
The Build WG will keep build configuration required for a release line for 6
months after the release goes End-of-Life, in case further build or test runs
are required. After that the configuration will be removed.
Some of the Node.js Build ARM resources: 3 generations of Raspberry Pi and other ARMv7 & ARM64 hardware
Node.js Build Working Group
Chat with us on Slack.
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 Project and libuv 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 Project 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, please read GOVERNANCE.md to understand the process and reasoning we use for granting access to the resources we manage.
Build WG Members
@abmusse - Abdirahim Musse
@AshCripps - Ash Cripps
@joaocgreis - João Reis
@joyeecheung - Joyee Cheung
@MoLow - Moshe Atlow
@node-forward-build - node-forward build infrastructure
@richardlau - Richard Lau
@rvagg - Rod Vagg
@ryanaslett - Ryan Aslett
@StefanStojanovic - Stefan Stojanovic
@sxa - Stewart X Addison
@targos - Michaël Zasso
@UlisesGascon - Ulises Gascón
Above list is manually synced with the gpg member list.
Infra Admins
Jenkins Admins
Admin access to https://ci.nodejs.org/.
Release Admins
Access to release secrets.
Above list is manually synced with the gpg member list.
Release Jenkins Admins
Admin access to https://ci-release.nodejs.org/.
GitHub Bot Admins
If you are interested in joining the Build WG, or for more information about accesses and team roles see GOVERNANCE.md.
Emeriti
Infrastructure Providers
The Node.js Project 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 Project’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.
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 Mailgun for some nodejs.org and iojs.org email services.
Tier-2 Providers
The Node.js Project’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.
Microsoft: Provides Windows-related test infrastructure on Azure for the Node.js CI system.
Joyent: A private cloud infrastructure company, provides SmartOS and other test/build resources for the Node.js CI system, resources for backup of our critical infrastructure, redundancy for nodejs.org and or unencrypted.nodejs.org mirror.
IBM:
Scaleway: Scalable cloud platform designed for developers & growing companies, contributes key ARMv7 hardware for test and release builds for the Node.js CI system.
Cloudflare: 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 / ARM64 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.
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 and additional resources for powering our CI system.
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 Project would like to thank the following individuals and companies that have donated miscellaneous hardware:
If you would like to donate hardware to the Node.js Project, please reach out to the Build Working Group, via the #nodejs-build channel on the OpenJS Foundation Slack instance 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.
The Build WG will keep build configuration required for a release line for 6 months after the release goes End-of-Life, in case further build or test runs are required. After that the configuration will be removed.