29 lines
990 B
Python
29 lines
990 B
Python
#!/usr/bin/env python
|
|
import os
|
|
import zulip
|
|
|
|
import argparse
|
|
|
|
def main():
|
|
# type: () -> None
|
|
usage = """zulip-api-examples [script_name]
|
|
|
|
Prints the path to the Zulip API example scripts."""
|
|
parser = argparse.ArgumentParser(usage=usage)
|
|
parser.add_argument('script_name',
|
|
nargs='?',
|
|
default='',
|
|
help='print path to the script <script_name>')
|
|
args = parser.parse_args()
|
|
zulip_path = os.path.abspath(os.path.dirname(zulip.__file__))
|
|
examples_path = os.path.abspath(os.path.join(zulip_path, 'examples', args.script_name))
|
|
if os.path.isdir(examples_path) or (args.script_name and os.path.isfile(examples_path)):
|
|
print(examples_path)
|
|
else:
|
|
raise OSError("Examples cannot be accessed at {}: {} does not exist!"
|
|
.format(examples_path,
|
|
"File" if args.script_name else "Directory"))
|
|
|
|
if __name__ == '__main__':
|
|
main()
|