2019-08-17 01:19:35 -05:00
|
|
|
# -*- coding: utf-8; -*-
|
|
|
|
################################################################################
|
|
|
|
#
|
|
|
|
# Rattail -- Retail Software Framework
|
2024-07-01 11:21:34 -05:00
|
|
|
# Copyright © 2010-2024 Lance Edgar
|
2019-08-17 01:19:35 -05:00
|
|
|
#
|
|
|
|
# This file is part of Rattail.
|
|
|
|
#
|
|
|
|
# Rattail is free software: you can redistribute it and/or modify it under the
|
|
|
|
# terms of the GNU General Public License as published by the Free Software
|
|
|
|
# Foundation, either version 3 of the License, or (at your option) any later
|
|
|
|
# version.
|
|
|
|
#
|
|
|
|
# Rattail is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
|
|
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
|
|
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
|
|
|
# details.
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU General Public License along with
|
|
|
|
# Rattail. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
#
|
|
|
|
################################################################################
|
2019-08-16 15:46:01 -05:00
|
|
|
"""
|
|
|
|
Rattail Tutorial commands
|
|
|
|
"""
|
|
|
|
|
|
|
|
import sys
|
|
|
|
|
2024-07-01 11:21:34 -05:00
|
|
|
import typer
|
2019-08-16 15:46:01 -05:00
|
|
|
|
2024-07-01 11:21:34 -05:00
|
|
|
from rattail import commands
|
|
|
|
from rattail.commands.typer import make_typer
|
2019-08-16 15:46:01 -05:00
|
|
|
from rattail_tutorial import __version__
|
|
|
|
|
|
|
|
|
2024-07-01 11:21:34 -05:00
|
|
|
rattail_tutorial_typer = make_typer(
|
|
|
|
name='rattail_tutorial',
|
|
|
|
help="Rattail Tutorial (custom Rattail system)"
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
@rattail_tutorial_typer.command()
|
|
|
|
def hello(
|
|
|
|
ctx: typer.Context,
|
|
|
|
):
|
|
|
|
"""
|
|
|
|
The requisite 'hello world' example
|
|
|
|
"""
|
|
|
|
sys.stdout.write("hello world!\n")
|
|
|
|
|
|
|
|
|
2019-08-16 15:46:01 -05:00
|
|
|
def main(*args):
|
|
|
|
"""
|
|
|
|
Main entry point for Rattail Tutorial command system
|
|
|
|
"""
|
|
|
|
args = list(args or sys.argv[1:])
|
|
|
|
cmd = Command()
|
|
|
|
cmd.run(*args)
|
|
|
|
|
|
|
|
|
|
|
|
class Command(commands.Command):
|
|
|
|
"""
|
|
|
|
Main command for Rattail Tutorial
|
|
|
|
"""
|
|
|
|
name = 'rattail_tutorial'
|
|
|
|
version = __version__
|
|
|
|
description = "Rattail Tutorial (custom Rattail system)"
|
|
|
|
long_description = ''
|
|
|
|
|
|
|
|
|
|
|
|
class HelloWorld(commands.Subcommand):
|
|
|
|
"""
|
|
|
|
The requisite 'hello world' example
|
|
|
|
"""
|
|
|
|
name = 'hello'
|
|
|
|
description = __doc__.strip()
|
|
|
|
|
|
|
|
def run(self, args):
|
|
|
|
self.stdout.write("hello world!\n")
|