Adds builder action
This commit is contained in:
@@ -0,0 +1,59 @@
|
|||||||
|
# https://github.com/home-assistant/builder
|
||||||
|
name: 'Builder'
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags: [ 'v*' ]
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
hassio:
|
||||||
|
name: Hassio Addon
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout the repository
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Login to DockerHub
|
||||||
|
uses: docker/login-action@v2
|
||||||
|
with:
|
||||||
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Branch name
|
||||||
|
run: |
|
||||||
|
VERSION="${GITHUB_REF#refs/tags/v}"
|
||||||
|
echo "REPO=alexxit/go2rtc" >> $GITHUB_ENV
|
||||||
|
echo "TAG=${VERSION}" >> $GITHUB_ENV
|
||||||
|
echo "IMAGE=alexxit/go2rtc:${VERSION}" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Build amd64
|
||||||
|
uses: home-assistant/builder@master
|
||||||
|
with:
|
||||||
|
args: --amd64 --target build/hassio --version $TAG-amd64 --no-latest --docker-hub-check
|
||||||
|
|
||||||
|
- name: Build i386
|
||||||
|
uses: home-assistant/builder@master
|
||||||
|
with:
|
||||||
|
args: --i386 --target build/hassio --version $TAG-i386 --no-latest --docker-hub-check
|
||||||
|
|
||||||
|
- name: Build aarch64
|
||||||
|
uses: home-assistant/builder@master
|
||||||
|
with:
|
||||||
|
args: --aarch64 --target build/hassio --version $TAG-aarch64 --no-latest --docker-hub-check
|
||||||
|
|
||||||
|
- name: Build armv7
|
||||||
|
uses: home-assistant/builder@master
|
||||||
|
with:
|
||||||
|
args: --armv7 --target build/hassio --version $TAG-armv7 --no-latest --docker-hub-check
|
||||||
|
|
||||||
|
- name: Docker manifest
|
||||||
|
run: |
|
||||||
|
# thanks to https://github.com/aler9/rtsp-simple-server/blob/main/Makefile
|
||||||
|
docker manifest create "${IMAGE}" \
|
||||||
|
"${IMAGE}-amd64" "${IMAGE}-i386" "${IMAGE}-aarch64" "${IMAGE}-armv7"
|
||||||
|
docker manifest push "${IMAGE}"
|
||||||
|
|
||||||
|
docker manifest create "${REPO}:latest" \
|
||||||
|
"${IMAGE}-amd64" "${IMAGE}-i386" "${IMAGE}-aarch64" "${IMAGE}-armv7"
|
||||||
|
docker manifest push "${REPO}:latest"
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
ARG BUILD_FROM
|
||||||
|
FROM $BUILD_FROM
|
||||||
|
|
||||||
|
RUN apk add --no-cache git go
|
||||||
|
|
||||||
|
WORKDIR app
|
||||||
|
|
||||||
|
RUN git clone https://github.com/AlexxIT/go2rtc .
|
||||||
|
RUN CGO_ENABLED=0 go build -ldflags "-s -w" -trimpath
|
||||||
|
|
||||||
|
CMD [ "/app/go2rtc", "-config", "/config/go2rtc.yaml" ]
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
# https://github.com/home-assistant/builder/blob/master/builder.sh
|
||||||
|
name: go2rtc
|
||||||
|
description: Ultimate camera streaming application
|
||||||
|
url: https://github.com/AlexxIT/go2rtc
|
||||||
|
image: alexxit/go2rtc
|
||||||
|
arch: [ amd64, aarch64, i386, armv7 ]
|
||||||
+10
-1
@@ -1,6 +1,7 @@
|
|||||||
package app
|
package app
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"flag"
|
||||||
"github.com/rs/zerolog"
|
"github.com/rs/zerolog"
|
||||||
"gopkg.in/yaml.v3"
|
"gopkg.in/yaml.v3"
|
||||||
"io"
|
"io"
|
||||||
@@ -9,7 +10,15 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func Init() {
|
func Init() {
|
||||||
data, _ = os.ReadFile("go2rtc.yaml")
|
config := flag.String(
|
||||||
|
"config",
|
||||||
|
"go2rtc.yaml",
|
||||||
|
"Path to go2rtc configuration file",
|
||||||
|
)
|
||||||
|
|
||||||
|
flag.Parse()
|
||||||
|
|
||||||
|
data, _ = os.ReadFile(*config)
|
||||||
|
|
||||||
var cfg struct {
|
var cfg struct {
|
||||||
Mod map[string]string `yaml:"log"`
|
Mod map[string]string `yaml:"log"`
|
||||||
|
|||||||
Reference in New Issue
Block a user