diff --git a/.github/testpr_environment.yml b/.github/testpr_environment.yml deleted file mode 100644 index 9e2cf9b8..00000000 --- a/.github/testpr_environment.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: testpr_env -channels: - - robostack-staging - - conda-forge -dependencies: - - python 3.11.* - - pip - - boa - - conda-build <3.28 - - rospkg - - catkin_pkg >=0.4.16 - - ruamel.yaml >=0.16.6,<0.18 - - rosdistro >=0.8.0 - - empy >=3.3.4 - - networkx diff --git a/.github/workflows/testpr.yml b/.github/workflows/testpr.yml index 49906636..0a628302 100644 --- a/.github/workflows/testpr.yml +++ b/.github/workflows/testpr.yml @@ -14,6 +14,7 @@ jobs: matrix: os: [ubuntu-latest, macos-latest, macos-14, windows-2019] platform: [linux-64, linux-aarch64, osx-64, win-64, osx-arm64] + environment: [beta] exclude: - os: ubuntu-latest platform: win-64 @@ -46,6 +47,15 @@ jobs: - os: windows-2019 platform: osx-arm64 steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false # otherwise, the token used is the GITHUB_TOKEN, instead of your personal token + fetch-depth: 0 # otherwise, you will failed to push refs to dest repo + + - uses: prefix-dev/setup-pixi@v0.8.1 + with: + environments: ${{ matrix.environment }} + # Workaround for https://github.com/RoboStack/ros-humble/pull/141#issuecomment-1941919816 - name: Clean up PATH if: contains(matrix.os, 'windows') @@ -55,16 +65,6 @@ jobs: # git in C:\Program Files\Git\bin is used by pip install git+ dirs: 'C:\Program Files\Git\usr\bin;C:\Program Files\Git\bin;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin' - - uses: actions/checkout@master - - name: install micromamba - uses: mamba-org/setup-micromamba@main - with: - environment-file: .github/testpr_environment.yml - condarc: | - channels: - - robostack-staging - - conda-forge - - shell: bash -l {0} if: matrix.platform == 'linux-aarch64' run: | @@ -81,17 +81,6 @@ jobs: sudo apt-get update sudo apt-get install -y libgl1-mesa-dev libglu1-mesa-dev libx11-dev libxi-dev libxmu-dev - - shell: bash -l {0} - run: | - conda config --show channels | grep defaults && conda config --remove channels defaults - conda info - conda config --show - micromamba install -y pip rospkg networkx "catkin_pkg>=0.4.16" "ruamel.yaml>=0.16.6" "rosdistro>=0.8.0" "empy>=3.3.4" boa - - name: install vinca - shell: bash -l {0} - run: | - # use no-deps for now, otherwise problems with ruamel. - pip install git+https://github.com/RoboStack/vinca.git --no-deps # For some reason, the Strawberry perl's pkg-config is found # instead of the conda's one, so let's delete the /c/Strawberry directory - name: Debug pkg-config problem @@ -121,45 +110,40 @@ jobs: shell: bash -l {0} if: steps.filecheck.outputs.LINUX_YAML_CHANGED == 1 && matrix.os == 'ubuntu-latest' && matrix.platform == 'linux-64' run: | - git clean -fdx cp vinca_linux_64.yaml vinca.yaml - vinca --platform linux-64 + $HOME/.pixi/bin/pixi run -e beta -v vinca --platform linux-64 ls cat recipe.yaml - name: Generate recipes for linux-aarch64 shell: bash -l {0} if: steps.filecheck.outputs.LINUX_AARCH_YAML_CHANGED == 1 && matrix.os == 'ubuntu-latest' && matrix.platform == 'linux-aarch64' run: | - git clean -fdx cp vinca_linux_aarch64.yaml vinca.yaml - vinca --platform linux-aarch64 + $HOME/.pixi/bin/pixi run -e beta -v vinca --platform linux-aarch64 ls cat recipe.yaml - name: Generate recipes for osx-64 shell: bash -l {0} if: steps.filecheck.outputs.OSX_YAML_CHANGED == 1 && matrix.os == 'macos-latest' && matrix.platform == 'osx-64' run: | - git clean -fdx cp vinca_osx.yaml vinca.yaml - vinca --platform osx-64 + $HOME/.pixi/bin/pixi run -e beta -v vinca --platform osx-64 ls cat recipe.yaml - name: Generate recipes for osx-arm64 shell: bash -l {0} if: steps.filecheck.outputs.OSX_ARM_YAML_CHANGED == 1 && matrix.os == 'macos-14' && matrix.platform == 'osx-arm64' run: | - git clean -fdx cp vinca_osx_arm64.yaml vinca.yaml - vinca --platform osx-arm64 + $HOME/.pixi/bin/pixi run -e beta -v vinca --platform osx-arm64 ls cat recipe.yaml - name: Generate recipes for win-64 shell: bash -l {0} if: steps.filecheck.outputs.WIN_YAML_CHANGED == 1 && matrix.os == 'windows-2019' && matrix.platform == 'win-64' run: | - git clean -fdx cp vinca_win.yaml vinca.yaml - vinca --platform win-64 + $HOME/.pixi/bin/pixi run -e beta -v vinca --platform win-64 ls cat recipe.yaml - name: Check if there are packages to be built @@ -173,30 +157,32 @@ jobs: - name: Build recipes for linux-64 shell: bash -l {0} run: | - boa build additional_recipes/ros2-distro-mutex/ -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml - boa build . -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml + $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe additional_recipes/ros2-distro-mutex/ -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge + $HOME/.pixi/bin/pixi run -e beta rattler-build build -r recipe.yaml -m ./conda_build_config.yaml if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && steps.filecheck.outputs.LINUX_YAML_CHANGED == 1 && matrix.os == 'ubuntu-latest' && matrix.platform == 'linux-64' - name: Build recipes for linux-aarch64 shell: bash -l {0} if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && steps.filecheck.outputs.LINUX_AARCH_YAML_CHANGED == 1 && matrix.os == 'ubuntu-latest' && matrix.platform == 'linux-aarch64' run: | - boa build additional_recipes/ros2-distro-mutex/ -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml --target-platform=linux-aarch64 - boa build . -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml --target-platform=linux-aarch64 + $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe additional_recipes/ros2-distro-mutex/ -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge + $HOME/.pixi/bin/pixi run -e beta rattler-build build -r recipe.yaml -m ./conda_build_config.yaml - name: Build recipes for osx-64 shell: bash -l {0} if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && steps.filecheck.outputs.OSX_YAML_CHANGED == 1 && matrix.os == 'macos-latest' && matrix.platform == 'osx-64' run: | - boa build additional_recipes/ros2-distro-mutex/ -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml - boa build . -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml + $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe additional_recipes/ros2-distro-mutex/ -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge + $HOME/.pixi/bin/pixi run -e beta rattler-build build -r recipe.yaml -m ./conda_build_config.yaml - name: Build recipes for osx-arm64 shell: bash -l {0} if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && steps.filecheck.outputs.OSX_ARM_YAML_CHANGED == 1 && matrix.os == 'macos-14' && matrix.platform == 'osx-arm64' run: | - boa build additional_recipes/ros2-distro-mutex/ -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml --target-platform=osx-arm64 - boa build . -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml + pwd + find .pixi + $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe additional_recipes/ros2-distro-mutex/ -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge + $HOME/.pixi/bin/pixi run -e beta rattler-build build -r recipe.yaml -m ./conda_build_config.yaml - name: Build recipes for win-64 shell: bash -l {0} if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && steps.filecheck.outputs.WIN_YAML_CHANGED == 1 && matrix.os == 'windows-2019' && matrix.platform == 'win-64' run: | - boa build additional_recipes/ros2-distro-mutex/ -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml - boa build . -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml + $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe additional_recipes/ros2-distro-mutex/ -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge + $HOME/.pixi/bin/pixi run -e beta rattler-build build -r recipe.yaml -m ./conda_build_config.yaml