PRs are welcome 馃コ.
This is how you interact with the repository's local operations. For example, building and running containers.
This is all done though make, and the Makefile, and the Makefile.language-container.mk make this all go.
This works via: make [folder], and can be enriched with parameters:
| Option | Short | Meaning |
|---|---|---|
INTERACTIVE |
I |
Open an interactive terminal into the language container |
RUN |
R |
Build (if necessary) and run the hello-world application |
MOUNT |
M |
Mount your local files into the container Use in conjunction with the above parameters. |
For example:
make perl R=1
make perl R=1 M=1
make perl INTERACTIVE=1
make perl INTERACTIVE=1 MOUNT=1
make perl I=1This is how you bootstrap a new language. Behind the scenes? It's a cp -r .template [lang], a copy of the template directory.
The newly created files will be visible with a git status or equivalent, and will need to be committed when you're done. The materialized template should have enough to get you started.
The Magic Stuff, is all the CI/CD and automation that makes this project extend beyond the repository. A rough overview:
- Publishes to DockerHub!
- Each directory is published, except the ones in .no-publish
- Only publishes what's necessary!
- DockerHub image overview generation!
- There are weekly builds for all language containers