Skip to content

Commit

Permalink
Changed files server/autosync.sh,server/docker-run.sh,server/gaia_ser…
Browse files Browse the repository at this point in the history
…ver/helpers.py,server/public/js/chart.js,server/templates/index.html,server/venv/bin/activate,server/venv/bin/activate.csh,server/venv/bin/activate.fish,server/venv/bin/python,server/venv/bin/python3,server/venv/bin/python3.7,server/venv/lib64,server/venv/pyvenv.cfg
  • Loading branch information
lbarman committed Jun 3, 2019
1 parent bc72031 commit f8d872c
Show file tree
Hide file tree
Showing 13 changed files with 223 additions and 17 deletions.
2 changes: 1 addition & 1 deletion server/autosync.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
rsync -arvz -e "ssh -p 11733" . root@lbarman.ch:/root/lbarman-debian/gaia
rsync -arvz -e "ssh -p 11733" . root@lbarman.ch:/root/lbarman-debian/gaia --exclude data
contscp . root@lbarman.ch:/root/lbarman-debian/gaia 11733

8 changes: 8 additions & 0 deletions server/docker-run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,14 @@ while sleep 60; do
# If they are not both 0, then something is wrong
if [ $PROCESS_1_STATUS -ne 0 -o $PROCESS_2_STATUS -ne 0 ]; then
echo "One of the processes has already exited."

if [ $PROCESS_1_STATUS -ne 0 ]; then
echo "Process 1 has already exited."
fi
if [ $PROCESS_2_STATUS -ne 0 ]; then
echo "Process 2 has already exited."
fi

exit 1
fi
done
Expand Down
6 changes: 3 additions & 3 deletions server/gaia_server/helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,14 +56,14 @@ def build_status_data_html(status):
feeding += '<span class="no">No</span>'
else:
feeding += '<span class="yes">Yes</span>'
feeding += ', '+s['feeding_module_cronstring']
feeding += ', '+str(s['feeding_module_cronstring'])

watering = '<span class="wateringColor">Watering</span>: '
if s['watering_module_activated'] == 0:
watering += '<span class="no">No</span>'
else:
watering += '<span class="yes">Yes</span>'
watering += ', '+s['watering_module_cronstring']
watering += ', '+str(s['watering_module_cronstring'])

water_levels = "{0},{1},{2},{3}".format(s['watering_pump_1_duration'], s['watering_pump_2_duration'], s['watering_pump_3_duration'], s['watering_pump_4_duration'])

Expand Down Expand Up @@ -139,7 +139,7 @@ def build_reports_data_html(reports):
server_ts=r['server_timestamp'].strftime("%H:%M:%S %d/%m/%Y"),
local_ts=r['local_timestamp'].strftime("%H:%M:%S %d/%m/%Y"),
action_type=action_type,
details=r['action_details'],
details=str(r['action_details']).replace("\n", "<br/>"),
type=type)
report_id += 1

Expand Down
26 changes: 16 additions & 10 deletions server/public/js/chart.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
var PRECISION = 24 * 3600
var PRECISION_REPORTS = 24 * 3600
var PRECISION_STATUS = 3600

