diff --git a/.github/workflows/deploy_release.yaml b/.github/workflows/deploy_release.yaml new file mode 100644 index 00000000..80c20f04 --- /dev/null +++ b/.github/workflows/deploy_release.yaml @@ -0,0 +1,61 @@ +name: Build versioned documentation on release + +on: + release: + types: [published] + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: write + pages: write + id-token: write + pull-requests: write + +# Allow one concurrent deployment +concurrency: + group: release-${{ github.ref }} + cancel-in-progress: true + +jobs: + # Build job + build-release: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Setup Python + uses: actions/setup-python@v4 + with: + python-version: 3.x + cache: 'pip' + + - name: Get version set env # , exit if beta release + run: | + echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV + # if [[ "$RELEASE_VERSION" == *"b"* ]]; then + # echo "Version is a beta release. Cancel workflow." + # exit 0 + # fi + + - name: Install python dependencies + run: pip install -r docs/requirements.txt + + - name: Setup Pages + id: pages + uses: actions/configure-pages@v2 + + - name: Build with mkdocs + run: | + cd docs + mkdocs build -c + + - name: Deploy + uses: JamesIves/github-pages-deploy-action@v4 + with: + branch: gh-pages + folder: ./docs/site + clean: true + # clean-exclude: pr-preview/ + target-folder: ${{ env.RELEASE_VERSION }} + force: false diff --git a/README.md b/README.md index 6bfc8438..d381d0a9 100644 --- a/README.md +++ b/README.md @@ -13,16 +13,16 @@ These are the repositories for the project: * [mbari_wec_utils](https://github.com/osrf/mbari_wec_utils): ROS 2 messages, interface API, and examples for receiving and sending data to a physical or simulated buoy. - * [buoy_interfaces](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_cpp): ROS 2 messages + * [buoy_interfaces](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_cpp): ROS 2 messages to recieve and send data to a physical or simulated buoy - * [buoy_api_cpp](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_cpp): C++ Interface to + * [buoy_api_cpp](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_cpp): C++ Interface to MBARI Power Buoy including Controller examples to run against a physical or simulated buoy. - * [buoy_api_py](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_py): Python Interface to + * [buoy_api_py](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_py): Python Interface to MBARI Power Buoy including Controller examples to run against a physical or simulated buoy. * [mbari_wec_gz](https://github.com/osrf/mbari_wec_gz) - * [buoy_description](https://github.com/osrf/buoy_description/tree/release/v1.1.0-rc1/buoy_description): + * [buoy_description](https://github.com/osrf/buoy_description/tree/v1.1.0-rc1/buoy_description): Buoy model description. - * [buoy_gazebo](https://github.com/osrf/buoy_description/tree/release/v1.1.0-rc1/buoy_gazebo): + * [buoy_gazebo](https://github.com/osrf/buoy_description/tree/v1.1.0-rc1/buoy_gazebo): Gazebo plugins, worlds and launch files to simulate the buoy. # Interfaces and Examples @@ -31,10 +31,10 @@ There are two GitHub [template](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template) repositories set up (cpp/python) for a quick start on writing a custom controller utilizing -[buoy_api_cpp](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_cpp) and -[buoy_api_py](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_py). Please see -[cpp examples](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_cpp/examples) and -[python examples](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_py/buoy_api/examples) for example +[buoy_api_cpp](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_cpp) and +[buoy_api_py](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_py). Please see +[cpp examples](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_cpp/examples) and +[python examples](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_py/buoy_api/examples) for example controller implementations. * [mbari_wec_template_cpp](https://github.com/mbari-org/mbari_wec_template_cpp) @@ -90,7 +90,7 @@ At the moment, MBARI WEC is supported by source installation only. Use Ubuntu Ja 2. Clone all source repos with the help of `vcstool`: ``` - wget https://raw.githubusercontent.com/osrf/mbari_wec/release/v1.1.0-rc1/mbari_wec_all.yaml + wget https://raw.githubusercontent.com/osrf/mbari_wec/v1.1.0-rc1/mbari_wec_all.yaml vcs import < mbari_wec_all.yaml cd ~/mbari_wec_ws ``` @@ -136,12 +136,12 @@ MBARI maintains Docker images for the two most recent releases on their DockerHu 1. Get `run.bash` script. ``` - git clone -b release/v1.1.0-rc1 https://github.com/osrf/mbari_wec.git + git clone -b v1.1.0-rc1 https://github.com/osrf/mbari_wec.git cd ~/mbari_wec/docker/ ``` Or ``` - wget https://raw.githubusercontent.com/osrf/mbari_wec/release/v1.1.0-rc1/docker/run.bash + wget https://raw.githubusercontent.com/osrf/mbari_wec/v1.1.0-rc1/docker/run.bash chmod +x run.bash ``` @@ -162,7 +162,7 @@ An alternative to using the images from MBARI's DockerHub would be to build from 1. Clone the mbari_wec repository to download the latest Dockerfile. ``` - git clone -b release/v1.1.0-rc1 https://github.com/osrf/mbari_wec.git + git clone -b v1.1.0-rc1 https://github.com/osrf/mbari_wec.git cd ~/mbari_wec/docker/ ``` diff --git a/docker/mbari_wec/Dockerfile b/docker/mbari_wec/Dockerfile index 23ea30fb..c242de41 100644 --- a/docker/mbari_wec/Dockerfile +++ b/docker/mbari_wec/Dockerfile @@ -98,7 +98,7 @@ WORKDIR /home/$USERNAME ENV MBARI_WEC_WS /home/$USERNAME/mbari_wec_ws RUN mkdir -p ${MBARI_WEC_WS}/src \ && cd ${MBARI_WEC_WS}/src/ \ - && wget https://raw.githubusercontent.com/osrf/mbari_wec/release/v1.1.0-rc1/mbari_wec_all.yaml \ + && wget https://raw.githubusercontent.com/osrf/mbari_wec/v1.1.0-rc1/mbari_wec_all.yaml \ && vcs import < mbari_wec_all.yaml # Install rosdep dependencies diff --git a/docs/docs/Tutorials/Install/Install_docker.md b/docs/docs/Tutorials/Install/Install_docker.md index 490e8ca1..51c44cfc 100644 --- a/docs/docs/Tutorials/Install/Install_docker.md +++ b/docs/docs/Tutorials/Install/Install_docker.md @@ -18,12 +18,12 @@ MBARI maintains Docker images for the two most recent releases on their DockerHu 1. Get `run.bash` script. ``` - git clone -b release/v1.1.0-rc1 https://github.com/osrf/mbari_wec.git + git clone -b v1.1.0-rc1 https://github.com/osrf/mbari_wec.git cd ~/mbari_wec/docker/ ``` Or ``` - wget https://raw.githubusercontent.com/osrf/mbari_wec/release/v1.1.0-rc1/docker/run.bash + wget https://raw.githubusercontent.com/osrf/mbari_wec/v1.1.0-rc1/docker/run.bash chmod +x run.bash ``` @@ -44,7 +44,7 @@ An alternative to using the images from MBARI's DockerHub would be to build from 1. Clone the mbari_wec repository to download the latest Dockerfile. ``` - git clone -b release/v1.1.0-rc1 https://github.com/osrf/mbari_wec.git + git clone -b v1.1.0-rc1 https://github.com/osrf/mbari_wec.git cd ~/mbari_wec/docker/ ``` diff --git a/docs/docs/Tutorials/Install/Install_source.md b/docs/docs/Tutorials/Install/Install_source.md index f05218d4..1ac5d793 100644 --- a/docs/docs/Tutorials/Install/Install_source.md +++ b/docs/docs/Tutorials/Install/Install_source.md @@ -36,7 +36,7 @@ Use Ubuntu 22.04. 2. Clone all source repos with the help of `vcstool`: ``` - wget https://raw.githubusercontent.com/osrf/mbari_wec/release/v1.1.0-rc1/mbari_wec_all.yaml + wget https://raw.githubusercontent.com/osrf/mbari_wec/v1.1.0-rc1/mbari_wec_all.yaml vcs import < mbari_wec_all.yaml cd ~/mbari_wec_ws ``` diff --git a/docs/docs/Tutorials/ROS2/CppLinearDamperExample.md b/docs/docs/Tutorials/ROS2/CppLinearDamperExample.md index 2eac8436..c72805bb 100644 --- a/docs/docs/Tutorials/ROS2/CppLinearDamperExample.md +++ b/docs/docs/Tutorials/ROS2/CppLinearDamperExample.md @@ -241,7 +241,7 @@ reduced when retracting. ### Controller All that is left is to connect the necessary feedback data to the `ControlPolicy`. In this case, -`rpm`, `scale`, and `retract` are present in [`buoy_interfaces.msg.PCRecord`](https://github.com/osrf/mbari_wec_utils/blob/release/v1.1.0-rc1/buoy_interfaces/msg/PCRecord.msg) on the `/power_data` +`rpm`, `scale`, and `retract` are present in [`buoy_interfaces.msg.PCRecord`](https://github.com/osrf/mbari_wec_utils/blob/v1.1.0-rc1/buoy_interfaces/msg/PCRecord.msg) on the `/power_data` topic published by the Power Controller running on the buoy. To access the data, all that is required is to define the callback diff --git a/docs/docs/Tutorials/ROS2/CppTemplate.md b/docs/docs/Tutorials/ROS2/CppTemplate.md index f31df890..2aad4801 100644 --- a/docs/docs/Tutorials/ROS2/CppTemplate.md +++ b/docs/docs/Tutorials/ROS2/CppTemplate.md @@ -11,10 +11,10 @@ There are two GitHub [template repositories](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template) set up (C++/Python) for a quick start on writing a custom controller utilizing -[buoy_api_cpp](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_cpp) and -[buoy_api_py](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_py). Please see -[C++ examples](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_cpp/examples) and -[Python examples](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_py/buoy_api/examples) for +[buoy_api_cpp](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_cpp) and +[buoy_api_py](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_py). Please see +[C++ examples](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_cpp/examples) and +[Python examples](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_py/buoy_api/examples) for example controller implementations. * [mbari_wec_template_cpp](https://github.com/mbari-org/mbari_wec_template_cpp) diff --git a/docs/docs/Tutorials/ROS2/PythonTemplate.md b/docs/docs/Tutorials/ROS2/PythonTemplate.md index e058dd39..0d78c41e 100644 --- a/docs/docs/Tutorials/ROS2/PythonTemplate.md +++ b/docs/docs/Tutorials/ROS2/PythonTemplate.md @@ -11,10 +11,10 @@ There are two GitHub [template repositories](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template) set up (C++/Python) for a quick start on writing a custom controller utilizing -[buoy_api_cpp](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_cpp) and -[buoy_api_py](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_py). Please see -[C++ examples](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_cpp/examples) and -[Python examples](https://github.com/osrf/mbari_wec_utils/tree/release/v1.1.0-rc1/buoy_api_py/buoy_api/examples) for example +[buoy_api_cpp](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_cpp) and +[buoy_api_py](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_py). Please see +[C++ examples](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_cpp/examples) and +[Python examples](https://github.com/osrf/mbari_wec_utils/tree/v1.1.0-rc1/buoy_api_py/buoy_api/examples) for example controller implementations. * [mbari_wec_template_cpp](https://github.com/mbari-org/mbari_wec_template_cpp) diff --git a/mbari_wec_all.yaml b/mbari_wec_all.yaml index e753dd21..4b4c487a 100644 --- a/mbari_wec_all.yaml +++ b/mbari_wec_all.yaml @@ -3,15 +3,15 @@ repositories: mbari_wec: type: git url: https://github.com/osrf/mbari_wec - version: release/v1.1.0-rc1 + version: v1.1.0-rc1 mbari_wec_utils: type: git url: https://github.com/osrf/mbari_wec_utils - version: release/v1.1.0-rc1 + version: v1.1.0-rc1 mbari_wec_gz: type: git url: https://github.com/osrf/mbari_wec_gz - version: release/v1.1.0-rc1 + version: v1.1.0-rc1 # Must compile ros_gz from source because Humble + Garden is not an official combination # freezing for release ros_gz: