influxdb2: init at v2.0.2 (#104717)

Signed-off-by: David Anderson <dave@natulte.net>
This commit is contained in:
Dave Anderson 2020-11-24 07:06:39 -08:00 committed by GitHub
parent 874e250009
commit 4de5d2b081
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 13735 additions and 0 deletions

View 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 ];
};
}

View 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"
}
}

File diff suppressed because it is too large Load diff

View 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

View file

@ -17246,6 +17246,7 @@ in
};
influxdb = callPackage ../servers/nosql/influxdb { };
influxdb2 = callPackage ../servers/nosql/influxdb2 { };
mysql57 = callPackage ../servers/sql/mysql/5.7.x.nix {
inherit (darwin) cctools developer_cmds;