| 1234567891011121314151617181920212223242526272829303132333435 |
- ---
- spec:
- inputs:
- as:
- default: test-docker
- stage:
- default: test
- root_dir:
- default: ${CI_PROJECT_DIR}
- description: 'Root directory for the Docker Compose project.'
- project_file:
- default: 'compose.yaml'
- description: 'Docker Compose file to use.'
- ---
- '$[[ inputs.as ]]':
- stage: '$[[ inputs.stage ]]'
- image: docker:latest
- variables:
- PROJECT_DIR: "$[[ inputs.root_dir ]]"
- PROJECT_FILE: "$[[ inputs.project_file ]]"
- before_script:
- - cd $PROJECT_DIR
- script:
- - docker compose -f $PROJECT_FILE config --quiet
- rules:
- - if: '$CI_COMMIT_REF_NAME == "main"'
- changes:
- - '$[[ inputs.root_dir ]]/$[[ inputs.project_file ]]'
- - if: |
- $CI_PIPELINE_SOURCE == "push" ||
- $CI_PIPELINE_SOURCE == "merge_request_event"
- changes:
- - '$[[ inputs.root_dir ]]/$[[ inputs.project_file ]]'
|