- what docker artifacts do you mean…
docker produce two types of artifacts - layers and images, images consists of layers.
-
BUILD
actions does not share the same filesystem as it runs in the docker container, am I understand buddy.works correct?
-
sample pipeline i was expecting to work (corresponding docs)
- pipeline: 'Build and Test'
ref_name: '(refs\/pull\/\d+)'
ref_type: WILDCARD
trigger_mode: ON_EVERY_PUSH
trigger_condition: ALWAYS
fail_on_prepare_env_warning: true
auto_clear_cache: false
actions:
- action: "Make Build"
type: BUILD
working_directory: /buddy/generic
docker_image_name: docker.io/library/golang
docker_image_tag: 1.15.7
execute_commands:
- - make pull_huge_dependency
volume_mappings:
- /:/buddy/generic
- action: "Concurrent Build: RunTask 1"
type: BUILD
working_directory: /buddy/generic
docker_build_action_id: 0
use_image_from_action: true
run_next_parallel: true
docker_image_name: docker.io/library/golang
docker_image_tag: 1.15.7
execute_commands:
- make pull_huge_dependency
- make run_tests
volume_mappings:
- /:/buddy/generic
- action: "Concurrent Build: RunTask 2"
type: BUILD
working_directory: /buddy/generic
docker_build_action_id: 0
use_image_from_action: true
run_next_parallel: true
execute_commands:
- make pull_huge_dependency
- make run_static_analicys
volume_mappings:
- /:/buddy/generictoday
- action: "Concurrent Build: RunTask 3"
type: BUILD
working_directory: /buddy/generic
docker_image_name: docker.io/library/golang
docker_image_tag: 1.15.7
docker_build_action_id: 0
use_image_from_action: true
run_next_parallel: true
execute_commands:
- make pull_huge_dependency
- make run_build_process
volume_mappings:
- /:/buddy/generictoday
but looks like its supposed to work only if the previous image built by the DOCKERFILE
action, which automatically push image to the registry (the thing i would like to avoid). The documentation also not make it clear that docker_build_action_id
if reffereted to DOCKERFILE
, butnot BUILD
action (which also runs and build some image).
I think clients can gain from implementing the feature to keep the BUILD process docker image to use it on next parallel build till the end of pipeline.