diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/monitoring/uchiwa')
4 files changed, 122 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/monitoring/uchiwa/bower-packages.nix b/nixpkgs/pkgs/servers/monitoring/uchiwa/bower-packages.nix new file mode 100644 index 000000000000..40789fa34f8d --- /dev/null +++ b/nixpkgs/pkgs/servers/monitoring/uchiwa/bower-packages.nix @@ -0,0 +1,25 @@ +# Generated by bower2nix v3.2.0 (https://github.com/rvl/bower2nix) +{ fetchbower, buildEnv }: +buildEnv { name = "bower-env"; ignoreCollisions = true; paths = [ + (fetchbower "uchiwa-web" "1.5.0" "1.5.0" "0z7g4nb7cm5w5l8w1856sbib15sx022mqpap9d49s6ppnn53vcs1") + (fetchbower "angular" "1.6.10" "~1.6.3" "0ag8xddsgxx5yka4wjq4ala4y6z3x2g1vc3x7a1n291fzz26p7ws") + (fetchbower "angular-bootstrap" "2.2.0" "~2.2.0" "11r2nlwp6xrim2y6lnrr8v064mx3bmlxchqpg1i803v9zxz3q53d") + (fetchbower "angular-cookies" "1.6.10" "~1.6.3" "0bjgmz5jnw06dfxhq9sajj62fk0b3v4j9p7nb45x8bl8rzkf25pn") + (fetchbower "angular-gravatar" "0.4.2" "~0.4.2" "14jrzvjwx64awh9z95054manp8qd57fvinqhmakipz5x12i7qrwi") + (fetchbower "angular-moment" "1.0.1" "~1.0.1" "0zkn52s9l15d6b5zfx52g5jpib23rpb637m0p1hzc429w5bbl0rj") + (fetchbower "angular-resource" "1.6.10" "~1.6.3" "1gplq8kd49qakk7ardg5xr5amwvspaz9n71kf8x49xfllda61rm0") + (fetchbower "angular-route" "1.6.10" "~1.6.3" "0vwbn7i45yvsn8c469nj141ahrn7iw85j7hy3vvhh2r373j94mai") + (fetchbower "angular-sanitize" "1.6.10" "~1.6.3" "066gsdl19s27w00wafg2skf5abdsdrlzhkcagkk1ma39dyqyl4i3") + (fetchbower "angular-toastr" "1.6.0" "1.6.0" "1szigf1m28bgpfyg8hbm5rffr5zi7wr9n73nc1fqhk0yqh7gzysh") + (fetchbower "angular-tools/ng-jsoneditor" "ea138469f157d8f2b54ec5b8dcf4b08a55b61459" "ea138469f157d8f2b54ec5b8dcf4b08a55b61459" "1j3vysr01niabc9fxcpixhcq1lyx2fr4q4wpmxhmiqki431h9hq8") + (fetchbower "angular-ua-parser" "0.0.2" "0.0.2" "0gb0vmwksnydlm6hklfq1n4ak2967wcmnx3cx9cgiv7v7vk3w2m9") + (fetchbower "bootstrap" "3.1.1" "3.1.1" "1a06mx1rw5h4wq89kqpa8g2pbiddm3p21dxq50jyi29sywd01ny4") + (fetchbower "bootstrap-sass-official" "3.1.1" "3.1.1" "1k6hhvsd75hdfrz8qcjzmb12c17fdn0h3l3l5k9wgd0rfhhfkyvd") + (fetchbower "fontawesome" "4.4.0" "~4.4.0" "09mrbik8i3skjwchn7ns2020bqmb51kbd3mqi59vh444s4az2sc7") + (fetchbower "highlightjs" "9.1.0" "~9.1.0" "0ld1da3h416a5j8v3v50rrpm4xwvvq8k8y2vwncvaqm9cqddz4s3") + (fetchbower "moment" "2.16.0" "~2.16.0" "1mji892i60f2aw3vhl6878acrcgh0ycn3r4af0ivnjf8az2b9n71") + (fetchbower "moment-picker" "0.9.11" "~0.9.7" "0p2g6rp2kcixydrga9lfihg4bxb598rvpi8n8l59mp549diy7vsb") + (fetchbower "ua-parser-js" "0.7.19" "~0.7.12" "0s1yaspccz234hm772hlybjsi0kndzwpjx5lzy3y1s4wfk248ks4") + (fetchbower "jsoneditor" "5.5.11" "~5.5.10" "1gfsf8jqnd3hb3r9s9246mg40iqxk2ix8k4bjnrsbfmg6cd3xw6x") + (fetchbower "jquery" "3.3.1" ">= 1.9.0" "1l891s3vgnpi1g8ksplid9jvrvnnv6lci8vraix4ssy50i264rkx") +]; } diff --git a/nixpkgs/pkgs/servers/monitoring/uchiwa/default.nix b/nixpkgs/pkgs/servers/monitoring/uchiwa/default.nix new file mode 100644 index 000000000000..1de1edfa8e11 --- /dev/null +++ b/nixpkgs/pkgs/servers/monitoring/uchiwa/default.nix @@ -0,0 +1,51 @@ +{ stdenv, fetchFromGitHub, buildBowerComponents, buildGoPackage, makeWrapper }: + +let + inherit (import ./src.nix) version sha256; + owner = "sensu"; + repo = "uchiwa"; + + src = fetchFromGitHub { + inherit owner repo sha256; + rev = "${version}"; + }; + + backend = buildGoPackage { + name = "uchiwa-backend-${version}"; + goPackagePath = "github.com/${owner}/${repo}"; + inherit src; + postInstall = '' + mkdir $out + cp go/src/github.com/sensu/uchiwa/public/index.html $out/ + ''; + }; + + frontend = buildBowerComponents { + name = "uchiwa-frontend-${version}"; + generated = ./bower-packages.nix; + inherit src; + }; + +in stdenv.mkDerivation rec { + name = "uchiwa-${version}"; + + inherit src; + + buildInputs = [ makeWrapper ]; + + buildCommand = '' + mkdir -p $out/bin $out/public + makeWrapper ${backend.bin}/bin/uchiwa $out/bin/uchiwa \ + --add-flags "-p $out/public" + ln -s ${backend.out}/index.html $out/public/index.html + ln -s ${frontend.out}/bower_components $out/public/bower_components + ''; + + meta = with stdenv.lib; { + description = "A Dashboard for the sensu monitoring framework"; + homepage = http://sensuapp.org/; + license = licenses.mit; + maintainers = with maintainers; [ peterhoeg ]; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/servers/monitoring/uchiwa/src.nix b/nixpkgs/pkgs/servers/monitoring/uchiwa/src.nix new file mode 100644 index 000000000000..cf5376318b45 --- /dev/null +++ b/nixpkgs/pkgs/servers/monitoring/uchiwa/src.nix @@ -0,0 +1,4 @@ +{ + version = "1.5.0-1"; + sha256 = "05idwiv47zav46wi1hfly6rylpw8qryr12xlz47ic04ggdlga13b"; +} diff --git a/nixpkgs/pkgs/servers/monitoring/uchiwa/update.sh b/nixpkgs/pkgs/servers/monitoring/uchiwa/update.sh new file mode 100755 index 000000000000..10da7f8adbf9 --- /dev/null +++ b/nixpkgs/pkgs/servers/monitoring/uchiwa/update.sh @@ -0,0 +1,42 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl.bin git.out nix jq.out nodePackages.bower2nix + +set -euo pipefail +IFS=$'\n\t' + +# set -x + +REPO=sensu/uchiwa +VERSION=0.0.1 +SHA="1111111111111111111111111111111111111111111111111111" +DIR=$(pwd) + +write_src() { + cat <<_EOF > $DIR/src.nix +{ + version = "${VERSION}"; + sha256 = "${SHA}"; +} +_EOF +} + +LATEST_VERSION=$(curl https://api.github.com/repos/${REPO}/tags -s | jq '.[0]' -r | jq .name -r) +echo "Latest version: ${LATEST_VERSION}" + +VERSION=${1:-${LATEST_VERSION}} +echo "Updating to: ${VERSION}" + +TOP=$(git rev-parse --show-toplevel) + +cd $(dirname $0) + +write_src +pushd $TOP >/dev/null +SHA=$(nix-prefetch-url -A uchiwa.src) +popd >/dev/null +write_src + +curl https://raw.githubusercontent.com/${REPO}/${VERSION}/bower.json -s > bower.json +rm -f bower-packages.nix +bower2nix bower.json $DIR/bower-packages.nix +rm -f bower.json |