Metadata-Version: 2.1
Name: arma-server-tools
Version: 0.1.0
Summary: Tools to manage content for arma3Server
Home-page: https://github.com/ryantownshend/arma_server_tools
Author: ryantownshend
Author-email: citizen.townshend@gmail.com
Requires-Python: >=3.6,<4.0
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Dist: beautifulsoup4 (>=4.9.3,<5.0.0)
Requires-Dist: click (>=7.1.2,<8.0.0)
Requires-Dist: click-log (>=0.3.2,<0.4.0)
Requires-Dist: pytest (>=6.2.2,<7.0.0)
Requires-Dist: pyyaml (>=5.4.1,<6.0.0)
Requires-Dist: rich (>=9.13.0,<10.0.0)
Project-URL: Repository, https://github.com/ryantownshend/arma_server_tools
Description-Content-Type: text/markdown

# arma server tools

Tools to manage running content on arma3server

## reference material

### commands

    poetry run server --help
    poetry run pull --help

### Arma server stuff

- <https://community.bistudio.com/wiki/Arma_Dedicated_Server>
- <https://community.bistudio.com/wiki/server.cfg>
- <https://developer.valvesoftware.com/wiki/Arma_3_Dedicated_Server>

### python libraries

- [poetry](https://python-poetry.org)
- [click](https://click.palletsprojects.com/en/7.x/)
- [click_log](https://click-log.readthedocs.io)
- [rich](https://rich.readthedocs.io/en/stable/introduction.html)
- [PyYAML](https://pyyaml.org/wiki/PyYAMLDocumentation)
- [pytest](https://docs.pytest.org/en/stable/)


### articles references

- <https://docs.python.org/3/library/subprocess.html>
- <https://docs.python.org/3/library/shutil.html>
- <https://docs.python.org/3/library/os.html?highlight=os%20symlink#os.symlink>

## yaml files

### yaml config in home dir

~~~
--- # ~/arma_server.yaml
username: steam_username
password: steam_password
workshop: "/home/steam/.steam/steamapps/workshop/content/107410"
arma_home: "/home/steam/.steam/steamcmd/arma3"
arma_configs: "/home/steam/arma_configs"
~~~

### yaml config for specific server

- name: name of the server
- config: relative path to the arma cfg file, starting from the arma_configs folder
- port: port the server is on, defaults to 2302 if nothing is set
- mods: list of mods to load

without mods

~~~
--- # example without mods
name: direct_action_altis
config: direct_action/direct_action_altis.cfg
port: 2302
~~~

with mods

~~~
--- # example with some mods 
name: survival_altis
config: survival/survival_altis.cfg
mods: 
  - cba_a3 
  - niarms_all
~~~


