Advertisement
Guest User

Untitled

a guest
Jun 25th, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.75 KB | None | 0 0
  1. import click
  2.  
  3. @click.group()
  4. @click.version_option()
  5. def cli():
  6. pass #Entry Point
  7.  
  8. @cli.group()
  9. @click.pass_context
  10. def cloudflare(ctx):
  11. pass
  12.  
  13. @cloudflare.group('zone')
  14. def cloudflare_zone():
  15. pass
  16.  
  17. @cloudflare_zone.command('add')
  18. @click.option('--jumpstart', '-j', default=True)
  19. @click.option('--organization', '-o', default='')
  20. @click.argument('url')
  21. @click.pass_obj
  22. @__cf_error_handler
  23. def cloudflare_zone_add(ctx, url, jumpstart, organization):
  24. pass
  25.  
  26. @cloudflare.group('record')
  27. def cloudflare_record():
  28. pass
  29.  
  30. @cloudflare_record.command('add')
  31. @click.option('--ttl', '-t')
  32. @click.argument('domain')
  33. @click.argument('name')
  34. @click.argument('type')
  35. @click.argument('content')
  36. @click.pass_obj
  37. @__cf_error_handler
  38. def cloudflare_record_add(ctx, domain, name, type, content, ttl):
  39. pass
  40.  
  41. @cloudflare_record.command('edit')
  42. @click.option('--ttl', '-t')
  43. @click.argument('domain')
  44. @click.argument('name')
  45. @click.argument('type')
  46. @click.argument('content')
  47. @click.pass_obj
  48. @__cf_error_handler
  49. def cloudflare_record_edit(ctx, domain):
  50. pass
  51.  
  52. @cli.group()
  53. @click.pass_context
  54. def uptimerobot(ctx):
  55. pass
  56.  
  57. @uptimerobot.command('add')
  58. @click.option('--alert', '-a', default=True)
  59. @click.argument('name')
  60. @click.argument('url')
  61. @click.pass_obj
  62. def uptimerobot_add(ctx, name, url, alert):
  63. pass
  64.  
  65. @uptimerobot.command('delete')
  66. @click.argument('names', nargs=-1, required=True)
  67. @click.pass_obj
  68. def uptimerobot_delete(ctx, names):
  69. pass
  70.  
  71. cli/
  72. ├── __init__.py
  73. ├── cli.py
  74. ├── group1
  75. │   ├── __init__.py
  76. │   ├── commands.py
  77. └── group2
  78. ├── __init__.py
  79. └── commands.py
  80.  
  81. import click
  82.  
  83.  
  84. @click.command()
  85. def version():
  86. """Display the current version."""
  87. click.echo(_read_version())
  88.  
  89. import click
  90.  
  91. from .group1 import commands as group1
  92. from .group2 import commands as group2
  93.  
  94. @click.group()
  95. def entry_point():
  96. pass
  97.  
  98. entry_point.add_command(group1.command_group)
  99. entry_point.add_command(group2.version)
  100.  
  101. project/
  102. ├── __init__.py
  103. ├── init.py
  104. └── commands
  105. ├── __init__.py
  106. └── cloudflare.py
  107.  
  108. import click
  109. from .commands.cloudflare import cloudflare
  110.  
  111.  
  112. @click.group()
  113. def cli():
  114. pass
  115.  
  116.  
  117. cli.add_command(cloudflare)
  118.  
  119. import click
  120.  
  121.  
  122. @click.group()
  123. def cloudflare():
  124. pass
  125.  
  126.  
  127. @cloudflare.command()
  128. def zone():
  129. click.echo('This is the zone subcommand of the cloudflare command')
  130.  
  131. $ python init.py cloudflare zone
  132.  
  133. import click
  134.  
  135. from command_cloudflare import cloudflare
  136. from command_uptimerobot import uptimerobot
  137.  
  138. cli = click.CommandCollection(sources=[cloudflare, uptimerobot])
  139.  
  140. if __name__ == '__main__':
  141. cli()
  142.  
  143. import commands_main
  144. import commands_cloudflare
  145. import commands_uptimerobot
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement