Restructured to allow for future expansion
- Removed docker_compose
This commit is contained in:
+8
-3
@@ -1,7 +1,12 @@
|
||||
FROM python:slim
|
||||
FROM python:3.7-alpine
|
||||
LABEL maintainer="Kevin Fronczak <kfronczak@gmail.com>"
|
||||
|
||||
VOLUME /media
|
||||
|
||||
RUN python -m pip install --upgrade pip
|
||||
RUN pip3 install blinkpy
|
||||
|
||||
COPY entrypoint.py .
|
||||
ENTRYPOINT ["python3", "entrypoint.py"]
|
||||
COPY app/ .
|
||||
|
||||
ENTRYPOINT ["python", "./app.py"]
|
||||
CMD []
|
||||
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
""" Script to run blinkpy as an app."""
|
||||
from os import environ
|
||||
from datetime import datetime, timedelta
|
||||
from blinkpy import blinkpy
|
||||
|
||||
|
||||
USERNAME = environ.get('USERNAME')
|
||||
PASSWORD = environ.get('PASSWORD')
|
||||
TIMEDELTA = timedelta(environ.get('TIMEDELTA', 1))
|
||||
|
||||
|
||||
def get_date():
|
||||
"""Returns now - timedelta for blinkpy."""
|
||||
return (datetime.now() - TIMEDELTA).isoformat()
|
||||
|
||||
|
||||
def download_videos(blink, save_dir='/media'):
|
||||
"""Method to download videos."""
|
||||
blink.download_videos(save_dir, since=get_date())
|
||||
return
|
||||
|
||||
|
||||
def start():
|
||||
"""Startup blink app."""
|
||||
blink = blinkpy.Blink(username=USERNAME, password=PASSWORD)
|
||||
blink.start()
|
||||
return blink
|
||||
|
||||
if __name__ == '__main__':
|
||||
blink = start()
|
||||
download_videos(blink)
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
#!/bin/bash
|
||||
docker build -t fronzbot/blinkpy:latest ./
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
# bash run.sh [username] [password]
|
||||
|
||||
if [ "$#" -ne 2 ]; then
|
||||
echo ""
|
||||
echo "ERROR: Requries Blink username and password as arguments."
|
||||
echo "bash run.sh [username] [password]"
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
|
||||
set -ex
|
||||
USER=fronzbot
|
||||
IMAGE=blinkpy
|
||||
CONFIG=$HOME/blinkpy_media
|
||||
USERNAME=$1
|
||||
PASSWORD=$2
|
||||
|
||||
mkdir -p $CONFIG
|
||||
|
||||
result=$(docker images -q $IMAGE)
|
||||
if [ $result ]; then
|
||||
docker rm $IMAGE
|
||||
fi
|
||||
docker run -it --name ${IMAGE} \
|
||||
-v $CONFIG:/media \
|
||||
-e USERNAME=${USERNAME} \
|
||||
-e PASSWORD=${PASSWORD} \
|
||||
$USER/$IMAGE \
|
||||
/bin/bash
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
version: "3"
|
||||
services:
|
||||
blinkpy:
|
||||
image: 3ch01c/blinkpy
|
||||
environment:
|
||||
- USERNAME
|
||||
- PASSWORD
|
||||
volumes:
|
||||
- ./media:/media/blinkpy
|
||||
@@ -1,15 +0,0 @@
|
||||
''' Download videos from Blink '''
|
||||
from os import environ
|
||||
from datetime import datetime, timedelta
|
||||
from blinkpy import blinkpy
|
||||
|
||||
USERNAME = environ.get('USERNAME')
|
||||
PASSWORD = environ.get('PASSWORD')
|
||||
TIMEDELTA = int(environ.get('TIMEDELTA', 1))
|
||||
|
||||
blink = blinkpy.Blink(username=USERNAME, password=PASSWORD)
|
||||
blink.start()
|
||||
blink.download_videos('/media/blinkpy', since=(datetime.now() -
|
||||
timedelta(days=TIMEDELTA)
|
||||
).isoformat()
|
||||
)
|
||||
Reference in New Issue
Block a user