tfadeyi / midi-instruments

Small golang library containing interface and implementations of different midi instruments.
MIT License
0 stars 0 forks source link

Setup github CI/CD #3

Open tfadeyi opened 3 years ago

tfadeyi commented 3 years ago

Currently, there's no CI/CD tool in place in the repository. Github Actions might be a good solution, alternatively CircleCI is fine also.

The CI must perform:

tfadeyi commented 3 years ago

There are issues in the ci for both lint and test jobs. The runner seems to be missing a C library

mkdir -p /home/runner/work/midi-instruments/midi-instruments/bin
go build -o /home/runner/work/midi-instruments/midi-instruments/bin/go-bindata github.com/jteeuwen/go-bindata/go-bindata
go: downloading github.com/jteeuwen/go-bindata v3.0.7+incompatible
mkdir -p /home/runner/work/midi-instruments/midi-instruments/bin
go: downloading github.com/golang/mock v1.4.4
go build -o /home/runner/work/midi-instruments/midi-instruments/bin/mockgen github.com/golang/mock/mockgen
go: downloading golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5
go generate ./pkg/...
go: downloading gitlab.com/gomidi/midi v1.18.1
go: downloading go.uber.org/zap v1.16.0
go: downloading gitlab.com/gomidi/rtmididrv v0.10.1
go: downloading gitlab.com/gomidi/rtmididrv/imported/rtmidi v0.0.0-20191025100939-514fe0ed97a6
go: downloading go.uber.org/multierr v1.5.0
go: downloading go.uber.org/atomic v1.6.0
go test -coverprofile=coverage.profile $(go list ./...)
?       github.com/tfadeyi/midi-instruments/api [no test files]
# gitlab.com/gomidi/rtmididrv/imported/rtmidi
In file included from rtmidi_stub.cpp:3:0:
Error: cpp/RtMidi.cpp:1427:10: fatal error: alsa/asoundlib.h: No such file or directory
 #include <alsa/asoundlib.h>
          ^~~~~~~~~~~~~~~~~~
compilation terminated.
FAIL    github.com/tfadeyi/midi-instruments/pkg/keyboards/akai [build failed]
?       github.com/tfadeyi/midi-instruments/pkg/mocks   [no test files]
ok      github.com/tfadeyi/midi-instruments/pkg/util    0.004s  coverage: 97.9% of statements
FAIL
make: *** [go_test] Error 2
Error: Makefile:8: recipe for target 'go_test' failed
Error: Process completed with exit code 2.