Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| bf6bd43f48 | |||
| ade2f59ae1 | |||
| ea49461d4e | |||
| 375bbff2ec | |||
| 7d1310f9b8 | |||
| 5f0d19622d | |||
| 86e7cc3f82 | |||
| be77348a38 | |||
| 730b57b4a6 | |||
| ec20e62053 | |||
| 3e777b4f9f | |||
| 359b52adea | |||
| 9aa0d8683a | |||
| 5457aa18e5 | |||
| 3b53f9e73c | |||
| c8d960f711 |
@@ -27,7 +27,7 @@ jobs:
|
||||
uses: actions/checkout@v2.3.4
|
||||
- name: 🚀 Run add-on information action
|
||||
id: information
|
||||
uses: frenck/action-addon-information@v1.0.0
|
||||
uses: frenck/action-addon-information@v1.2
|
||||
|
||||
lint-addon:
|
||||
name: Lint Add-on
|
||||
@@ -38,7 +38,7 @@ jobs:
|
||||
- name: ⤵️ Check out code from GitHub
|
||||
uses: actions/checkout@v2.3.4
|
||||
- name: 🚀 Run Add-on Lint
|
||||
uses: frenck/action-addon-linter@v2
|
||||
uses: frenck/action-addon-linter@v2.1
|
||||
with:
|
||||
community: true
|
||||
path: "./${{ needs.information.outputs.target }}"
|
||||
@@ -52,7 +52,7 @@ jobs:
|
||||
- name: ⤵️ Check out code from GitHub
|
||||
uses: actions/checkout@v2.3.4
|
||||
- name: 🚀 Run Hadolint
|
||||
uses: brpaz/hadolint-action@v1.4.0
|
||||
uses: brpaz/hadolint-action@v1.5.0
|
||||
with:
|
||||
dockerfile: "./${{ needs.information.outputs.target }}/Dockerfile"
|
||||
|
||||
@@ -129,7 +129,7 @@ jobs:
|
||||
uses: actions/checkout@v2.3.4
|
||||
- name: 🏗 Set up build cache
|
||||
id: cache
|
||||
uses: actions/cache@v2.1.5
|
||||
uses: actions/cache@v2.1.6
|
||||
with:
|
||||
path: /tmp/.docker-cache
|
||||
key:
|
||||
@@ -138,9 +138,9 @@ jobs:
|
||||
restore-keys: |
|
||||
docker-${{ github.ref }}-${{ matrix.architecture }}
|
||||
- name: 🏗 Set up QEMU
|
||||
uses: docker/setup-qemu-action@v1.0.2
|
||||
uses: docker/setup-qemu-action@v1.2.0
|
||||
- name: 🏗 Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v1.1.2
|
||||
uses: docker/setup-buildx-action@v1.3.0
|
||||
- name: 🏗 Set up CodeNotary
|
||||
run: bash <(curl https://getvcn.codenotary.com -L)
|
||||
- name: ℹ️ Compose build flags
|
||||
@@ -178,7 +178,7 @@ jobs:
|
||||
--exit-status \
|
||||
'.verification.status == 0'
|
||||
- name: 🚀 Build
|
||||
uses: docker/build-push-action@v2.4.0
|
||||
uses: docker/build-push-action@v2.5.0
|
||||
with:
|
||||
push: false
|
||||
context: ${{ needs.information.outputs.target }}
|
||||
|
||||
@@ -36,7 +36,7 @@ jobs:
|
||||
uses: actions/checkout@v2.3.4
|
||||
- name: 🚀 Run add-on information action
|
||||
id: information
|
||||
uses: frenck/action-addon-information@v1.0.0
|
||||
uses: frenck/action-addon-information@v1.2
|
||||
- name: ℹ️ Gather version and environment
|
||||
id: release
|
||||
run: |
|
||||
@@ -72,7 +72,7 @@ jobs:
|
||||
uses: actions/checkout@v2.3.4
|
||||
- name: 🏗 Set up build cache
|
||||
id: cache
|
||||
uses: actions/cache@v2.1.5
|
||||
uses: actions/cache@v2.1.6
|
||||
with:
|
||||
path: /tmp/.docker-cache
|
||||
key:
|
||||
@@ -81,9 +81,9 @@ jobs:
|
||||
restore-keys: |
|
||||
docker-${{ github.ref }}-${{ matrix.architecture }}
|
||||
- name: 🏗 Set up QEMU
|
||||
uses: docker/setup-qemu-action@v1.0.2
|
||||
uses: docker/setup-qemu-action@v1.2.0
|
||||
- name: 🏗 Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v1.1.2
|
||||
uses: docker/setup-buildx-action@v1.3.0
|
||||
- name: 🏗 Set up CodeNotary
|
||||
run: bash <(curl https://getvcn.codenotary.com -L)
|
||||
- name: ℹ️ Compose build flags
|
||||
@@ -108,7 +108,7 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
- name: 🏗 Login to GitHub Container Registry
|
||||
uses: docker/login-action@v1.8.0
|
||||
uses: docker/login-action@v1.9.0
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
@@ -127,7 +127,7 @@ jobs:
|
||||
--exit-status \
|
||||
'.verification.status == 0'
|
||||
- name: 🚀 Build
|
||||
uses: docker/build-push-action@v2.4.0
|
||||
uses: docker/build-push-action@v2.5.0
|
||||
with:
|
||||
load: true
|
||||
# yamllint disable rule:line-length
|
||||
|
||||
@@ -17,6 +17,6 @@ jobs:
|
||||
- name: ⤵️ Check out code from GitHub
|
||||
uses: actions/checkout@v2.3.4
|
||||
- name: 🚀 Run Label Syncer
|
||||
uses: micnncim/action-label-syncer@v1.2.0
|
||||
uses: micnncim/action-label-syncer@v1.3.0
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
@@ -13,7 +13,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: 🚀 Run stale
|
||||
uses: actions/stale@v3.0.18
|
||||
uses: actions/stale@v3.0.19
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
days-before-stale: 30
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
ARG BUILD_FROM=ghcr.io/hassio-addons/base/amd64:9.2.0
|
||||
ARG BUILD_FROM=ghcr.io/hassio-addons/base/amd64:9.2.2
|
||||
# hadolint ignore=DL3006
|
||||
FROM ${BUILD_FROM}
|
||||
|
||||
RUN echo 'http://dl-cdn.alpinelinux.org/alpine/edge/testing' >> /etc/apk/repositories
|
||||
RUN echo 'http://dl-cdn.alpinelinux.org/alpine/edge/community' >> /etc/apk/repositories
|
||||
RUN echo 'http://dl-cdn.alpinelinux.org/alpine/edge/main' >> /etc/apk/repositories
|
||||
|
||||
COPY run.sh /run.sh
|
||||
RUN chmod +x /run.sh
|
||||
RUN /run.sh
|
||||
@@ -30,4 +26,4 @@ LABEL \
|
||||
org.label-schema.usage="https://github.com/GauthamVarmaK/addon-tvheadend" \
|
||||
org.label-schema.vcs-ref=${BUILD_REF} \
|
||||
org.label-schema.vcs-url="https://github.com/GauthamVarmaK/addon-tvheadend" \
|
||||
org.label-schema.vendor="https://github.com/GauthamVarmaK"
|
||||
org.label-schema.vendor="https://github.com/GauthamVarmaK"
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"build_from": {
|
||||
"aarch64": "ghcr.io/hassio-addons/base/aarch64:9.2.0",
|
||||
"amd64": "ghcr.io/hassio-addons/base/amd64:9.2.0",
|
||||
"armhf": "ghcr.io/hassio-addons/base/armhf:9.2.0",
|
||||
"armv7": "ghcr.io/hassio-addons/base/armv7:9.2.0",
|
||||
"i386": "ghcr.io/hassio-addons/base/i386:9.2.0"
|
||||
"aarch64": "ghcr.io/hassio-addons/base/aarch64:9.2.2",
|
||||
"amd64": "ghcr.io/hassio-addons/base/amd64:9.2.2",
|
||||
"armhf": "ghcr.io/hassio-addons/base/armhf:9.2.2",
|
||||
"armv7": "ghcr.io/hassio-addons/base/armv7:9.2.2",
|
||||
"i386": "ghcr.io/hassio-addons/base/i386:9.2.2"
|
||||
}
|
||||
}
|
||||
|
||||
+65
-46
@@ -1,77 +1,96 @@
|
||||
#!/usr/bin/env bashio
|
||||
|
||||
bashio::log.info "[TVHeadend] Installing TVHeadend"
|
||||
apk update && apk add --no-cache tvheadend=4.2.8-r3 git=2.31.1-r1 mono=6.12.0.122-r1
|
||||
apk update && apk add --no-cache tvheadend=4.2.8-r3
|
||||
|
||||
mkdir -p /config/tvheadend/recordings
|
||||
|
||||
bashio::log.info '[TVHeadend] Setup completed without errors!!'
|
||||
|
||||
mkdir -p ~/.wg++
|
||||
ln -sf /config/tvheadend/wg++/guide.xml ~/.wg++/guide.xml
|
||||
check_webgrabplus(){
|
||||
if [ -z "$(ls -A /config/tvheadend/wg++)" ]; then return 1; else return 0; fi
|
||||
}
|
||||
|
||||
if [ "$(ls -A /config/tvheadend/wg++)" ]; then
|
||||
webgrabplus_install(){
|
||||
if apk update; then
|
||||
bashio::log.info '[Webgrab+] APK: Installing required packages.'
|
||||
if apk add --no-cache --virtual .build-deps git mono --repository http://dl-cdn.alpinelinux.org/alpine/edge/testing; then
|
||||
bashio::log.info '[Webgrab+] Installing Webgrab+.'
|
||||
mkdir -p ~/.wg++
|
||||
ln -sf /config/tvheadend/wg++/guide.xml ~/.wg++/guide.xml
|
||||
cd /tmp && \
|
||||
wget http://webgrabplus.com/sites/default/files/download/SW/V3.1.0/WebGrabPlus_V3.1_install.tar.gz && \
|
||||
tar -xvf WebGrabPlus_V3.1_install.tar.gz && rm WebGrabPlus_V3.1_install.tar.gz && \
|
||||
mv .wg++/ /config/tvheadend/wg++ && cd /config/tvheadend/wg++ && ./install.sh
|
||||
rm -rf siteini.pack/ && \
|
||||
git clone https://github.com/DeBaschdi/webgrabplus-siteinipack.git && \
|
||||
cp -R webgrabplus-siteinipack/siteini.pack/ siteini.pack && \
|
||||
cp siteini.pack/International/horizon.tv.* siteini.user/
|
||||
|
||||
wget -O /usr/bin/tv_grab_wg++ http://www.webgrabplus.com/sites/default/files/tv_grab_wg.txt && \
|
||||
chmod a+x /usr/bin/tv_grab_wg++
|
||||
|
||||
echo "0 0 * * * /config/tvheadend/wg++/run.sh" >> /var/spool/cron/root
|
||||
crond
|
||||
else
|
||||
bashio::log.info '[Webgrab+] APK: Critical error. Unable install required packages.'
|
||||
exit 1
|
||||
fi
|
||||
bashio::log.info '[Webgrab+] APK: Removing packages no longer required.'
|
||||
apk del .build-deps git mono
|
||||
else
|
||||
bashio::log.error '[Webgrab+] APK: Critical error. Unable to update pkg list. Check connectivity.'
|
||||
exit 1
|
||||
fi
|
||||
bashio::log.info '[Webgrab+] Finsihed all APK and PIP3 updates and installs.'
|
||||
}
|
||||
|
||||
if check_webgrabplus; then
|
||||
bashio::log.info "[Webgrab+] Webgrab+ already installed"
|
||||
else
|
||||
bashio::log.info "[Webgrab+] No webgrab+ installation found - Installing webgrab+"
|
||||
cd /tmp && \
|
||||
wget http://www.webgrabplus.com/sites/default/files/download/SW/V2.1.0/WebGrabPlus_V2.1_install.tar.gz && \
|
||||
tar -xvf WebGrabPlus_V2.1_install.tar.gz && rm WebGrabPlus_V2.1_install.tar.gz && \
|
||||
mv .wg++/ /config/tvheadend/wg++ && \
|
||||
cd /config/tvheadend/wg++ && \
|
||||
./install.sh
|
||||
|
||||
rm -rf siteini.pack/ && \
|
||||
git clone https://github.com/DeBaschdi/webgrabplus-siteinipack.git && \
|
||||
cp -R webgrabplus-siteinipack/siteini.pack/ siteini.pack && \
|
||||
cp siteini.pack/International/horizon.tv.* siteini.user/
|
||||
webgrabplus_install
|
||||
fi
|
||||
|
||||
wget -O /usr/bin/tv_grab_wg++ http://www.webgrabplus.com/sites/default/files/tv_grab_wg.txt && \
|
||||
chmod a+x /usr/bin/tv_grab_wg++
|
||||
|
||||
bashio::log.info '[Webgrab+] Setup completed without errors!!'
|
||||
|
||||
echo "0 0 * * * /config/tvheadend/wg++/run.sh" >> /var/spool/cron/root
|
||||
crond
|
||||
|
||||
check_streamlink () {
|
||||
if [ -z "$(command -v streamlink)" ]; then return 1; else return 0; fi
|
||||
if [ -z "$(command -v streamlink)" ]; then return 1; else return 0; fi
|
||||
}
|
||||
|
||||
streamlink_update () {
|
||||
if pip3 install --no-cache --upgrade streamlink; then
|
||||
bashio::log.info "[StreamLink] Streamlink version: $(streamlink --version)."
|
||||
else
|
||||
bashio::log.error '[StreamLink] Streamlink update failed!'
|
||||
fi
|
||||
if pip3 install --no-cache --upgrade streamlink; then
|
||||
bashio::log.info "[StreamLink] Streamlink version: $(streamlink --version)."
|
||||
else
|
||||
bashio::log.error '[StreamLink] Streamlink update failed!'
|
||||
fi
|
||||
}
|
||||
|
||||
streamlink_install () {
|
||||
bashio::log.info '[StreamLink] APK: Updating pkg list.'
|
||||
if apk update; then
|
||||
bashio::log.info '[StreamLink] APK: Installing required packages.'
|
||||
if apk add --no-cache py3-pip && apk add --no-cache --virtual .build-deps gcc musl-dev; then
|
||||
bashio::log.info '[StreamLink] PIP3: Updating and installing required packages.'
|
||||
if ! pip3 install --no-cache --upgrade setuptools; then bashio::log.error '[StreamLink] PIP3: Error while upgrading setuptools.'; fi
|
||||
if ! pip3 install --no-cache streamlink; then bashio::log.error '[StreamLink] PIP3: Error while installing Streamlink.'; fi
|
||||
bashio::log.info '[StreamLink] APK: Updating pkg list.'
|
||||
if apk update; then
|
||||
bashio::log.info '[StreamLink] APK: Installing required packages.'
|
||||
if apk add --no-cache py3-pip && apk add --no-cache --virtual .build-deps musl-dev gcc; then
|
||||
bashio::log.info '[StreamLink] PIP3: Updating and installing required packages.'
|
||||
if ! pip3 install --no-cache --upgrade setuptools; then bashio::log.error '[StreamLink] PIP3: Error while upgrading setuptools.'; fi
|
||||
if ! pip3 install --no-cache streamlink; then bashio::log.error '[StreamLink] PIP3: Error while installing Streamlink.'; fi
|
||||
else
|
||||
bashio::log.info '[StreamLink] APK: Critical error. Unable install required packages.'
|
||||
exit 1
|
||||
fi
|
||||
bashio::log.info '[StreamLink] APK: Removing packages no longer required.'
|
||||
apk del .build-deps gcc musl-dev
|
||||
else
|
||||
bashio::log.info '[StreamLink] APK: Critical error. Unable install required packages.'
|
||||
exit 1
|
||||
bashio::log.error '[StreamLink] APK: Critical error. Unable to update pkg list. Check connectivity.'
|
||||
exit 1
|
||||
fi
|
||||
bashio::log.info '[StreamLink] APK: Removing packages no longer required.'
|
||||
apk del .build-deps gcc musl-dev
|
||||
else
|
||||
bashio::log.error '[StreamLink] APK: Critical error. Unable to update pkg list. Check connectivity.'
|
||||
exit 1
|
||||
fi
|
||||
bashio::log.info '[StreamLink] Finsihed all APK and PIP3 updates and installs.'
|
||||
bashio::log.info '[StreamLink] Finsihed all APK and PIP3 updates and installs.'
|
||||
}
|
||||
|
||||
if check_streamlink; then
|
||||
bashio::log.info '[StreamLink] Updating Streamlink...' ; streamlink_update
|
||||
bashio::log.info '[StreamLink] Updating Streamlink...' ; streamlink_update
|
||||
else
|
||||
bashio::log.info '[StreamLink] Installing Streamlink...'; streamlink_install
|
||||
bashio::log.info '[StreamLink] Installing Streamlink...'; streamlink_install
|
||||
fi
|
||||
|
||||
bashio::log.info '[StreamLink] Setup completed without errors!!'
|
||||
bashio::log.info '[StreamLink] Setup completed without errors!!'
|
||||
|
||||
Reference in New Issue
Block a user