influxdb2: init at v2.0.2 (#104717)
Signed-off-by: David Anderson <dave@natulte.net>
This commit is contained in:
parent
874e250009
commit
4de5d2b081
128
pkgs/servers/nosql/influxdb2/default.nix
Normal file
128
pkgs/servers/nosql/influxdb2/default.nix
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
{ buildGoModule
|
||||||
|
, buildGoPackage
|
||||||
|
, fetchFromGitHub
|
||||||
|
, go-bindata
|
||||||
|
, lib
|
||||||
|
, llvmPackages
|
||||||
|
, mkYarnPackage
|
||||||
|
, pkg-config
|
||||||
|
, rustPlatform
|
||||||
|
}:
|
||||||
|
|
||||||
|
# Note for maintainers: use ./update-influxdb2.sh to update the Yarn
|
||||||
|
# dependencies nix expression.
|
||||||
|
|
||||||
|
let
|
||||||
|
version = "2.0.2";
|
||||||
|
shorthash = "84496e507a"; # git rev-parse HEAD with 2.0.2 checked out
|
||||||
|
libflux_version = "0.95.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "influxdata";
|
||||||
|
repo = "influxdb";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "05s09crqgbyfdck33zwax5l47jpc4wh04yd8zsm658iksdgzpmnn";
|
||||||
|
};
|
||||||
|
|
||||||
|
ui = mkYarnPackage {
|
||||||
|
src = src;
|
||||||
|
packageJSON = ./influx-ui-package.json;
|
||||||
|
yarnLock = "${src}/ui/yarn.lock";
|
||||||
|
yarnNix = ./influx-ui-yarndeps.nix;
|
||||||
|
configurePhase = ''
|
||||||
|
cp -r $node_modules ui/node_modules
|
||||||
|
rsync -r $node_modules/../deps/chronograf-ui/node_modules/ ui/node_modules
|
||||||
|
'';
|
||||||
|
INFLUXDB_SHA = shorthash;
|
||||||
|
buildPhase = ''
|
||||||
|
pushd ui
|
||||||
|
yarn build:ci
|
||||||
|
popd
|
||||||
|
'';
|
||||||
|
installPhase = ''
|
||||||
|
mv ui/build $out
|
||||||
|
'';
|
||||||
|
distPhase = "true";
|
||||||
|
};
|
||||||
|
|
||||||
|
flux = rustPlatform.buildRustPackage {
|
||||||
|
pname = "libflux";
|
||||||
|
version = "v${libflux_version}";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "influxdata";
|
||||||
|
repo = "flux";
|
||||||
|
rev = "v${libflux_version}";
|
||||||
|
sha256 = "07jz2nw3zswg9f4p5sb5r4hpg3n4qibjcgs9sk9csns70h5rp9j3";
|
||||||
|
};
|
||||||
|
sourceRoot = "source/libflux";
|
||||||
|
cargoSha256 = "0y5xjkqpaxp9qq1qj39zw3mnvkbbb9g4fa5cli77nhfwz288xx6h";
|
||||||
|
nativeBuildInputs = [ llvmPackages.libclang ];
|
||||||
|
LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
|
||||||
|
pkgcfg = ''
|
||||||
|
Name: flux
|
||||||
|
Version: ${libflux_version}
|
||||||
|
Description: Library for the InfluxData Flux engine
|
||||||
|
Cflags: -I/out/include
|
||||||
|
Libs: -L/out/lib -lflux -ldl -lpthread
|
||||||
|
'';
|
||||||
|
passAsFile = [ "pkgcfg" ];
|
||||||
|
postInstall = ''
|
||||||
|
mkdir -p $out/include $out/pkgconfig
|
||||||
|
cp -r $NIX_BUILD_TOP/source/libflux/include/influxdata $out/include
|
||||||
|
substitute $pkgcfgPath $out/pkgconfig/flux.pc \
|
||||||
|
--replace /out $out
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
# Can't use the nixpkgs version of go-bindata, it's an ancient
|
||||||
|
# ancestor of this more modern one.
|
||||||
|
bindata = buildGoPackage {
|
||||||
|
pname = "go-bindata";
|
||||||
|
version = "v3.22.0";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "kevinburke";
|
||||||
|
repo = "go-bindata";
|
||||||
|
rev = "v3.22.0";
|
||||||
|
sha256 = "10dq77dml5jvvq2jkdq81a9yjg7rncq8iw8r84cc3dz6l9hxzj0x";
|
||||||
|
};
|
||||||
|
|
||||||
|
goPackagePath = "github.com/kevinburke/go-bindata";
|
||||||
|
subPackages = [ "go-bindata" ];
|
||||||
|
};
|
||||||
|
in buildGoModule {
|
||||||
|
pname = "influxdb";
|
||||||
|
version = version;
|
||||||
|
src = src;
|
||||||
|
|
||||||
|
nativeBuildInputs = [ bindata pkg-config ];
|
||||||
|
|
||||||
|
vendorSha256 = "0lviz7l5zbghyfkp0lvlv8ykpak5hhkfal8d7xwvpsm8q3sghc8a";
|
||||||
|
subPackages = [ "cmd/influxd" "cmd/influx" ];
|
||||||
|
|
||||||
|
PKG_CONFIG_PATH = "${flux}/pkgconfig";
|
||||||
|
# We have to run a bunch of go:generate commands to embed the UI
|
||||||
|
# assets into the source code. Ideally we'd run `make generate`, but
|
||||||
|
# that ends up running a ton of non-hermetic stuff. Instead, we find
|
||||||
|
# the relevant go:generate directives, and run them by hand without
|
||||||
|
# breaking hermeticity.
|
||||||
|
preBuild = ''
|
||||||
|
ln -s ${ui} ui/build
|
||||||
|
grep -RI -e 'go:generate.*go-bindata' | cut -f1 -d: | while read -r filename; do
|
||||||
|
sed -i -e 's/go:generate.*go-bindata/go:generate go-bindata/' $filename
|
||||||
|
pushd $(dirname $filename)
|
||||||
|
go generate
|
||||||
|
popd
|
||||||
|
done
|
||||||
|
export buildFlagsArray=(
|
||||||
|
-tags="assets"
|
||||||
|
-ldflags="-X main.commit=${shorthash} -X main.version=${version}"
|
||||||
|
)
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "An open-source distributed time series database";
|
||||||
|
license = licenses.mit;
|
||||||
|
homepage = "https://influxdata.com/";
|
||||||
|
maintainers = with maintainers; [ danderson ];
|
||||||
|
};
|
||||||
|
}
|
200
pkgs/servers/nosql/influxdb2/influx-ui-package.json
Normal file
200
pkgs/servers/nosql/influxdb2/influx-ui-package.json
Normal file
@ -0,0 +1,200 @@
|
|||||||
|
{
|
||||||
|
"name": "chronograf-ui",
|
||||||
|
"version": "2.0.2",
|
||||||
|
"private": false,
|
||||||
|
"license": "AGPL-3.0",
|
||||||
|
"description": "",
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "github:influxdata/chronograf"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=10.5.0",
|
||||||
|
"yarn": ">=1.16.0"
|
||||||
|
},
|
||||||
|
"alias": {
|
||||||
|
"src": "./src"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"start": "yarn install && yarn generate && cross-env TS_NODE_PROJECT=\"webpack.tsconfig.json\" && yarn run build:vendor && yarn run start:dev",
|
||||||
|
"start:cloud": "yarn install && yarn generate && cross-env TS_NODE_PROJECT=\"webpack.tsconfig.json\" && yarn run build:vendor && yarn run start:dev-cloud",
|
||||||
|
"start:dev": "webpack-dev-server --config ./webpack.dev.ts --progress false",
|
||||||
|
"start:dev-cloud": "cross-env CLOUD_LOGOUT_URL=http://localhost:8080/api/v2/signout CLOUD_URL=http://localhost:4000 webpack-dev-server --config ./webpack.dev.ts",
|
||||||
|
"start:docker": "yarn generate && yarn build:vendor && yarn run start:dev",
|
||||||
|
"build": "yarn install --silent && yarn build:ci",
|
||||||
|
"build:ci": "yarn generate && yarn build:vendor && webpack --config webpack.prod.ts --bail",
|
||||||
|
"build:vendor": "webpack --config webpack.vendor.ts",
|
||||||
|
"clean": "rm -rf ./build && rm -rf ./.cache && rm -rf node_modules && rm -rf cypress/screenshots && rm -rf cypress/videos && rm -f junit-results/* ",
|
||||||
|
"test": "jest --maxWorkers=2",
|
||||||
|
"test:watch": "jest --watch --verbose false",
|
||||||
|
"test:update": "jest --updateSnapshot",
|
||||||
|
"test:debug": "node --inspect-brk $(npm bin)/jest --runInBand --watch --verbose false",
|
||||||
|
"test:e2e": "CYPRESS_baseUrl=http://localhost:8086 cypress run --browser chrome --reporter junit --reporter-options 'mochaFile=junit-results/test-output-[hash].xml'",
|
||||||
|
"test:e2e:report": "junit-viewer --results=junit-results --save-file=cypress/site/junit-report.html",
|
||||||
|
"test:e2e:clean": "rm junit-results/*.xml",
|
||||||
|
"test:e2e:all": "yarn test:e2e:clean && yarn test:e2e; yarn test:e2e:report;",
|
||||||
|
"test:circleci": "yarn run test:ci --maxWorkers=2",
|
||||||
|
"test:ci": "JEST_JUNIT_OUTPUT_DIR=\"./coverage\" jest --ci --coverage",
|
||||||
|
"lint": "yarn tsc && yarn prettier && yarn eslint",
|
||||||
|
"eslint": "eslint '{src,cypress}/**/*.{ts,tsx}'",
|
||||||
|
"eslint:circleci": "eslint",
|
||||||
|
"eslint:fix": "eslint --fix '{src,cypress}/**/*.{ts,tsx}'",
|
||||||
|
"prettier": "prettier --config .prettierrc.json --check '{src,cypress}/**/*.{ts,tsx}'",
|
||||||
|
"prettier:fix": "prettier --config .prettierrc.json --write '{src,cypress}/**/*.{ts,tsx}'",
|
||||||
|
"tsc": "tsc -p ./tsconfig.json --noEmit --pretty --skipLibCheck",
|
||||||
|
"tsc:cypress": "tsc -p ./cypress/tsconfig.json --noEmit --pretty --skipLibCheck",
|
||||||
|
"cy": "CYPRESS_baseUrl=http://localhost:8086 cypress open",
|
||||||
|
"cy:dev": "CYPRESS_baseUrl=http://localhost:8080 cypress open",
|
||||||
|
"generate": "oats ../http/swagger.yml > ./src/client/generatedRoutes.ts"
|
||||||
|
},
|
||||||
|
"author": "",
|
||||||
|
"devDependencies": {
|
||||||
|
"@babel/core": "^7.5.5",
|
||||||
|
"@babel/preset-env": "^7.5.5",
|
||||||
|
"@influxdata/oats": "0.5.0",
|
||||||
|
"@testing-library/react": "^10.2.1",
|
||||||
|
"@types/chroma-js": "^1.3.4",
|
||||||
|
"@types/codemirror": "^0.0.56",
|
||||||
|
"@types/d3-color": "^1.2.1",
|
||||||
|
"@types/d3-scale": "^2.0.1",
|
||||||
|
"@types/enzyme": "^3.1.14",
|
||||||
|
"@types/history": "4.7.6",
|
||||||
|
"@types/jest": "^23.3.2",
|
||||||
|
"@types/lodash": "^4.14.116",
|
||||||
|
"@types/memoize-one": "^4.0.2",
|
||||||
|
"@types/node": "^12.6.8",
|
||||||
|
"@types/papaparse": "^4.5.9",
|
||||||
|
"@types/prop-types": "^15.5.2",
|
||||||
|
"@types/qs": "^6.5.1",
|
||||||
|
"@types/react": "^16.8.3",
|
||||||
|
"@types/react-datepicker": "^2.8.1",
|
||||||
|
"@types/react-dom": "^16.8.1",
|
||||||
|
"@types/react-grid-layout": "^0.16.5",
|
||||||
|
"@types/react-redux": "^7.1.9",
|
||||||
|
"@types/react-router-dom": "^5.1.5",
|
||||||
|
"@types/react-virtualized": "^9.18.3",
|
||||||
|
"@types/text-encoding": "^0.0.32",
|
||||||
|
"@types/uuid": "^3.4.3",
|
||||||
|
"@types/webpack": "^4.4.35",
|
||||||
|
"@types/webpack-env": "^1.15.2",
|
||||||
|
"@typescript-eslint/eslint-plugin": "^2.6.0",
|
||||||
|
"@typescript-eslint/parser": "^2.6.0",
|
||||||
|
"acorn": "^6.0.6",
|
||||||
|
"ajv": "^6.7.0",
|
||||||
|
"autoprefixer": "^6.3.1",
|
||||||
|
"babel-loader": "^8.0.6",
|
||||||
|
"clean-webpack-plugin": "^3.0.0",
|
||||||
|
"cross-env": "^5.2.0",
|
||||||
|
"css-loader": "^3.1.0",
|
||||||
|
"cypress": "4.12.1",
|
||||||
|
"cypress-file-upload": "^4.0.7",
|
||||||
|
"cypress-pipe": "^1.5.0",
|
||||||
|
"cypress-plugin-tab": "^1.0.5",
|
||||||
|
"enzyme": "^3.6.0",
|
||||||
|
"enzyme-adapter-react-16": "^1.6.0",
|
||||||
|
"enzyme-to-json": "^3.3.4",
|
||||||
|
"eslint": "^6.6.0",
|
||||||
|
"eslint-config-prettier": "^6.5.0",
|
||||||
|
"eslint-plugin-jest": "^23.0.2",
|
||||||
|
"eslint-plugin-react": "^7.16.0",
|
||||||
|
"eslint-plugin-react-hooks": "^4.0.5",
|
||||||
|
"express": "^4.14.0",
|
||||||
|
"file-loader": "^4.1.0",
|
||||||
|
"fork-ts-checker-webpack-plugin": "^1.4.3",
|
||||||
|
"html-webpack-plugin": "^3.2.0",
|
||||||
|
"http-proxy-middleware": "^0.18.0",
|
||||||
|
"identity-obj-proxy": "^3.0.0",
|
||||||
|
"jest": "^24.8.0",
|
||||||
|
"jest-fetch-mock": "^3.0.3",
|
||||||
|
"jest-junit": "^10.0.0",
|
||||||
|
"jsdom": "^9.0.0",
|
||||||
|
"junit-viewer": "^4.11.1",
|
||||||
|
"mini-css-extract-plugin": "^0.8.0",
|
||||||
|
"mocha": "^5.2.0",
|
||||||
|
"mocha-junit-reporter": "^1.18.0",
|
||||||
|
"mutation-observer": "^1.0.3",
|
||||||
|
"optimize-css-assets-webpack-plugin": "^5.0.3",
|
||||||
|
"prettier": "^1.19.1",
|
||||||
|
"raw-loader": "^4.0.1",
|
||||||
|
"sass": "^1.22.7",
|
||||||
|
"sass-loader": "^7.1.0",
|
||||||
|
"source-map-loader": "^0.2.4",
|
||||||
|
"style-loader": "^0.23.1",
|
||||||
|
"terser-webpack-plugin": "2.2.1",
|
||||||
|
"ts-jest": "^24.0.0",
|
||||||
|
"ts-loader": "^5.3.3",
|
||||||
|
"ts-node": "^8.3.0",
|
||||||
|
"tslib": "^1.9.0",
|
||||||
|
"typescript": "3.8.3",
|
||||||
|
"webpack": "^4.41.4",
|
||||||
|
"webpack-cli": "^3.3.10",
|
||||||
|
"webpack-dev-server": "^3.7.2",
|
||||||
|
"webpack-merge": "^4.2.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@influxdata/clockface": "2.3.4",
|
||||||
|
"@influxdata/flux": "^0.5.1",
|
||||||
|
"@influxdata/flux-lsp-browser": "^0.5.23",
|
||||||
|
"@influxdata/giraffe": "0.29.0",
|
||||||
|
"@influxdata/influx": "0.5.5",
|
||||||
|
"@influxdata/influxdb-templates": "0.9.0",
|
||||||
|
"@influxdata/react-custom-scrollbars": "4.3.8",
|
||||||
|
"abortcontroller-polyfill": "^1.3.0",
|
||||||
|
"auth0-js": "^9.12.2",
|
||||||
|
"axios": "^0.19.0",
|
||||||
|
"babel-polyfill": "^6.26.0",
|
||||||
|
"bignumber.js": "^4.0.2",
|
||||||
|
"calculate-size": "^1.1.1",
|
||||||
|
"chroma-js": "^1.3.6",
|
||||||
|
"classnames": "^2.2.3",
|
||||||
|
"codemirror": "^5.36.0",
|
||||||
|
"connected-react-router": "^6.8.0",
|
||||||
|
"d3-format": "^1.3.2",
|
||||||
|
"d3-scale": "^2.1.0",
|
||||||
|
"fast.js": "^0.1.1",
|
||||||
|
"history": "^4.7.2",
|
||||||
|
"honeybadger-js": "^1.0.2",
|
||||||
|
"immer": "^1.9.3",
|
||||||
|
"immutable": "^3.8.1",
|
||||||
|
"intersection-observer": "^0.7.0",
|
||||||
|
"jsonlint-mod": "^1.7.5",
|
||||||
|
"lodash": "^4.3.0",
|
||||||
|
"memoize-one": "^4.0.2",
|
||||||
|
"moment": "^2.13.0",
|
||||||
|
"monaco-editor": "^0.19.2",
|
||||||
|
"monaco-editor-textmate": "^2.2.1",
|
||||||
|
"monaco-editor-webpack-plugin": "^1.8.2",
|
||||||
|
"monaco-languageclient": "^0.11.0",
|
||||||
|
"monaco-textmate": "^3.0.1",
|
||||||
|
"normalizr": "^3.4.1",
|
||||||
|
"onigasm": "^2.2.4",
|
||||||
|
"papaparse": "^5.2.0",
|
||||||
|
"prop-types": "^15.6.1",
|
||||||
|
"qs": "^6.5.2",
|
||||||
|
"react": "^16.11.0",
|
||||||
|
"react-codemirror2": "^4.2.1",
|
||||||
|
"react-copy-to-clipboard": "^5.0.1",
|
||||||
|
"react-datepicker": "^2.1.0",
|
||||||
|
"react-dimensions": "^1.2.0",
|
||||||
|
"react-dnd": "^9.3.2",
|
||||||
|
"react-dnd-html5-backend": "^9.3.2",
|
||||||
|
"react-dom": "^16.8.2",
|
||||||
|
"react-grid-layout": "^0.16.6",
|
||||||
|
"react-loadable": "^5.5.0",
|
||||||
|
"react-markdown": "^4.0.3",
|
||||||
|
"react-monaco-editor": "^0.33.0",
|
||||||
|
"react-redux": "^7.2.0",
|
||||||
|
"react-router-dom": "^5.2.0",
|
||||||
|
"react-scrollbars-custom": "^4.0.0-alpha.8",
|
||||||
|
"react-virtualized": "^9.18.5",
|
||||||
|
"redux": "^4.0.0",
|
||||||
|
"redux-auth-wrapper": "^1.0.0",
|
||||||
|
"redux-thunk": "^2.3.0",
|
||||||
|
"reselect": "^4.0.0",
|
||||||
|
"rome": "^2.1.22",
|
||||||
|
"seamless-immutable": "^7.1.3",
|
||||||
|
"use-persisted-state": "^0.3.0",
|
||||||
|
"uuid": "^3.2.1",
|
||||||
|
"webpack-bundle-analyzer": "^3.6.0"
|
||||||
|
}
|
||||||
|
}
|
13389
pkgs/servers/nosql/influxdb2/influx-ui-yarndeps.nix
Normal file
13389
pkgs/servers/nosql/influxdb2/influx-ui-yarndeps.nix
Normal file
File diff suppressed because it is too large
Load Diff
17
pkgs/servers/nosql/influxdb2/update-influxdb2.sh
Executable file
17
pkgs/servers/nosql/influxdb2/update-influxdb2.sh
Executable file
@ -0,0 +1,17 @@
|
|||||||
|
#!/usr/bin/env nix-shell
|
||||||
|
#!nix-shell -I nixpkgs=../../../../ -i bash -p wget yarn2nix
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
if [ "$#" -ne 1 ] || [[ "$1" == -* ]]; then
|
||||||
|
echo "Regenerates the Yarn dependency lock files for the influxdb UI."
|
||||||
|
echo "Usage: $0 <git release tag>"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
INFLUXDB_SRC="https://raw.githubusercontent.com/influxdata/influxdb/$1"
|
||||||
|
|
||||||
|
wget "$INFLUXDB_SRC/ui/package.json" -O influx-ui-package.json
|
||||||
|
wget "$INFLUXDB_SRC/ui/yarn.lock" -O influx-ui-yarndeps.lock
|
||||||
|
yarn2nix --lockfile=influx-ui-yarndeps.lock > influx-ui-yarndeps.nix
|
||||||
|
rm influx-ui-yarndeps.lock
|
@ -17246,6 +17246,7 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
influxdb = callPackage ../servers/nosql/influxdb { };
|
influxdb = callPackage ../servers/nosql/influxdb { };
|
||||||
|
influxdb2 = callPackage ../servers/nosql/influxdb2 { };
|
||||||
|
|
||||||
mysql57 = callPackage ../servers/sql/mysql/5.7.x.nix {
|
mysql57 = callPackage ../servers/sql/mysql/5.7.x.nix {
|
||||||
inherit (darwin) cctools developer_cmds;
|
inherit (darwin) cctools developer_cmds;
|
||||||
|
Loading…
Reference in New Issue
Block a user