Skip to content

Commit 3f51dd8

Browse files
Merge pull request #203 from mavlink/pr-readme
Generate API docs in CI
2 parents b45f3d7 + 52dfd41 commit 3f51dd8

File tree

3 files changed

+42
-12
lines changed

3 files changed

+42
-12
lines changed

.travis.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,9 @@ install:
7777
- set -e
7878
- pip3 install -r requirements.txt -r requirements-dev.txt
7979
- pip3 install auditwheel twine
80+
- if [[ "${BUILD_TARGET}" = "linux" ]]; then
81+
pip3 install sphinx numpydoc s3cmd;
82+
fi
8083
- if [[ "${BUILD_TARGET}" = "macos" ]]; then
8184
pip3 install delocate;
8285
fi
@@ -89,6 +92,7 @@ script:
8992
fi
9093
- if [[ "${BUILD_TARGET}" = "linux" ]]; then
9194
auditwheel repair --plat manylinux2010_x86_64 dist/*.whl;
95+
make -C mavsdk html;
9296
fi
9397
- if [[ "${BUILD_TARGET}" = "macos" ]]; then
9498
delocate-wheel -w wheelhouse -v dist/*.whl;
@@ -110,7 +114,15 @@ script:
110114
else
111115
echo "Not deploying without git tag.";
112116
fi
117+
- if [[ "${BUILD_TARGET}" = "linux" ]] && [[ ! -z "${TRAVIS_TAG}" ]]; then
118+
echo "Uploading docs";
119+
other/tools/upload_docs.sh;
120+
else
121+
echo "Not uploading docs without git tag.";
122+
fi
113123
env:
114124
global:
115125
- secure: cpJLKiOqUTYB1ozkVus4SlPBP/XJ1uUxfMKos+XLWxEVOTguLIW+bKhLfquY9+PlY2rajl5jxxzrX5RZOgZR0fbHHh9FAzioWhzEEUQb76IKnDD7St8J6Pq65bO1Vk8o0sdtQ+ht8+RK54TJL6d8jxVh4RNV3txBB6wFzkFcw5WTDxgWr/+HsYfC9IQkIXGf8NJmvdCUBunL2xDULZ3rlPzEG/YmXjR79g51juNWvZjDKFjLmpHe/qN8VSws1QrI7tKtTtNrNutlAVnOWSlcnJspzex0WfG4EINyjJH7WQZppLiax55jWSBAzxee3/7jXyDVDOJBPl8JT/GyqoQL/qHDmiJuHm53Ktpgg0saGlcSuYuA643PVVJ2Q1SerTtboukJIfNi08GykSPLIbT6PHqhB7NzaA+rWXWgTIoMUyPQ38M+/2lpVqNc6fwAClAbYrJKxyiH7g6GLShV5/UOqDWK18OGGYnpWs+X2eFPXFXLVfZ540VvqlZimwMd6PZuB6RpgKBcBPH1FMac1dE0+FaNHHHj9KNONkiTfzJCFEThwTtS0z3xrKzq8q8iAmbbhTKMJjwID0hpdKdfvzxkPW7IJiW/zG5X2WBL5gB2bhKhpkiozZCuO087aPxPx6Y+Jua5nt3hm3p1tVqZD3hX+SNv4ymHXfsyeIvweLKi0QQ=
116126
- secure: CiOtzgly9Rl0KwaA3W3FJTzSaUoSpRVPgSRj+x9UdmDBKHm9dvW3kc5amsUKzx7jF9qb2Cuyw2Bg9kmq7SIIqvvN14/3NkzTb2aDpE+f/O627asKJlrr5CuQtmwFX//ZjLIeLFPySBj/Oz1SUz39hqtRVkyTAPfvxiVu52AQveXqyxhcgC5ALI/kIAVaWeKBqH8f6PJ5HUphL2u+QOO1/r88tEumbmVUA6tvQZxHUsu7tU1SOwB4SAfCwTfwJ8h0ZUEicuTkUB3KJc6gDWF8i2AUi1akrysAO4DDd606K1APA7QusTq+PP16tG23ul6kmme8SNRXZUouqGv902giif3TZdJqSyoPkih4TTUUeQ47xBQ81EJba5lXbEZIu4N3Soxl6RSa6O85LNuc9XKxNSEbruRWROxg+hMBh+8403S4NlWfxnri4SwM8iM98psWjTGyl/JLLNU7JJniiuBY5coEV65XzP/6gnAdo1TGy3kdolnTeocT1Nrx0WSH8LxZM6LhWdt2uV1eJK4NT2MhxW8CI/S6BGiwZV/31+HfMUoseEjYPPaGFDazIWtC6WWlPRFLsk1cktNjK+/KxDThkVBW+kkiGrqifRi8u+TNjWLRJbotNnDq5RYipvXjCIurl1UlPIDx6l7JnJjknblu35JjjOevOn/WDIJdpDTODdw=
127+
- secure: XdfCbE+3tmWZTkuXArqjcs3CBe7T41iT2Jf9cqOBuO/bGJmL+dWU4JEl9/VsZEZBvAiMrXzZQxZVFjVpwoK2c95EkmG9OZyp5zMmmv16eiUbJEi0Vr3pfq6R5V4kzVlvX3fPX6WI0BGg+XaeoQwU/qDkB7Y49GjaJrBf6wJRAabvx3mhAVZIc2pe/mEFepueJRZqNhXy5cQ3i7KS2HLncZXL9cOMlXlSeM8DP83HMwdKotC32LP2Yq8xbhg1gfoWwGUK8cGVhjAsbz1ufzcA8h4IhdEtegLAWUT7qSb05lcCl1rf8xEYAHznxE5ph70inSD4Dw102GeReUcLmAarKI4vnZsP0LTANAWCyY6CUDdoCsyBGlmKrAW3EWV9sTDsMrmWLZTG8I+LzoFMoZ7xqhjE7+MnK6QSAyb9kk84rxOZwTYbp91OZXpL78m7I4Fbgx3Hy0UXKnQ99cpVtebfbrbWgijKmE3aolBM14MlZuqMCZVQlluefchhXjCAdX1nfS4Xnc6NrYpdgNjwtL6S732NkvKB0ow2NkBmSAxFhQgykfFqD5PN830JvOqN6aHev18GH8oR6Ey0gUNBjryz1+IdUKjaPZt8QiMNSCKpl3CN5vAKO/b8RscLHkNtEuwKflGKuT7ScPH9jpmyJZoDOUU28QS2eekESJ6FqQuae6c=
128+
- secure: GtKNWNjxb+QGxCZRgb42R64zMOHcs0NxBWnsQzrQz0xkwdlZOXBmO2rzkSj6j3djUcowhThi3bRhmJy/stHvs+0eAEY3UvW0TMrnC34+JN6WnAx60EfQSLr0Imrzv55RDbLWDVyzC50ks95iRSCtkZnXL2OUdoIqTZMiV3fbJS1kxy8K3k00qiBLwviHC9FSV+Ujz9nIQDJfLEELDzQVFEOMRd+qfJYkkVIRUl9VThC25T1ykN0A3jL1SI9tc5+XHdEy8poKjtncXjdGu9AS1vxSJsc0oOkbn9quRW+GYq3J105BHtMjfTHWRVsTyMeRgimxeMWq+l9bD28/K8ou1dhvdY1CAZLZUOeDDDPsWrWDYdD3pk+Dehur2H0raEOMvfEOfYKgN2vRPxX0hlwFTaumCHElEHZN0sHw5fwDYOo4uCFEUr1kMm2KBth3NvckHLpOGI+yrUuSmeVgrnpz5aO9V4/I9+lK1FarcvBeh6ERThO33bcTpF1GVWYdFxS4p9xoggtz5mra+nddNS1jrVJYa4P1AL9HFKcu7wjCRZFSLHL1lPP+4p2N4nIRxiWmjX5aG2gASDO/qld5ZtwhePyI5JxAMp0vMBTx9aFEbc7y2F0SlyPtUKin0RQ1SRG8q+P37Jug936EAbhsVm3/Wi/KtDCGxyM0zqMs06ANidU=

README.md

Lines changed: 25 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -89,14 +89,6 @@ Run the following helper script. It will generate the Python wrappers for each p
8989
./other/tools/run_protoc.sh
9090
```
9191

92-
### Generate the API documentation
93-
94-
```
95-
pip3 install sphinx numpydoc
96-
make -C mavsdk html
97-
```
98-
99-
10092
### Update `mavsdk_server` version
10193

10294
[MAVSDK_SERVER_VERSION](./MAVSDK_SERVER_VERSION) contains exactly the tag name of the `mavsdk_server` release corresponding to the version of MAVSDK-Python. When the [proto](./proto) submodule is updated here, chances are that `mavsdk_server` should be updated, too. Just edit this file, and the corresponding binary will be downloaded by the `setup.py` script (see below).
@@ -112,6 +104,29 @@ pip3 install -e .
112104

113105
Note: MAVDSK-Python runs `mavsdk/bin/mavsdk_server` when `await drone.connect()` is called. This binary comes from [MAVSDK](https://github.com/mavlink/MAVSDK/releases) and is downloaded during the `setup.py` step above.
114106

115-
### Release to PyPi repository
116107

117-
The CI will create and push a wheel for Windows, Linux and macOS whenever a release tag is created.
108+
### Generate the API documentation
109+
110+
Make sure the version tag is set correctly before generating new documentation.
111+
112+
```
113+
pip3 install sphinx numpydoc
114+
make -C mavsdk html
115+
```
116+
117+
118+
### Release steps
119+
120+
1. Check all required pull requests are merged to master
121+
2. Check [MAVSDK_SERVER_VERSION](MAVSDK_SERVER_VERSION) is set to the correct version of mavsdk_server.
122+
3. Create git tag on laster master, e.g.:
123+
```
124+
git switch master
125+
git pull
126+
git tag X.Y.Z
127+
git push --tags
128+
```
129+
4. Go to [releases page](https://github.com/mavlink/MAVSDK-Python/releases) and create new release.
130+
The CI will now:
131+
- Create and push a wheel for Windows, Linux and macOS to PyPi.
132+
- Generate the latest docs and push them to s3.

mavsdk/source/conf.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,18 @@
1414
# import sys
1515
# sys.path.insert(0, os.path.abspath('.'))
1616

17-
1817
# -- Project information -----------------------------------------------------
18+
import subprocess
1919

2020
project = 'MAVSDK-Python'
2121
copyright = '2020, Jonas Vautherin, Julian Oes'
2222
author = 'Jonas Vautherin, Julian Oes'
2323

24+
result = subprocess.run(['git', 'describe', '--tag', '--abbrev=0'],
25+
stdout=subprocess.PIPE)
26+
2427
# The full version, including alpha/beta/rc tags
25-
release = '0.7.0'
28+
release = result.stdout.decode('utf-8')
2629

2730

2831
# -- General configuration ---------------------------------------------------

0 commit comments

Comments
 (0)