So you want to contribute to the NodeSource Docker Images, thats great!
We appreciate any and all feedback. This document will serve as a guide to preparing, building, and testing these images before submitting a PR against this repo.
- Node Hydrogen (v18)
- Latest release of dante
- Internet Access
These images are built from templates located in /templates
.
The templates are populated according to the file templates/images.js
, which is automatically generated by tools/gen-images.sh
.
Once built, the images are tested by running dante test
.
Every Dockerfile generated by this repo must be tested. In order to accomplish this, we generate a file inventory.yml
which is consumed by the testing framework dante
. These tests are automatically run at the end of ./tools/build.sh
. If you would like to run them manually, execute the following:
dante test
Note: These images have interdependencies during the build process. Although dante supports parallel builds, this repo will not build properly if you use the parallel flag. As for right now, build the images serially.
An early decision of this project was to separate tasks into individual scripts that can be run independently of one another. This resulted in the tools
directoy becoming quite daunting. Luckily, everything is strung together by a single script, build.sh
.
This file stitches together all of the scripts necessary to generate and test these images. This is a good place to start reading if you are interested in learning how these images are created, or if you are interested in modifying the build process.
If you are interested in submitting a PR against this repo, please do the following:
- Run
./tools/build.sh
- Retrieve all logs created from
./logs/[date]/*.md
. Create gists for each log and link to them from the PR. - Delete the logs directory (logs should only be checked in for builds that push the the public repo)