-
Notifications
You must be signed in to change notification settings - Fork 593
Expand file tree
/
Copy pathgenerate_python_client_md.sh
More file actions
executable file
·71 lines (54 loc) · 2.2 KB
/
Copy pathgenerate_python_client_md.sh
File metadata and controls
executable file
·71 lines (54 loc) · 2.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#!/bin/bash
# Copyright 2021 Cortex Labs, Inc.
#
# Licensed 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 -euo pipefail
if [[ "$OSTYPE" != "linux"* ]]; then
echo "error: this script is only designed to run on linux"
exit 1
fi
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")"/.. >/dev/null && pwd)"
docs_path="$ROOT/docs/clients/python.md"
pip3 uninstall -y cortex
cd $ROOT/python/client
pip3 install -e .
pydoc-markdown -m cortex -m cortex.client --render-toc > $docs_path
# title
sed -i "s/# Table of Contents/# Python client/g" $docs_path
# delete links
sed -i "/<a name=/d" $docs_path
# delete sentry wrapper
sed -i "/@sentry_wrapper/d" $docs_path
# delete unnecessary section headers
sed -i "/_](#cortex\.client\.Client\.__init__)/d" $docs_path
sed -i "/\* \[Client](#cortex\.client\.Client)/d" $docs_path
# fix section link/header
sed -i "s/\* \[cortex\.client](#cortex\.client)/\* [cortex\.client\.Client](#cortex-client-client)/g" $docs_path
sed -i "s/# cortex\.client/# cortex\.client\.Client/g" $docs_path
# delete unnecessary section body
sed -i "/# cortex.client.Client/,/## deploy/{//!d}" $docs_path
sed -i "s/# cortex.client.Client/# cortex.client.Client\n/g" $docs_path
# fix table of contents links
sed -i "s/](#cortex\./](#/g" $docs_path
sed -i "s/](#client\.Client\./](#/g" $docs_path
# indentation
sed -i "s/ \* / \* /g" $docs_path
sed -i "s/#### /## /g" $docs_path
# whitespace
sed -i 's/[[:space:]]*$//' $docs_path
truncate -s -1 $docs_path
# Cortex version comment
sed -i "s/^## deploy$/## deploy\n\n<!-- CORTEX_VERSION_MINOR -->/g" $docs_path
sed -i "s/^## deploy\\\_from\\\_file$/## deploy\\\_from\\\_file\n\n<!-- CORTEX_VERSION_MINOR -->/g" $docs_path
pip3 uninstall -y cortex
rm -rf $ROOT/python/client/cortex.egg-info