summaryrefslogtreecommitdiffstats
path: root/doc/containers.md
blob: cbb62a04ebc7da0e0baafe13f37b6666dc20bc80 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
## Containers

The containers you use to run your builds are handled the following way:

1. Dependencies and sources are copied to the container at `/inputs`,
   the compiled packaging script is copied to the container at `/script`
2. The script is started
3. The result artifacts are copied from `/outputs` to the staging store


### Conventions

There are some conventions regarding packages, dependencies, sources and so
on. Those are listed here.

1. Dependencies are named `/inputs/<packagename>-<packageversion>.pkg` inside the container
2. Sources are named `/inputs/src-<hashsum>.source`
3. Outputs are expected to be named `/outputs/<packagename>-<packageversion>.pkg`

The reason for the names lies in the artifact parsing mechanism.
If the package is named differently, the artifact parsing mechanism is not able
to recognize the package and might fault, which causes butido to stop running.