Fuck Zucchetti!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
blallo baa70bd05f
Bump version: 1.1.2 → 1.1.3
1 month ago
api Manage session properly. 1 month ago
bot.z_web [remove] package-lock.json from repo 2 months ago
bot_z Bump version: 1.1.2 → 1.1.3 1 month ago
docs setup.py 2 months ago
tests Blacken'd 2 months ago
.dockerignore dockerignoring Makefile. 2 months ago
.editorconfig Init 10 months ago
.gitignore Update gitignore. 2 months ago
.pylintrc Pylint configuration. 2 months ago
.travis.yml Init 10 months ago
Dockerfile Bump version: 1.1.2 → 1.1.3 1 month ago
LICENSE login/logout mostly working. 2 months ago
MANIFEST.in Cleanup 2 months ago
Makefile Bump version: 1.1.2 → 1.1.3 1 month ago
README.md Updated README. 2 months ago
entrypoint.sh Change entrypoint of dockerfile. 2 months ago
requirements_build.txt Cleanup 2 months ago
setup.cfg Bump version: 1.1.2 → 1.1.3 1 month ago
setup.py Bump version: 1.1.2 → 1.1.3 1 month ago
tox.ini Init 10 months ago

README.md

Bot_Z

A bot to easen the daily routine with zucchetti virtual badge.

  • Free software: GLWTS public licence.

Features

  • Login/Logout
  • Check in/Check out
  • web ui

Develop

To allow local development you either need a configuration file named .botz.yaml in the root of the project with something like this:

---
base_uri: "<your_target_uri>"
debug: true
headless: true
log:
  level: DEBUG
  syslog: false
http:
  bind_addr:
    - "127.0.0.1"
  port: 3003
  cookie_secure: false
  cors_allow: "http://localhost:3000"

Read the docstring in api/conf.py to understand the menaning of the various parameters.

Do not pip install -e .. It will miss the geckodriver download step. Take a look at the provided Dockerfile.

You can either run it:

$ docker build -t botz:latest .
$ docker run -v $PWD:/app -p "3003:3003" botz

and find a working app at http://localhost:3003. Or you can python setup.py bdist_wheel && python setup.py develop. You will need:

  • python >= 3.7
  • yarn (npm support coming soon…)

If you want to develop the ui, you can also serve it via yarn (as it supports hot reload):

$ cd bot.z_web
$ yarn start

You will find a working ui at localhost:3000 (but you need the last two lines of the previous example config file).

Install

Either clone this repo and pip install . or use one of the provided packages. Pay attention: this package needs a working binary of geckodriver. You can either proceed in one of the following ways:

  • Install the source distribution and put in your $PATH the geckodriver binary (that can be downloaded here)
  • Install the wheel for your architecture
  • pip install . or pip install -e . will download the latest geckodriver and put it in a path where the code will be able to find it.

BEWARE: the code gives precedence to the geckodriver in $PATH over that donwloaded.

TODO

  • Check in/out
  • systemd {unit, timer}
  • APIs
  • Mailer