forked from esphome/esphome
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
ee2c535
commit 17798de
Showing
12 changed files
with
164 additions
and
17 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# Dockerfile for HassIO add-on | ||
ARG BUILD_FROM=ubuntu:bionic | ||
FROM ${BUILD_FROM} | ||
|
||
# Re-declare BUILD_FROM to fix weird docker issue | ||
ARG BUILD_FROM | ||
|
||
# On amd64 and alike, using ubuntu as the base is better as building | ||
# for the ESP32 only works with glibc (and ubuntu). However, on armhf | ||
# the build toolchain frequently procudes segfaults under ubuntu. | ||
# -> Use ubuntu for most architectures, except alpine for armhf | ||
# | ||
# * python and related required because this is a python project | ||
# * git required for platformio library dependencies downloads | ||
# * libc6-compat and openssh required on alpine for weird reasons | ||
# * disable platformio telemetry on install | ||
RUN /bin/bash -c "if [[ '$BUILD_FROM' = *\"ubuntu\"* ]]; then \ | ||
apt-get update && apt-get install -y --no-install-recommends \ | ||
python python-pip python-setuptools git && \ | ||
rm -rf /var/lib/apt/lists/* /tmp/*; \ | ||
else \ | ||
apk add --no-cache python2 py2-pip git openssh libc6-compat; \ | ||
fi" && \ | ||
pip install --no-cache-dir platformio && \ | ||
platformio settings set enable_telemetry No | ||
|
||
|
||
# Create fake project to make platformio install all depdencies. | ||
# * Ignore build errors from platformio - empty project | ||
# * On alpine, only install ESP8266 toolchain | ||
COPY platformio.ini /pio/platformio.ini | ||
RUN /bin/bash -c "if [[ '$BUILD_FROM' = *\"ubuntu\"* ]]; then \ | ||
platformio run -e espressif32 -e espressif8266 -d /pio; \ | ||
else \ | ||
echo \"\$(head -8 /pio/platformio.ini)\" >/pio/platformio.ini; \ | ||
platformio run -e espressif8266 -d /pio; \ | ||
fi"; rm -rf /pio | ||
|
||
# Install latest esphomeyaml from git | ||
RUN pip install --no-cache-dir \ | ||
git+git://github.com/OttoWinter/esphomeyaml.git | ||
|
||
CMD ["esphomeyaml", "/config/esphomeyaml", "dashboard"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
{ | ||
"squash": false, | ||
"build_from": { | ||
"aarch64": "arm64v8/ubuntu:bionic", | ||
"amd64": "ubuntu:bionic", | ||
"armhf": "homeassistant/armhf-base:latest", | ||
"i386": "i386/ubuntu:bionic" | ||
}, | ||
"args": {} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
{ | ||
"name": "esphomeyaml-edge", | ||
"version": "dev", | ||
"slug": "esphomeyaml-edge", | ||
"description": "Development build of the esphomeyaml HassIO add-on.", | ||
"url": "https://esphomelib.com/esphomeyaml/index.html", | ||
"startup": "application", | ||
"webui": "http://[HOST]:[PORT:6052]", | ||
"boot": "auto", | ||
"ports": { | ||
"6052/tcp": 6052, | ||
"6053/tcp": 6053 | ||
}, | ||
"arch": [ | ||
"aarch64", | ||
"amd64", | ||
"armhf", | ||
"i386" | ||
], | ||
"auto_uart": true, | ||
"map": [ | ||
"config:rw" | ||
], | ||
"options": {}, | ||
"environment": { | ||
"ESPHOMEYAML_OTA_HOST_PORT": "6053" | ||
}, | ||
"schema": {} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
; This file allows the docker build file to install the required platformio | ||
; platforms | ||
|
||
[env:espressif8266] | ||
platform = espressif8266 | ||
board = nodemcuv2 | ||
framework = arduino | ||
|
||
[env:espressif32] | ||
platform = espressif32 | ||
board = nodemcu-32s | ||
framework = arduino |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,46 @@ | ||
# Dockerfile for HassIO add-on | ||
ARG BUILD_FROM | ||
FROM $BUILD_FROM | ||
ARG BUILD_FROM=ubuntu:bionic | ||
FROM ${BUILD_FROM} | ||
|
||
ENV LANG C.UTF-8 | ||
# Re-declare BUILD_FROM to fix weird docker issue | ||
ARG BUILD_FROM | ||
ARG BUILD_VERSION | ||
|
||
# Install requirements for add-on | ||
RUN apk add --no-cache python2 py2-pip git openssh libc6-compat && \ | ||
# On amd64 and alike, using ubuntu as the base is better as building | ||
# for the ESP32 only works with glibc (and ubuntu). However, on armhf | ||
# the build toolchain frequently procudes segfaults under ubuntu. | ||
# -> Use ubuntu for most architectures, except alpine for armhf | ||
# | ||
# * python and related required because this is a python project | ||
# * git required for platformio library dependencies downloads | ||
# * libc6-compat and openssh required on alpine for weird reasons | ||
# * disable platformio telemetry on install | ||
RUN /bin/bash -c "if [[ '$BUILD_FROM' = *\"ubuntu\"* ]]; then \ | ||
apt-get update && apt-get install -y --no-install-recommends \ | ||
python python-pip python-setuptools git && \ | ||
rm -rf /var/lib/apt/lists/* /tmp/*; \ | ||
else \ | ||
apk add --no-cache python2 py2-pip git openssh libc6-compat; \ | ||
fi" && \ | ||
pip install --no-cache-dir platformio && \ | ||
platformio platform install espressif8266 \ | ||
--with-package tool-esptool \ | ||
--with-package framework-arduinoespressif8266 \ | ||
--with-package tool-mkspiffs \ | ||
--with-package tool-espotapy | ||
platformio settings set enable_telemetry No | ||
|
||
|
||
# Create fake project to make platformio install all depdencies. | ||
# * Ignore build errors from platformio - empty project | ||
# * On alpine, only install ESP8266 toolchain | ||
COPY platformio.ini /pio/platformio.ini | ||
RUN /bin/bash -c "if [[ '$BUILD_FROM' = *\"ubuntu\"* ]]; then \ | ||
platformio run -e espressif32 -e espressif8266 -d /pio; \ | ||
else \ | ||
echo \"\$(head -8 /pio/platformio.ini)\" >/pio/platformio.ini; \ | ||
platformio run -e espressif8266 -d /pio; \ | ||
fi"; rm -rf /pio | ||
|
||
# Install latest esphomeyaml from git | ||
RUN pip install --no-cache-dir \ | ||
git+git://github.com/OttoWinter/[email protected] \ | ||
tornado esptool | ||
esphomeyaml==${BUILD_VERSION} \ | ||
tornado \ | ||
esptool | ||
|
||
CMD ["esphomeyaml", "/config/esphomeyaml", "dashboard"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
{ | ||
"squash": false, | ||
"build_from": { | ||
"aarch64": "arm64v8/ubuntu:bionic", | ||
"amd64": "ubuntu:bionic", | ||
"armhf": "homeassistant/armhf-base:latest", | ||
"i386": "i386/ubuntu:bionic" | ||
}, | ||
"args": {} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
; This file allows the docker build file to install the required platformio | ||
; platforms | ||
|
||
[env:espressif8266] | ||
platform = espressif8266 | ||
board = nodemcuv2 | ||
framework = arduino | ||
|
||
[env:espressif32] | ||
platform = espressif32 | ||
board = nodemcu-32s | ||
framework = arduino |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,3 +3,5 @@ platformio==3.5.2 | |
pyyaml==3.12 | ||
paho-mqtt==1.3.1 | ||
colorlog==3.1.2 | ||
tornado==5.0.2 | ||
esptool==2.3.1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters