# Make uncloud usable ## 2019-12-31: etcd ## 2019-12-30 test run w/ Ahmed @server11 Ahmed in the seat * Get API running * Get uncloud-host running * ... * Spawn a VM ### Commands / notes * [19:20:24] server11.place6:~# useradd -m uncloud * Why bitmath? (Convince nico :) * I think most of it is already in python3 * **RE:** Nope. I could't be able to find out anything builtin, that does the job * It helps in parsing units. Gb, gB, GB, gb --> GB * It helps in converting from one unit to another. * Example, we use GB as unit typically but some commands like `qemu-system-x86_64 -m 1024` here the `-m` parameter require memory in MegaBytes. So, we can easily convert from GB to MB with single function call * Why sshtunnel **(Removed)** * sphinx is probably not needed on the system **(Removed)** * colorama * Colors on terminals look beautiful :smile:. You will see yourself during demonstration. * werkzeug (isn't that automatically from flask?) **(Removed)** * marshmallow (that was for ...?) * Also sounds like json of python3 might do quite a lot of it * **RE** Please see https://marshmallow.readthedocs.io/en/stable/ * It validates/serializes/de-serializes * It automatically generates sensibe error if input does not validates. * JSON Verification/Serializaiton/Deserialization * simplify etcd * etcd * how to specify multiple servers? * Using users instead of certs (?) * Define a strategy for using etcd correctly * cli * don't fail without the config ! * change the path to the config file (not in ~/ucloud) * locale ``` (uncloud) uncloud@server11:~/ucloud-cli$ ./bin/ucloud-cli RuntimeError: Click will abort further execution because Python 3 was configured to use ASCII as encoding for the environment. Consult https://click.palletsprojects.com/en/7.x/python3/ for mitigation steps. This system supports the C.UTF-8 locale which is recommended. You might be able to resolve your issue by exporting the following environment variables: export LC_ALL=C.UTF-8 export LANG=C.UTF-8 ``` ## General requirements * user uncloud * python3 ## Debian / Devuan ``` apt install python3-flask python3-flask-restful python3-pyotp python3-colorama ``` Not in Devuan 9: * python-etcd3 * python marshmallow ## Servers/hardware * server11.intern.place6.ungleich.ch * server12.intern.place6.ungleich.ch ## Requirements * Production etcd cluster ## OS notes ### Alpine ### Arch ### Devuan