126 lines
2.6 KiB
YAML
126 lines
2.6 KiB
YAML
kind: pipeline
|
|
type: docker
|
|
name: linux_amd64
|
|
|
|
environment:
|
|
CONAN_REVISIONS_ENABLED: "1"
|
|
|
|
platform:
|
|
os: linux
|
|
arch: amd64
|
|
|
|
volumes:
|
|
- name: dockersock
|
|
host:
|
|
path: /var/run/docker.sock
|
|
|
|
- name: py
|
|
temp: {}
|
|
|
|
- name: conan
|
|
host:
|
|
path: /root/.conan2/
|
|
|
|
|
|
services:
|
|
- name: docker
|
|
image: docker:dind
|
|
privileged: true
|
|
volumes:
|
|
- name: dockersock
|
|
path: /var/run/
|
|
|
|
steps:
|
|
- name: setup_environment
|
|
image: docker:latest
|
|
volumes:
|
|
- name: dockersock
|
|
path: /var/run/docker.sock
|
|
commands:
|
|
- until docker info; do echo "Waiting for Docker daemon..."; sleep 1; done
|
|
- docker build -t ubuntu_amd64 -f ./tools/docker/linux_amd64 .
|
|
- docker images
|
|
|
|
- name: log_info
|
|
image: ubuntu_amd64:latest
|
|
pull: if-not-exists
|
|
volumes:
|
|
- name: py
|
|
path: /opt/venv/
|
|
|
|
commands:
|
|
- . /opt/venv/bin/activate
|
|
- whoami
|
|
- uname -a
|
|
- pip --version
|
|
- python3 --version
|
|
- conan --version
|
|
- gcc --version
|
|
- g++ --version
|
|
- clang --version
|
|
- clang++ --version
|
|
- clang-tidy --version
|
|
|
|
- name: build_gcc
|
|
image: ubuntu_amd64:latest
|
|
pull: if-not-exists
|
|
volumes:
|
|
- name: py
|
|
path: /opt/venv/
|
|
- name: conan
|
|
path: /root/.conan2
|
|
|
|
commands:
|
|
- . /opt/venv/bin/activate
|
|
- rm -rvf ./build
|
|
- export CC=$(which gcc)
|
|
- export CXX=$(which g++)
|
|
|
|
- conan profile detect -e
|
|
- cp ./tools/conan/profiles/linux_gcc_amd64 $(conan profile path default)
|
|
- conan install . --build=missing
|
|
- conan build .
|
|
|
|
- ./build/Release/modules/light/light
|
|
|
|
- name: build_clang
|
|
image: ubuntu_amd64:latest
|
|
pull: if-not-exists
|
|
volumes:
|
|
- name: py
|
|
path: /opt/venv/
|
|
- name: conan
|
|
path: /root/.conan2
|
|
|
|
commands:
|
|
- . /opt/venv/bin/activate
|
|
- rm -rvf ./build
|
|
- export CC=$(which clang)
|
|
- export CXX=$(which clang++)
|
|
|
|
- conan profile detect -e
|
|
- cp ./tools/conan/profiles/linux_clang_amd64 $(conan profile path default)
|
|
- conan install . --build=missing
|
|
- conan build .
|
|
|
|
- ./build/Release/modules/light/light
|
|
|
|
- name: static_analysis
|
|
image: ubuntu_amd64:latest
|
|
pull: if-not-exists
|
|
commands:
|
|
- echo "[TODO] Implement static analysis"
|
|
|
|
- name: run_tests
|
|
image: ubuntu_amd64:latest
|
|
pull: if-not-exists
|
|
commands:
|
|
- echo "[TODO] Implement tests"
|
|
- ./build/Release/modules/light/light
|
|
|
|
- name: report_coverage
|
|
image: ubuntu_amd64:latest
|
|
pull: if-not-exists
|
|
commands:
|
|
- echo "[TODO] Implement coverage report"
|