aboutsummaryrefslogtreecommitdiff
path: root/diplomacy/server/run.py
diff options
context:
space:
mode:
Diffstat (limited to 'diplomacy/server/run.py')
-rwxr-xr-xdiplomacy/server/run.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/diplomacy/server/run.py b/diplomacy/server/run.py
new file mode 100755
index 0000000..f47ed4f
--- /dev/null
+++ b/diplomacy/server/run.py
@@ -0,0 +1,35 @@
+#!/usr/bin/env python3
+# ==============================================================================
+# Copyright (C) 2019 - Philip Paquette, Steven Bocco
+#
+# This program is free software: you can redistribute it and/or modify it under
+# the terms of the GNU Affero General Public License as published by the Free
+# Software Foundation, either version 3 of the License, or (at your option) any
+# later version.
+#
+# This program 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 Affero General Public License for more
+# details.
+#
+# You should have received a copy of the GNU Affero General Public License along
+# with this program. If not, see <https://www.gnu.org/licenses/>.
+# ==============================================================================
+""" Small module script to quickly start a server with pretty log-printing.
+ You can stop the server with keyboard interruption (Ctrl+C). Usage:
+ python -m diplomacy.server.run # run on port 8432.
+ python -m diplomacy.server.run --port=<given port> # run on given port.
+"""
+import argparse
+from diplomacy import Server
+from diplomacy.utils import constants
+
+PARSER = argparse.ArgumentParser(description='Run server.')
+PARSER.add_argument('--port', '-p', type=int, default=constants.DEFAULT_PORT,
+ help='run on the given port (default: %s)' % constants.DEFAULT_PORT)
+ARGS = PARSER.parse_args()
+
+try:
+ Server().start(port=ARGS.port)
+except KeyboardInterrupt:
+ print('Keyboard interruption.')