arduino-ci: init at 0.1.0
arduino-ci allows you to quickly add continuous integration (CI) tests to Arduino libraries. It uses arduino-cli to install dependencies and then it compiles every example with every board.
This commit is contained in:
parent
41cb91fd89
commit
a42468954d
|
@ -0,0 +1,46 @@
|
||||||
|
{ stdenv, fetchFromGitHub, makeWrapper, arduino-cli, ruby, python3, patchelf }:
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
runtimePath = stdenv.lib.makeBinPath [
|
||||||
|
arduino-cli
|
||||||
|
(python3.withPackages (ps: [ ps.pyserial ])) # required by esp32 core
|
||||||
|
patchelf # required by esp32 core
|
||||||
|
];
|
||||||
|
|
||||||
|
in
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "arduino-ci";
|
||||||
|
version = "0.1.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "pololu";
|
||||||
|
repo = "arduino-ci";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "sha256-uLCLupzJ446WcxXZtzJk1wnae+k1NTSy0cGHLqW7MZU=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/bin
|
||||||
|
install $src/ci.rb $out/bin/arduino-ci
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
fixupPhase = ''
|
||||||
|
substituteInPlace $out/bin/arduino-ci --replace "/usr/bin/env nix-shell" "${ruby}/bin/ruby"
|
||||||
|
wrapProgram $out/bin/arduino-ci --prefix PATH ":" "${runtimePath}"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "CI for Arduino Libraries";
|
||||||
|
homepage = src.meta.homepage;
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ ryantm ];
|
||||||
|
platforms = platforms.unix;
|
||||||
|
};
|
||||||
|
}
|
|
@ -870,6 +870,8 @@ in
|
||||||
|
|
||||||
arduino = arduino-core.override { withGui = true; };
|
arduino = arduino-core.override { withGui = true; };
|
||||||
|
|
||||||
|
arduino-ci = callPackage ../development/arduino/arduino-ci { };
|
||||||
|
|
||||||
arduino-cli = callPackage ../development/arduino/arduino-cli { };
|
arduino-cli = callPackage ../development/arduino/arduino-cli { };
|
||||||
|
|
||||||
arduino-core = callPackage ../development/arduino/arduino-core { };
|
arduino-core = callPackage ../development/arduino/arduino-core { };
|
||||||
|
|
Loading…
Reference in New Issue