Domino manages a collection of files for every project. To add files to a project:
-
Upload them from the Domino web application.
-
Upload them from the Domino Command Line Interface.
-
Upload them through the Domino API.
-
Create and edit them in the Domino web application.
-
Execute code in a workspace or job to generate them.
When you modify a project’s files, it creates a new revision of the project. When you start an execution from a Domino project, the files in that project are loaded onto the machine hosting the execution. This machine is known as the executor.
The project files are mounted in the /mnt
directory, which is in the file system root of the executor.
Domino tracks changes to this directory.
When a Run completes, Domino records changes to /mnt
as a new revision of the project.
See Domino File System to learn how Domino loads files into runs and how runs change files.
You can also add external Git repositories to projects.
This makes the contents of those repositories available in runs and workspaces in the /repos
directory of the executor.
See Import Git Repositories.
There are several special files reserved by Domino. These files control the revisioning behavior, results display, and run comparison features of a project.
README files
All projects are initialized with a README
file, which is available in the Overview section of your project. README
files provide an overview of a project.
The contents of the README
file in your project are written in Markdown, a lightweight and easy-to-read/write markup language.
.dominoignore
By default, all projects include a .dominoignore
file in the project root folder.
This file functions like a .gitignore file, and can be used to exclude certain file patterns from being written to future revisions of the project files.
Domino ignores files that match the specified patterns when a new revision is created.
This includes revisions created by syncing from your local machine using the CLI, as well as new revisions created by a run or workspace session.
To ignore a file pattern, add it to .dominoignore
.
Patterns can be filenames, folder names, or UNIX shell regular expressions.
Adding a folder will ignore it along with all of its contents.
The *
symbol in UNIX shell regular expressions is a wildcard and will match.
All paths must be relative to the project root.
Review the contents of the default .dominoignore
in one of your projects to see commented examples of excluded patterns.
.dominoresults
Projects include a special file named .dominoresults
.
This file controls which files the results dashboard lists for this project’s runs.
It is constructed similar to .dominoignore
, but lists file patterns to include instead of exclude.
If no patterns are listed in this file, all files changed by a run will be included in the results dashboard.
If any patterns are listed in this file, only files which match those patterns will be included in the results dashboard for this project’s runs.
For example, a .dominoresults
file that contains the following lines will only list the following specified files in the results dashboard.
histogram.pdf
output.txt
A .dominoresults
file that contains the following lines lists all PDF files in the project, and any PNG files that are in the results/
folder.
*.pdf
results/*.png
dominostats.json
Domino’s compare jobs feature checks for a file named dominostats.json
to compare key measurables from individual runs.
This file is automatically deleted at the beginning of a run, and will only exist in the project revision produced by a run if a new version is written during execution.
See iew Execution Performance to learn more about this feature.