flucky/README.md

3.2 KiB

flucky

Build Status Go Report Card

Flucky is a lightweight program written in go for reading data from sensors, for example with a banana or raspberry pi. In addition, flucky provides a REST-API to receive from other flucky installations measured values. The measured values can be saved in a logfile or into a database. Currently is only postgres supported.

Installation

Flucky can be installed over multiple ways, for example with your local package manager from your linux distribution. At the moment it's only the rpm package format supported. Alternatively the source code can be compiled to get the flucky binary.

RPM-Package

To install flucky over a RPM package you can download a specific version from github.com or configure the RPM-Mirror.

RPM-Mirror

$ cat > /etc/yum.repos.d/flucky.rpm <<EOF
[flucky]
name=flucky
baseurl=http://rpm-mirror.cryptic.systems
gpgcheck=0
EOF
$ yum update && yum install --assumeyes flucky

Download github.com

$ VERSION=v0.1.0 \
  curl --location https://github.com/volker-raschek/flucky/releases/${VERSION}/flucky.rpm -O flucky-${VERSION}.rpm
$ yum install --assumeyes ./flucky-${VERSION}.rpm

Compiling the source code

An additional ways to install flucky is to compile the source code. There are two different ways to compile flucky from scratch. The easier ways is to use the pre-defined container image in the Makefile, which has included all dependancies to compile flucky. Alternatively, if all dependencies are met, flucky can also be compiled without the container image. Both variants are briefly described.

Compiling the source code via container image

To compile flucky via container image it's necessary, that a container runtime is installed. In the Makefile is predefined docker, but it's can be also used podman. Execute make container-go-build to start the compiling process.

$ make container-go-build
make container-run COMMAND=go-build
make[1]: Directory „/home/markus/workspace/flucky“ is entered
/usr/bin/docker run \
        --rm \
        --volume /home/markus/workspace/flucky:/workspace \
        volkerraschek/build-image:latest \
                make go-build \
                        UID=1000 \
                        GID=1000 \
                        VERSION=60ee044-git \
                        GOOS=linux \
                        GOARCH=amd64
go-bindata -pkg db -o ./pkg/db/bindataSQL.go ./pkg/db/sql/***
go-bindata -pkg goldenfiles -o ./test/goldenfiles/bindata.go ./test/goldenfiles/json/***
GOOS=linux \
GOARCH=amd64 \
        go build -ldflags "-X main.version=60ee044-git"
go: finding github.com/spf13/pflag v1.0.3
go: finding github.com/satori/go.uuid v1.2.0
...

Compiling the source code without container image

Make sure you have installed go >= v1.12. Execute make go-build to compile flucky without a container-image. There should be a similar output as when compiling flucky via the container image.

Enhancements

  • Provide flucky additionally as AUR and deb package