debian-forge-composer/internal
Ondřej Budai 08c5eaf6a6 store disk artifacts per image build instead of per compose
In #221 Compose was refactored: Now it can have multiple image builds. More
image builds result in more jobs. Each job has its own result (logs from
osbuild). Additionally, also targets are now a part of image build. With
local target this effectively means we can have multiple images per compose.

However, these artifacts (images & results) were stored only per compose
prior this commit, thus rendering the behaviour of composes with multiple
image builds undefined and racy.

This commit fixes it by storing all the artifacts per image build instead of
per compose. To achieve this feature, getComposeDirectory and
getImageBuildDirectory methods were created to centralize the path assembly.

Paths to artifacts prior this commit:
${COMPOSER_STATE_DIR}/outputs/${COMPOSE_ID}/*

Paths to artifacts after this commit:
${COMPOSER_STATE_DIR}/outputs/${COMPOSE_ID}/${IMAGE_BUILD_ID}/*
2020-02-14 11:53:38 +01:00
..
blueprint blueprints: fix group handling 2019-12-17 09:24:15 +01:00
common common: refactor build states into a separate file 2020-02-12 11:17:26 +01:00
compose drop the Compose.Image field 2020-02-14 11:53:38 +01:00
crypt crypt: make it possible to compile and test on macOS 2020-01-30 14:42:25 +01:00
distro distro: remove previous implementation of testing distro 2020-02-12 11:17:26 +01:00
jobqueue api/jobqueue: move build id to url 2020-02-14 11:53:38 +01:00
mocks/rpmmd Weldr API: use the new compose/store API 2020-02-12 11:17:26 +01:00
pipeline distro: add custom image size 2020-01-23 00:57:31 +01:00
rcm RCM API: return bad request instead of internal server error 2020-02-12 11:17:26 +01:00
rpmmd repositories: install the base repositories in the filesystem 2020-01-03 22:35:52 +01:00
store store disk artifacts per image build instead of per compose 2020-02-14 11:53:38 +01:00
target target: use the new types from common package 2020-02-12 11:17:26 +01:00
test api: implement /compose/log 2019-12-20 11:43:39 +01:00
upload upload/aws: Add basic S3 upload test 2020-01-16 13:14:15 +01:00
weldr store disk artifacts per image build instead of per compose 2020-02-14 11:53:38 +01:00