This is an automated email from the ASF dual-hosted git repository. urfree pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/pulsar-site.git
commit b7b31b3ea45eba8673e015d3557048dcf86d8332 Author: Li Li <[email protected]> AuthorDate: Mon May 9 14:42:39 2022 +0800 api scripts Signed-off-by: Li Li <[email protected]> --- site2/tools/api/python/README.md | 34 ++++++++++++++++++ site2/tools/api/python/build-docs-in-docker.sh | 42 ++++++++++++++++++++++ .../api/python/generate-python-client-docs.sh | 30 ++++++++++++++++ 3 files changed, 106 insertions(+) diff --git a/site2/tools/api/python/README.md b/site2/tools/api/python/README.md new file mode 100644 index 00000000000..8a969d114da --- /dev/null +++ b/site2/tools/api/python/README.md @@ -0,0 +1,34 @@ +<!-- + + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> + +# Pulsar Client Generated Docs + +Pulsar's Python docs used to be generated for every wesbite build, but this is unnecessary. We now generate +the docs for each version by running the [build-docs-in-docker.sh](./build-docs-in-docker.sh) script in this +directory. + +## Example + +When starting in the root directory of the project, you can run: + +```shell +PULSAR_VERSION=2.8.3 ./site2/tools/python-client/build-docs-in-docker.sh +``` \ No newline at end of file diff --git a/site2/tools/api/python/build-docs-in-docker.sh b/site2/tools/api/python/build-docs-in-docker.sh new file mode 100755 index 00000000000..b11cbb0147c --- /dev/null +++ b/site2/tools/api/python/build-docs-in-docker.sh @@ -0,0 +1,42 @@ +#!/usr/bin/env bash +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + + +set -e + +BUILD_IMAGE_NAME="${BUILD_IMAGE_NAME:-apachepulsar/pulsar-build}" +# Use python 3.8 for now because it works for 2.7, 2.8, and 2.9. +PYTHON_VERSION="${PYTHON_VERSION:-3.8}" +PYTHON_SPEC="${PYTHON_SPEC:-cp38-cp38}" +# ROOT_DIR should be an absolute path so that Docker accepts it as a valid volumes path +ROOT_DIR=`cd $(dirname $0)/../../../..; pwd` +cd $ROOT_DIR + +echo "Build Python docs for python version $PYTHON_VERSION, spec $PYTHON_SPEC, and pulsar version ${PULSAR_VERSION}" + +IMAGE=$BUILD_IMAGE_NAME:manylinux-$PYTHON_SPEC + +echo "Using image: $IMAGE" + +VOLUME_OPTION=${VOLUME_OPTION:-"-v $ROOT_DIR:/pulsar"} +COMMAND="/pulsar/site2/tools/api/python/generate-python-client-docs.sh" +DOCKER_CMD="docker run -e PULSAR_VERSION=${PULSAR_VERSION} --entrypoint ${COMMAND} -i ${VOLUME_OPTION} ${IMAGE}" + +$DOCKER_CMD diff --git a/site2/tools/api/python/generate-python-client-docs.sh b/site2/tools/api/python/generate-python-client-docs.sh new file mode 100755 index 00000000000..ee1f9e89bce --- /dev/null +++ b/site2/tools/api/python/generate-python-client-docs.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + + +set -e + +PULSAR_VERSION="${PULSAR_VERSION:-2.9.1}" + +python -m pip install --upgrade pip + +pip install pdoc +pip install pulsar-client==${PULSAR_VERSION} +pdoc pulsar -o /pulsar/site2/website/static/api/python/${PULSAR_VERSION} \ No newline at end of file
