Skip to content

Resolving installation incompatibilities #1330

Resolving installation incompatibilities

Resolving installation incompatibilities #1330

Workflow file for this run

name: test
on:
workflow_dispatch:
inputs:
dependencies_artifact_postfix:
description: 'Postfix name to add to artifact name to download dependencies. This is use to download a specific artifact version from eProsima-CI.'
required: true
default: '_nightly'
pull_request:
push:
branches:
- main
schedule:
- cron: '0 0 * * *'
env:
code_packages_names: 'sustainml_cpp sustainml_py sustainml_docs sustainml_modules'
default_dependencies_artifact_postfix: '_nightly'
jobs:
#####################################################################
# TEST
multiplatform-build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
cmake_build_type:
- Release
- Debug
os:
- ubuntu-22.04
steps:
- name: Free Disk Space
run: |
echo "Disk space before cleanup:"
df -h
sudo rm -rf /usr/local/.ghcup
sudo rm -rf /opt/hostedtoolcache/CodeQL
sudo rm -rf /usr/local/lib/android/sdk/ndk
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc
sudo rm -rf /usr/local/share/boost
sudo apt-get clean
echo "Disk space after cleanup:"
df -h
- name: Sync repository
uses: eProsima/eProsima-CI/external/checkout@v0
with:
path: ${{ github.workspace }}/src/sustainml_lib
ref: ${{ github.head_ref || github.ref_name }}
- name: Install Fast DDS dependencies
uses: eProsima/eProsima-CI/multiplatform/install_fastdds_dependencies@v0
with:
cmake_build_type: ${{ matrix.cmake_build_type }}
- name: Install apt dependencies
uses: eProsima/eProsima-CI/ubuntu/install_apt_packages@v0
with:
packages: doxygen graphviz imagemagick python3 python3-pip python3-sphinxcontrib.spelling python3-venv software-properties-common wget clang-tidy curl grep
update: false
upgrade: false
- name: Pin setuptools for brevitas (pre)
run: |
python3 -m pip install --upgrade pip
python3 -m pip install --force-reinstall "setuptools<70" wheel
python3 -m pip show setuptools
- name: Install Python dependencies
uses: eProsima/eProsima-CI/ubuntu/install_python_packages@v0
with:
packages: colcon-common-extensions colcon-mixin vcstool gcovr==5
upgrade: false
- name: Pin setuptools for brevitas (post)
run: |
python3 -m pip install --force-reinstall "setuptools<70"
python3 -m pip check || true
python3 -m pip show setuptools
- name: Install Python submodules dependencies
uses: eProsima/eProsima-CI/ubuntu/install_python_packages@v0
with:
requirements_file_name: ${{ github.workspace }}/src/sustainml_lib/sustainml_modules/requirements.txt
upgrade: false
- name: Install ollama
run: curl -fsSL https://ollama.com/install.sh | sh
- name: Fetch SustainML repositories
uses: eProsima/eProsima-CI/multiplatform/vcs_import@v0
with:
vcs_repos_file: ${{ github.workspace }}/src/sustainml_lib/sustainml.repos
destination_workspace: ${{ github.workspace }}/src
skip_existing: true
- name: Run ollama
run: |
ollama pull llama3
- name: Init submodules manually
run: |
cd ${{ github.workspace }}/src/sustainml_lib
git submodule update --init --recursive
- name: Install Java 21
run: |
sudo apt-get update
sudo apt-get install -y openjdk-21-jdk
echo "JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64" >> $GITHUB_ENV
echo "/usr/lib/jvm/java-21-openjdk-amd64/bin" >> $GITHUB_PATH
- name: Install Neo4j
run: |
sudo apt update && sudo apt install -y gnupg ca-certificates wget
wget -O - https://debian.neo4j.com/neotechnology.gpg.key | gpg --dearmor | sudo tee /usr/share/keyrings/neo4j.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/neo4j.gpg] https://debian.neo4j.com stable latest" | sudo tee /etc/apt/sources.list.d/neo4j.list
sudo apt update
sudo apt install -y neo4j
neo4j --version
- name: Load Neo4j backup
run: |
BACKUP_PATH=${{ github.workspace }}/src/sustainml_lib/sustainml_modules/sustainml_modules/sustainml-wp1/rag/neo4j_backup
sudo -E neo4j-admin database load system \
--from-path=$BACKUP_PATH \
--overwrite-destination=true
sudo -E neo4j-admin database load neo4j \
--from-path=$BACKUP_PATH \
--overwrite-destination=true
sudo chown -R neo4j:neo4j /var/lib/neo4j/data
- name: Start Neo4j service
run: |
sudo -E neo4j start
- name: Download Annoy Index file from Google Drive
run: |
pip install gdown
gdown --id 1TQvt1bSXares-I9l7Wki0Jge3oubRkOJ -O ${{ github.workspace }}/src/sustainml_lib/sustainml_modules/sustainml_modules/sustainml-wp1/rag/models_index.ann
- name: Compile and run tests
uses: eProsima/eProsima-CI/multiplatform/colcon_build_test@v0
with:
ctest_args: '--timeout 300'
packages_names: sustainml_cpp sustainml_py sustainml_modules
cmake_args: -DCMAKE_BUILD_TYPE=${{ matrix.cmake_build_type }}
colcon_meta_file: ${{ github.workspace }}/src/sustainml_lib/.github/workflows/configurations/${{ runner.os }}/colcon.meta
colcon_args_default: "--merge-install"
#####################################################################
# CLANG
clang:
runs-on: ubuntu-24.04
steps:
- name: Free Disk Space
run: |
echo "Disk space before cleanup:"
df -h
sudo rm -rf /usr/local/.ghcup
sudo rm -rf /opt/hostedtoolcache/CodeQL
sudo rm -rf /usr/local/lib/android/sdk/ndk
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc
sudo rm -rf /usr/local/share/boost
sudo apt-get clean
echo "Disk space after cleanup:"
df -h
- name: Sync repository
uses: eProsima/eProsima-CI/external/checkout@v0
with:
path: ${{ github.workspace }}/src/sustainml_lib
ref: ${{ github.head_ref || github.ref_name }}
- name: Install Fast DDS dependencies
uses: eProsima/eProsima-CI/multiplatform/install_fastdds_dependencies@v0
with:
cmake_build_type: ${{ matrix.cmake_build_type }}
- name: Install apt dependencies
uses: eProsima/eProsima-CI/ubuntu/install_apt_packages@v0
with:
packages: doxygen graphviz imagemagick python3 python3-pip python3-sphinxcontrib.spelling python3-venv software-properties-common wget clang-tidy curl grep libfreetype6-dev libjpeg-dev libpng-dev zlib1g-dev
update: false
upgrade: false
- name: Pin setuptools for brevitas (pre)
run: |
python3 -m pip install --upgrade pip
python3 -m pip install --force-reinstall "setuptools<70" wheel
python3 -m pip show setuptools
- name: Install Python dependencies
uses: eProsima/eProsima-CI/ubuntu/install_python_packages@v0
with:
packages: colcon-common-extensions colcon-mixin vcstool gcovr==5
upgrade: false
- name: Pin setuptools for brevitas (post)
run: |
python3 -m pip install --force-reinstall "setuptools<70"
python3 -m pip check || true
python3 -m pip show setuptools
- name: Install Python documentation dependencies
uses: eProsima/eProsima-CI/ubuntu/install_python_packages@v0
with:
requirements_file_name: ${{ github.workspace }}/src/sustainml_lib/sustainml_docs/requirements.txt
upgrade: false
- name: Install Python submodules dependencies
uses: eProsima/eProsima-CI/ubuntu/install_python_packages@v0
with:
requirements_file_name: ${{ github.workspace }}/src/sustainml_lib/sustainml_modules/requirements.txt
upgrade: false
- name: Install ollama
run: curl -fsSL https://ollama.com/install.sh | sh
- name: Fetch SustainML repositories
uses: eProsima/eProsima-CI/multiplatform/vcs_import@v0
with:
vcs_repos_file: ${{ github.workspace }}/src/sustainml_lib/sustainml.repos
destination_workspace: ${{ github.workspace }}/src
skip_existing: true
- name: Run ollama
run: |
ollama pull llama3
- name: Init submodules manually
run: |
cd ${{ github.workspace }}/src/sustainml_lib
git submodule update --init --recursive
- name: Download file from Google Drive
run: |
pip install gdown
gdown --id 1TQvt1bSXares-I9l7Wki0Jge3oubRkOJ -O ${{ github.workspace }}/src/sustainml_lib/sustainml_modules/sustainml_modules/sustainml-wp1/rag/models_index.ann
- name: Debug: locate fastcdr config

Check failure on line 258 in .github/workflows/test.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/test.yml

Invalid workflow file

You have an error in your yaml syntax on line 258
run: |
find ${{ github.workspace }}/install -name "fastcdr-config.cmake" -o -name "fastcdrConfig.cmake" || true
echo "CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH"
- name: Compile and run tests
uses: eProsima/eProsima-CI/multiplatform/clang_build_test@v0
with:
packages_names: ${{ env.code_packages_names }}
colcon_meta_file: ${{ github.workspace }}/src/sustainml_lib/.github/workflows/configurations/Linux/colcon.meta
colcon_args_default: "--merge-install"
#####################################################################
# UNCRUSTIFY
uncrustify:
runs-on: ubuntu-24.04
steps:
- name: Uncrustify
uses: eProsima/eProsima-CI/ubuntu/uncrustify@v0