function meanArray(array) {
var acc = 0
Expand All @@ -8,16 +9,16 @@ function meanArray(array) {
return Math.round(acc * 10 / array.length) / 10
}

function roundTo(x) {
return Math.floor(x / PRECISION) * PRECISION
function roundTo(x, precision) {
return Math.floor(x / precision) * precision
}

function groupByLabelAndSum(rawData, labels, operation) {
function groupByLabelAndSum(rawData, labels, operation, round_to) {
var hashMap = {}
for (var property in rawData) {
if (rawData.hasOwnProperty(property)) {

t = roundTo(Number(property))
t = roundTo(Number(property), round_to)
if(operation == "sum") {
if (hashMap[t] == undefined) {
hashMap[t] = 0
Expand Down Expand Up @@ -93,17 +94,22 @@ function groupByLabelAndSum(rawData, labels, operation) {
}
}

var pingsLabelsAndVals = groupByLabelAndSum(data_status, undefined, "sum");
var tempLabelsAndVals = groupByLabelAndSum(data_temps, pingsLabelsAndVals[0], "mean");
var feedingLabelsAndVals = groupByLabelAndSum(data_feeding, pingsLabelsAndVals[0], "sum");
var wateringLabelsAndVals = groupByLabelAndSum(data_watering, pingsLabelsAndVals[0], "sum");
var pingsLabelsAndVals = groupByLabelAndSum(data_status, undefined, "sum", PRECISION_REPORTS);
var tempLabelsAndVals = groupByLabelAndSum(data_temps, undefined, "mean", PRECISION_STATUS);
var feedingLabelsAndVals = groupByLabelAndSum(data_feeding, pingsLabelsAndVals[0], "sum", PRECISION_REPORTS);
var wateringLabelsAndVals = groupByLabelAndSum(data_watering, pingsLabelsAndVals[0], "sum", PRECISION_REPORTS);

// nice labels
var labels = [];
for (i = 0; i < pingsLabelsAndVals[0].length; i++) {
d = pingsLabelsAndVals[0][i];
labels.push(d.getDate() + "/" + (d.getMonth() + 1) + " " + d.getHours()+"h");
}
var labels2 = [];
for (i = 0; i < tempLabelsAndVals[0].length; i++) {
d = tempLabelsAndVals[0][i];
labels2.push(d.getDate() + "/" + (d.getMonth() + 1) + " " + d.getHours()+"h");
}

// make the important info (watering, feeding) stand out by scaling them with respect to max pings
maxValue = 0
Expand Down Expand Up @@ -182,7 +188,7 @@ for (i = 0; i < tempLabelsAndVals[1].length; i++) {
temp3Values.push(tempLabelsAndVals[1][i]['y'][3])
}
var lineChartData = {
labels: labels,
labels: labels2,
datasets: [{
label: 'Temperature',
backgroundColor: color(red).alpha(0.1).rgbString(),
Expand Down
6 changes: 3 additions & 3 deletions server/templates/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -102,13 +102,13 @@ <h3>Update Config</h3>
</div>

<div id="headers" class="headers">
<h3><a href="#" id="status_link">Status</a> / <a href="#" id="reports_link">Reports</a></h3>
<h3><a href="#" id="reports_link">Reports</a> / <a href="#" id="status_link">Status</a></h3>
</div>

<div id="status">
<div id="status" style="display:none">
{{STATUS}}
</div>
<div id="reports" style="display:none">
<div id="reports">
{{REPORTS}}
</div>

Expand Down
76 changes: 76 additions & 0 deletions server/venv/bin/activate
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# This file must be used with "source bin/activate" *from bash*
# you cannot run it directly

deactivate () {
# reset old environment variables
if [ -n "${_OLD_VIRTUAL_PATH:-}" ] ; then
PATH="${_OLD_VIRTUAL_PATH:-}"
export PATH
unset _OLD_VIRTUAL_PATH
fi
if [ -n "${_OLD_VIRTUAL_PYTHONHOME:-}" ] ; then
PYTHONHOME="${_OLD_VIRTUAL_PYTHONHOME:-}"
export PYTHONHOME
unset _OLD_VIRTUAL_PYTHONHOME
fi

# This should detect bash and zsh, which have a hash command that must
# be called to get it to forget past commands. Without forgetting
# past commands the $PATH changes we made may not be respected
if [ -n "${BASH:-}" -o -n "${ZSH_VERSION:-}" ] ; then
hash -r
fi

if [ -n "${_OLD_VIRTUAL_PS1:-}" ] ; then
PS1="${_OLD_VIRTUAL_PS1:-}"
export PS1
unset _OLD_VIRTUAL_PS1
fi

unset VIRTUAL_ENV
if [ ! "$1" = "nondestructive" ] ; then
# Self destruct!
unset -f deactivate
fi
}

# unset irrelevant variables
deactivate nondestructive

VIRTUAL_ENV="/home/jwhite/d/git/gaia/server/venv"
export VIRTUAL_ENV

_OLD_VIRTUAL_PATH="$PATH"
PATH="$VIRTUAL_ENV/bin:$PATH"
export PATH

# unset PYTHONHOME if set
# this will fail if PYTHONHOME is set to the empty string (which is bad anyway)
# could use `if (set -u; : $PYTHONHOME) ;` in bash
if [ -n "${PYTHONHOME:-}" ] ; then
_OLD_VIRTUAL_PYTHONHOME="${PYTHONHOME:-}"
unset PYTHONHOME
fi

if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT:-}" ] ; then
_OLD_VIRTUAL_PS1="${PS1:-}"
if [ "x(venv) " != x ] ; then
PS1="(venv) ${PS1:-}"
else
if [ "`basename \"$VIRTUAL_ENV\"`" = "__" ] ; then
# special case for Aspen magic directories
# see http://www.zetadev.com/software/aspen/
PS1="[`basename \`dirname \"$VIRTUAL_ENV\"\``] $PS1"
else
PS1="(`basename \"$VIRTUAL_ENV\"`)$PS1"
fi
fi
export PS1
fi

# This should detect bash and zsh, which have a hash command that must
# be called to get it to forget past commands. Without forgetting
# past commands the $PATH changes we made may not be respected
if [ -n "${BASH:-}" -o -n "${ZSH_VERSION:-}" ] ; then
hash -r
fi
37 changes: 37 additions & 0 deletions server/venv/bin/activate.csh
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# This file must be used with "source bin/activate.csh" *from csh*.
# You cannot run it directly.
# Created by Davide Di Blasi <davidedb@gmail.com>.
# Ported to Python 3.3 venv by Andrew Svetlov <andrew.svetlov@gmail.com>

alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; test "\!:*" != "nondestructive" && unalias deactivate'

# Unset irrelevant variables.
deactivate nondestructive

setenv VIRTUAL_ENV "/home/jwhite/d/git/gaia/server/venv"

set _OLD_VIRTUAL_PATH="$PATH"
setenv PATH "$VIRTUAL_ENV/bin:$PATH"


set _OLD_VIRTUAL_PROMPT="$prompt"

if (! "$?VIRTUAL_ENV_DISABLE_PROMPT") then
if ("venv" != "") then
set env_name = "venv"
else
if (`basename "VIRTUAL_ENV"` == "__") then
# special case for Aspen magic directories
# see http://www.zetadev.com/software/aspen/
set env_name = `basename \`dirname "$VIRTUAL_ENV"\``
else
set env_name = `basename "$VIRTUAL_ENV"`
endif
endif
set prompt = "[$env_name] $prompt"
unset env_name
endif

alias pydoc python -m pydoc

rehash
75 changes: 75 additions & 0 deletions server/venv/bin/activate.fish
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# This file must be used with ". bin/activate.fish" *from fish* (http://fishshell.org)
# you cannot run it directly

function deactivate -d "Exit virtualenv and return to normal shell environment"
# reset old environment variables
if test -n "$_OLD_VIRTUAL_PATH"
set -gx PATH $_OLD_VIRTUAL_PATH
set -e _OLD_VIRTUAL_PATH
end
if test -n "$_OLD_VIRTUAL_PYTHONHOME"
set -gx PYTHONHOME $_OLD_VIRTUAL_PYTHONHOME
set -e _OLD_VIRTUAL_PYTHONHOME
end

if test -n "$_OLD_FISH_PROMPT_OVERRIDE"
functions -e fish_prompt
set -e _OLD_FISH_PROMPT_OVERRIDE
functions -c _old_fish_prompt fish_prompt
functions -e _old_fish_prompt
end

set -e VIRTUAL_ENV
if test "$argv[1]" != "nondestructive"
# Self destruct!
functions -e deactivate
end
end

# unset irrelevant variables
deactivate nondestructive

set -gx VIRTUAL_ENV "/home/jwhite/d/git/gaia/server/venv"

set -gx _OLD_VIRTUAL_PATH $PATH
set -gx PATH "$VIRTUAL_ENV/bin" $PATH

# unset PYTHONHOME if set
if set -q PYTHONHOME
set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME
set -e PYTHONHOME
end

if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
# fish uses a function instead of an env var to generate the prompt.

# save the current fish_prompt function as the function _old_fish_prompt
functions -c fish_prompt _old_fish_prompt

# with the original prompt function renamed, we can override with our own.
function fish_prompt
# Save the return status of the last command
set -l old_status $status

# Prompt override?
if test -n "(venv) "
printf "%s%s" "(venv) " (set_color normal)
else
# ...Otherwise, prepend env
set -l _checkbase (basename "$VIRTUAL_ENV")
if test $_checkbase = "__"
# special case for Aspen magic directories
# see http://www.zetadev.com/software/aspen/
printf "%s[%s]%s " (set_color -b blue white) (basename (dirname "$VIRTUAL_ENV")) (set_color normal)
else
printf "%s(%s)%s" (set_color -b blue white) (basename "$VIRTUAL_ENV") (set_color normal)
end
end

# Restore the return status of the previous command.
echo "exit $old_status" | .
_old_fish_prompt
end

set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV"
end
Binary file added server/venv/bin/python
Binary file not shown.
Binary file added server/venv/bin/python3
Binary file not shown.
Binary file added server/venv/bin/python3.7
Binary file not shown.
1 change: 1 addition & 0 deletions server/venv/lib64
3 changes: 3 additions & 0 deletions server/venv/pyvenv.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
home = /usr/bin
include-system-site-packages = true
version = 3.7.3

0 comments on commit f8d872c

Please sign in to comment.