diff --git a/README.md b/README.md index 37b90d69..51454bf9 100644 --- a/README.md +++ b/README.md @@ -11,10 +11,14 @@ own project: ## Continuous Integration -Scripts are provided for various CI instances in `scripts/continuous_integration`. The intended purpose of each is described below: - -* `github_actions`: exemplifies how to put a project depending on a Drake installation on GitHub Actions -* `jenkins` : provides complete coverage of additional external example projects +Scripts are provided for Jenkins or GitHub Actions, depending on the example, +in each example's respective subdirectory under `.github/`. +See the `Jenkinsfile` and the top-level `.github/workflows/ci.yml` +for a complete overview of each respective pipeline. +The intended purpose of each is described below: + +* GitHub Actions: exemplifies how to put a project depending on a Drake installation on GitHub Actions +* Jenkins: provides complete coverage of additional external example projects | **Subproject** | **GitHub Actions** | **Jenkins** | |:---:|:---:|:---:| diff --git a/drake_bazel_external/README.md b/drake_bazel_external/README.md index 7e605734..8dba803e 100644 --- a/drake_bazel_external/README.md +++ b/drake_bazel_external/README.md @@ -11,7 +11,7 @@ First, run the `install_prereqs` script to download the drake source and run drake's source setup script to install the required Ubuntu packages: ``` -setup/install_prereqs.sh +sudo setup/install_prereqs ``` Then, to build and test all apps: diff --git a/drake_bazel_external_legacy/README.md b/drake_bazel_external_legacy/README.md index a7f29fe0..76104a7f 100644 --- a/drake_bazel_external_legacy/README.md +++ b/drake_bazel_external_legacy/README.md @@ -16,7 +16,7 @@ First, run the `install_prereqs` script to download the drake source and run drake's source setup script to install the required Ubuntu packages: ``` -setup/install_prereqs.sh +sudo setup/install_prereqs ``` Then, to build and test all apps: diff --git a/drake_cmake_external/CMakeLists.txt b/drake_cmake_external/CMakeLists.txt index 2244f821..ccbbe301 100644 --- a/drake_cmake_external/CMakeLists.txt +++ b/drake_cmake_external/CMakeLists.txt @@ -96,7 +96,7 @@ set(DRAKE_PREFIX "${PROJECT_BINARY_DIR}/drake-prefix") ExternalProject_Add(drake DEPENDS eigen fmt spdlog URL https://github.com/RobotLocomotion/drake/archive/master.tar.gz - # Or from a commit (download and use "shashum -a 256 'xxx.tar.gz'" on it to + # Or from a commit (download and use "shasum -a 256 'xxx.tar.gz'" on it to # get the URL_HASH. # URL https://github.com/RobotLocomotion/drake/archive/65c4366ea2b63278a286b1e22b8d464d50fbe365.tar.gz # URL_HASH SHA256=899d98485522a7cd5251e50a7a6b8a64e40aff2a3af4951a3f0857fd938cafca diff --git a/drake_cmake_external/README.md b/drake_cmake_external/README.md index 63de8214..7eab8940 100644 --- a/drake_cmake_external/README.md +++ b/drake_cmake_external/README.md @@ -8,7 +8,7 @@ First, run the `install_prereqs` script to download the drake source and run drake's source setup script to install the required Ubuntu packages: ``` -setup/install_prereqs.sh +sudo setup/install_prereqs ``` Keep in mind that within the top-level CMakeLists, the drake source is once diff --git a/drake_cmake_installed/README.md b/drake_cmake_installed/README.md index b0cf7620..1ee0215e 100644 --- a/drake_cmake_installed/README.md +++ b/drake_cmake_installed/README.md @@ -10,45 +10,42 @@ These instructions are only supported for Ubuntu 22.04 (Jammy). ############################################################### # Install Prerequisites ############################################################### + # Various system dependencies sudo setup/install_prereqs -# (Optionally) Install GTest -# You could also explicitly pull gtest into the CMake build directly: -# https://github.com/google/googletest/tree/master/googletest -sudo apt-get install libgtest-dev -ls -mkdir ~/gtest && cd ~/gtest && cmake /usr/src/gtest && make -sudo cp *.a /usr/local/lib - ############################################################### # Install Drake to $HOME/drake ############################################################### +# There are a few options to install drake: + # 1) A specific version (date-stamped) -# curl -O https://drake-packages.csail.mit.edu/drake/nightly/drake-20240214-jammy.tar.gz +curl -O https://drake-packages.csail.mit.edu/drake/nightly/drake-20240214-jammy.tar.gz # 2) The latest (usually last night's build) curl -O https://drake-packages.csail.mit.edu/drake/nightly/drake-latest-jammy.tar.gz tar -xvzf drake-latest-jammy.tar.gz -C $HOME # 3) Manual Installation -# git clone https://github.com/RobotLocomotion/drake.git -# (mkdir drake-build && cd drake-build && cmake -DCMAKE_INSTALL_PREFIX=$HOME/drake ../drake && make) +git clone https://github.com/RobotLocomotion/drake.git +(cd drake && mkdir build && cd build && cmake -DCMAKE_INSTALL_PREFIX=$HOME/drake .. && make) # 4) Manual Installation w/ Licensed Gurobi # Install & setup gurobi (http://drake.mit.edu/bazel.html?highlight=gurobi#install-on-ubuntu) -# git clone https://github.com/RobotLocomotion/drake.git -# (mkdir drake-build && cd drake-build && cmake -DCMAKE_INSTALL_PREFIX=$HOME/drake -DWITH_GUROBI=ON ../drake && make) +git clone https://github.com/RobotLocomotion/drake.git +(cd drake && mkdir build && cd build && cmake -DCMAKE_INSTALL_PREFIX=$HOME/drake -DWITH_GUROBI=ON .. && make) ############################################################### # Build Everything ############################################################### + git clone https://github.com/RobotLocomotion/drake-external-examples.git -cd drake-external-examples -mkdir drake_cmake_installed-build && cd drake_cmake_installed-build -cmake -DCMAKE_PREFIX_PATH=$HOME/drake ../drake_cmake_installed +cd drake-external-examples/drake_cmake_installed +mkdir build && cd build +cmake -DCMAKE_PREFIX_PATH=$HOME/drake .. make + # (Optionally) Run Tests make test ``` @@ -73,8 +70,8 @@ build this project, and then run all available tests: ```shell # Build development version of Drake, ensuring no old artifacts are present. cd drake # Where you are developing. -rm -rf ../drake-build && mkdir ../drake-build && cd ../drake-build -cmake ../drake # Configure Gurobi, Mosek, etc, if needed. +rm -rf build && mkdir build && cd build +cmake .. # Configure Gurobi, Mosek, etc, if needed. # Build locally. make # Record the build's install directory. @@ -84,11 +81,11 @@ drake_install=${PWD}/install cd .. # Clone this repository if you have not already. git clone https://github.com/RobotLocomotion/drake-external-examples.git -cd drake-external-examples +cd drake-external-examples/drake_cmake_installed # Follow "Install Prerequisites" in the instructions linked above if you # have not already. -mkdir drake_cmake_installed-build && cd drake_cmake_installed-build -cmake -DCMAKE_PREFIX_PATH=${drake_install} ../drake_cmake_installed +mkdir build && cd build +cmake -DCMAKE_PREFIX_PATH=${drake_install} .. make ctest ```