Commit 2afac7b7 authored by Paul Asmuth's avatar Paul Asmuth
Browse files

improved directory structure

- move examples to to level-directory
- rename doc/ to manual/
- delete obsolete files
parent 636fe185
Loading
Loading
Loading
Loading

Dockerfile

deleted100644 → 0
+0 −22
Original line number Diff line number Diff line
FROM ubuntu:14.04

RUN apt-get update \
  && apt-get install -y curl \
  && rm -rf /var/lib/apt/lists/*

RUN buildDeps='unzip git gcc make clang++-3.4 cmake libmysqlclient-dev'; \
  set -x \
  && apt-get update && apt-get install -y $buildDeps --no-install-recommends \
  && rm -rf /var/lib/apt/lists/* 

RUN mkdir -p /usr/src/ \
  && cd /usr/src \
  && curl -R -O https://codeload.github.com/paulasmuth/fnordmetric/zip/master \
  && unzip master \
  && cd fnordmetric-master/fnordmetric-core \
  && make \
  && cp build/cmake/target/fnordmetric-server /usr/local/bin

VOLUME /data/fnordmetric
EXPOSE 8080 8125/udp
CMD [ "/usr/local/bin/fnordmetric-server", "--http_port", "8080", "--statsd_port", "8125", "--storage_backend", "disk", "--datadir", "/data/fnordmetric"]

TODO

deleted100644 → 0
+0 −5
Original line number Diff line number Diff line
-> merge crate.io api
-> merge webcomponents adminui
-> update HTTP api docs
-> doc simple query api
-> doc crate.io api

cmake/CMakeLists.txt

deleted100644 → 0
+0 −143
Original line number Diff line number Diff line
# This file is part of the "FnordMetric" project
#   Copyright (c) 2014 Paul Asmuth, Google Inc.
#
# FnordMetric is free software: you can redistribute it and/or modify it under
# the terms of the GNU General Public License v3.0. You should have received a
# copy of the GNU General Public License along with this program. If not, see
# <http://www.gnu.org/licenses/>.
cmake_minimum_required(VERSION 2.6)
include(FindPkgConfig)
include(CheckIncludeFile)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/modules/") 
project(fnordmetric)

option(ENABLE_TESTS "Build unit tests [default: off]" OFF)

include_directories(${PROJECT_BINARY_DIR})
include_directories(../src)
include_directories(../src/libfnord)

add_subdirectory(../src/libfnord/fnord-base "${CMAKE_CURRENT_BINARY_DIR}/libfnord-base")
add_subdirectory(../src/libfnord/fnord-chart "${CMAKE_CURRENT_BINARY_DIR}/libfnord-chart")
add_subdirectory(../src/libfnord/fnord-http "${CMAKE_CURRENT_BINARY_DIR}/libfnord-http")
add_subdirectory(../src/libfnord/fnord-json "${CMAKE_CURRENT_BINARY_DIR}/libfnord-json")
add_subdirectory(../src/libfnord/fnord-metricdb "${CMAKE_CURRENT_BINARY_DIR}/libfnord-metricdb")
add_subdirectory(../src/libfnord/fnord-sstable "${CMAKE_CURRENT_BINARY_DIR}/libfnord-sstable")

find_package(Threads)

if(APPLE)
  set(CMAKE_CXX_FLAGS "-std=c++0x -stdlib=libc++ ${CMAKE_CXX_FLAGS}")
else()
  set(CMAKE_CXX_FLAGS "-std=c++0x ${CMAKE_CXX_FLAGS}")
endif()

set(FNORDMETRIC_SOURCES
    $<TARGET_OBJECTS:fnord-base>
    $<TARGET_OBJECTS:fnord-chart>
    $<TARGET_OBJECTS:fnord-http>
    $<TARGET_OBJECTS:fnord-json>
    $<TARGET_OBJECTS:fnord-metricdb>
    $<TARGET_OBJECTS:fnord-sstable>
    ../src/libfnord/fnord-webcomponents/bundle.cc
    ../src/libfnord/fnord-webcomponents/httpmount.cc
    ../src/fnordmetric/adminui.cc
    ../src/fnordmetric/environment.cc
    ../src/fnordmetric/chartsql/areachartbuilder.cc
    ../src/fnordmetric/chartsql/barchartbuilder.cc
    ../src/fnordmetric/chartsql/domainconfig.cc
    ../src/fnordmetric/chartsql/drawstatement.cc
    ../src/fnordmetric/chartsql/linechartbuilder.cc
    ../src/fnordmetric/chartsql/pointchartbuilder.cc
    ../src/fnordmetric/chartsql/queryendpoint.cc
    ../src/fnordmetric/chartsql/query.cc
    ../src/fnordmetric/chartsql/queryservice.cc
    ../src/fnordmetric/chartsql/seriesadapter.cc
    ../src/fnordmetric/sql/backends/csv/csvbackend.cc
    ../src/fnordmetric/sql/backends/csv/csvinputstream.cc
    ../src/fnordmetric/sql/backends/csv/csvtableref.cc
    ../src/fnordmetric/sql/backends/mysql/mysqlbackend.cc
    ../src/fnordmetric/sql/backends/mysql/mysqlconnection.cc
    ../src/fnordmetric/sql/backends/mysql/mysqltableref.cc
    ../src/fnordmetric/sql/backends/metricservice/metrictableref.cc
    ../src/fnordmetric/sql/backends/metricservice/metrictablerepository.cc
    ../src/fnordmetric/sql/backends/crate/cratebackend.cc
    ../src/fnordmetric/sql/backends/crate/cratetableref.cc
    ../src/fnordmetric/sql/expressions/aggregate.cc
    ../src/fnordmetric/sql/expressions/boolean.cc
    ../src/fnordmetric/sql/expressions/datetime.cc
    ../src/fnordmetric/sql/expressions/math.cc
    ../src/fnordmetric/sql/parser/astnode.cc
    ../src/fnordmetric/sql/parser/astutil.cc
    ../src/fnordmetric/sql/parser/parser.cc
    ../src/fnordmetric/sql/parser/token.cc
    ../src/fnordmetric/sql/parser/tokenize.cc
    ../src/fnordmetric/sql/runtime/compile.cc
    ../src/fnordmetric/sql/runtime/defaultruntime.cc
    ../src/fnordmetric/sql/runtime/execute.cc
    ../src/fnordmetric/sql/runtime/groupovertimewindow.cc
    ../src/fnordmetric/sql/runtime/orderby.cc
    ../src/fnordmetric/sql/runtime/importstatement.cc
    ../src/fnordmetric/sql/runtime/queryplan.cc
    ../src/fnordmetric/sql/runtime/queryplanbuilder.cc
    ../src/fnordmetric/sql/runtime/queryplannode.cc
    ../src/fnordmetric/sql/runtime/runtime.cc
    ../src/fnordmetric/sql/runtime/symboltable.cc
    ../src/fnordmetric/sql/runtime/tablerepository.cc
    ../src/fnordmetric/sql/runtime/tablescan.cc
    ../src/fnordmetric/sql/svalue.cc)

set_source_files_properties(fnordmetric-assets PROPERTIES GENERATED true)

add_custom_target(fnordmetric-assets
    COMMAND ./src/libfnord/fnord-base/assets.sh ${CMAKE_BINARY_DIR}/fnordmetric-assets.cc < ./cmake/assets.txt
    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/..)

#add_executable(fnordmetric-cli ${FNORDMETRIC_SOURCES} ../src/fnordmetric/cli.cc)
#target_link_libraries(fnordmetric-cli m)
#target_link_libraries(fnordmetric-cli ${CMAKE_THREAD_LIBS_INIT})
#install(TARGETS fnordmetric-cli DESTINATION bin)

add_executable(fnordmetric-server
    ${FNORDMETRIC_SOURCES}
    ../src/fnordmetric/fnordmetric-server.cc
    ${CMAKE_BINARY_DIR}/fnordmetric-assets.cc)
add_dependencies(fnordmetric-server fnordmetric-assets)
target_link_libraries(fnordmetric-server m)
target_link_libraries(fnordmetric-server ${CMAKE_THREAD_LIBS_INIT})
install(TARGETS fnordmetric-server DESTINATION bin)

find_package(MySQL)
if(MYSQL_FOUND)
  set(FNORD_ENABLE_MYSQL true)
  #target_link_libraries(fnordmetric-cli ${MYSQL_CLIENT_LIBS})
  target_link_libraries(fnordmetric-server ${MYSQL_CLIENT_LIBS})
else()
  message("WARNING: libmysqlclient not found, FnordMetric will be compiled without MySQL support")
endif()

configure_file(config.h.in config.h)

if(ENABLE_TESTS)
  add_library(fnord SHARED ${FNORDMETRIC_SOURCES})
  target_link_libraries(fnord m)

  add_executable(tests/test-sql ../src/fnordmetric/sql/sql_test.cc)
  target_link_libraries(tests/test-sql fnord)

  add_executable(tests/test-csv-backend
      stage/src/fnordmetric/fnordmetric/sql/backends/csv/csvbackend_test.cc)
  target_link_libraries(tests/test-csv-backend fnord)

  add_executable(tests/test-sql-extensions
      stage/src/fnordmetric/fnordmetric/sql_extensions/sql_extensions_test.cc)
  target_link_libraries(tests/test-sql-extensions fnord)

  add_executable(tests/test-query
      stage/src/fnordmetric/fnordmetric/query/query_test.cc)
  target_link_libraries(tests/test-query fnord)

  add_executable(tests/test-disk-backend
      stage/src/fnordmetric/fnordmetric/metricdb/backends/disk/diskbackend_test.cc)
  target_link_libraries(tests/test-disk-backend fnord)
endif()

cmake/Makefile

deleted100644 → 0
+0 −29
Original line number Diff line number Diff line
# This file is part of the "FnordMetric" project
#   Copyright (c) 2014 Paul Asmuth, Google Inc.
#
# Licensed under the MIT license (see LICENSE).

all: assets
	mkdir -p target/tests
	mkdir -p stage/src
	test -e stage/src/fnordmetric || ln -s ../../../../src stage/src/fnordmetric || true
	(cd target && cmake .. -DCMAKE_BUILD_TYPE=Release && make)
	rm -f ../fnordmetric
	rm -f ../libfnordmetric-static.a
	rm -f ../libfnordmetric.dylib
	rm -f ../libfnordmetric.so
	ln -s cmake/target/fnordmetric ../fnordmetric

install:
	(cd target && cmake .. && make install)

assets:
	./assets.sh

test: all
	@find target/tests -iname "test-*" | while read t; do (cd ../../ && build/cmake/$$t) || exit 1; done

clean:
	rm -rf target stage

.PHONY: all test clean assets install

cmake/assets.txt

deleted100644 → 0
+0 −45
Original line number Diff line number Diff line
fnord/fnord.js:src/libfnord/fnord-webcomponents/fnord.js
fnord/3rdparty/codemirror.js:src/libfnord/fnord-webcomponents/3rdparty/codemirror.js
fnord/3rdparty/fontawesome.woff:src/libfnord/fnord-webcomponents/3rdparty/fontawesome.woff
fnord/3rdparty/fontawesome.css:src/libfnord/fnord-webcomponents/3rdparty/fontawesome.css
fnord/3rdparty/reset.css:src/libfnord/fnord-webcomponents/3rdparty/reset.css
fnord/components/fn-table.css:src/libfnord/fnord-webcomponents/components/fn-table.css
fnord/components/fn-button.css:src/libfnord/fnord-webcomponents/components/fn-button.css
fnord/components/fn-modal.css:src/libfnord/fnord-webcomponents/components/fn-modal.css
fnord/components/fn-tabbar.css:src/libfnord/fnord-webcomponents/components/fn-tabbar.css
fnord/components/fn-message.css:src/libfnord/fnord-webcomponents/components/fn-message.css
fnord/components/fn-tooltip.css:src/libfnord/fnord-webcomponents/components/fn-tooltip.css
fnord/themes/midnight-blue.css:src/libfnord/fnord-webcomponents/themes/midnight-blue.css
fnord/components/fn-appbar.html:src/libfnord/fnord-webcomponents/components/fn-appbar.html
fnord/components/fn-button.html:src/libfnord/fnord-webcomponents/components/fn-button.html
fnord/components/fn-button-group.html:src/libfnord/fnord-webcomponents/components/fn-button-group.html
fnord/components/fn-icon.html:src/libfnord/fnord-webcomponents/components/fn-icon.html
fnord/components/fn-input.html:src/libfnord/fnord-webcomponents/components/fn-input.html
fnord/components/fn-loader.html:src/libfnord/fnord-webcomponents/components/fn-loader.html
fnord/components/fn-menu.html:src/libfnord/fnord-webcomponents/components/fn-menu.html
fnord/components/fn-search.html:src/libfnord/fnord-webcomponents/components/fn-search.html
fnord/components/fn-table.html:src/libfnord/fnord-webcomponents/components/fn-table.html
fnord/components/fn-splitpane.html:src/libfnord/fnord-webcomponents/components/fn-splitpane.html
fnord/components/fn-codeeditor.html:src/libfnord/fnord-webcomponents/components/fn-codeeditor.html
fnord/components/fn-dropdown.html:src/libfnord/fnord-webcomponents/components/fn-dropdown.html
fnord/components/fn-datepicker.html:src/libfnord/fnord-webcomponents/components/fn-datepicker.html
fnord/components/fn-timeinput.html:src/libfnord/fnord-webcomponents/components/fn-timeinput.html
fnord/components/fn-daterangepicker.html:src/libfnord/fnord-webcomponents/components/fn-daterangepicker.html
fnord/components/fn-tabbar.html:src/libfnord/fnord-webcomponents/components/fn-tabbar.html
fnord/components/fn-modal.html:src/libfnord/fnord-webcomponents/components/fn-modal.html
fnord/components/fn-pager.html:src/libfnord/fnord-webcomponents/components/fn-pager.html
fnord/components/fn-tooltip.html:src/libfnord/fnord-webcomponents/components/fn-tooltip.html
fnord/components/fn-flexbox.html:src/libfnord/fnord-webcomponents/components/fn-flexbox.html
fnord-metricdb/metric-explorer-list.html:src/libfnord/fnord-metricdb/metric-explorer/metric-explorer-list.html
fnord-metricdb/metric-explorer-preview.html:src/libfnord/fnord-metricdb/metric-explorer/metric-explorer-preview.html
fnord-metricdb/metric-explorer-search.html:src/libfnord/fnord-metricdb/metric-explorer/metric-explorer-search.html
fnord-metricdb/metric-control.html:src/libfnord/fnord-metricdb/metric-explorer/metric-control.html
fnord-metricdb/fn-metric-explorer.css:src/libfnord/fnord-metricdb/metric-explorer/fn-metric-explorer.css
fnordmetric/fnordmetric-app.html:src/fnordmetric/webui/fnordmetric-app.html
fnordmetric/fnordmetric-console.html:src/fnordmetric/webui/fnordmetric-console.html
fnordmetric/fnordmetric-query-editor.html:src/fnordmetric/webui/fnordmetric-query-editor.html
fnordmetric/fnordmetric-webui.html:src/fnordmetric/webui/fnordmetric-webui.html
fnordmetric/fnordmetric-webui-midnightblue.css:src/fnordmetric/webui/fnordmetric-webui-midnightblue.css
fnordmetric/fnordmetric-webui-cockpit.css:src/fnordmetric/webui/fnordmetric-webui-cockpit.css
fnordmetric/fnordmetric-webui-util.js:src/fnordmetric/webui/fnordmetric-webui-util.js
fnordmetric/fnordmetric-embed-query-popup.html:src/fnordmetric/webui/fnordmetric-embed-query-popup.html
Loading