From 71ed3686430c8e47a9d1a7576382f6c7de2c0cee Mon Sep 17 00:00:00 2001 From: Arnstein Ressem Date: Wed, 27 Sep 2017 18:00:09 +0200 Subject: Revert "Revert "Aressem/remove post install script"" --- CMakeLists.txt | 44 +++++- application-preprocessor/CMakeLists.txt | 4 + chain/CMakeLists.txt | 2 + clustercontroller-apps/CMakeLists.txt | 2 + clustercontroller-apputil/CMakeLists.txt | 2 + clustercontroller-core/CMakeLists.txt | 2 + clustercontroller-utils/CMakeLists.txt | 2 + component/CMakeLists.txt | 2 + config-bundle/CMakeLists.txt | 2 + config-model-api/CMakeLists.txt | 2 + config-model-fat/CMakeLists.txt | 5 + config-model/CMakeLists.txt | 10 ++ config-provisioning/CMakeLists.txt | 3 + config-proxy/CMakeLists.txt | 6 + configdefinitions/CMakeLists.txt | 2 + configdefinitions/src/vespa/CMakeLists.txt | 64 ++++---- configserver/CMakeLists.txt | 12 ++ configserver/src/main/sh/start-configserver | 1 + container-accesslogging/CMakeLists.txt | 2 + container-core/CMakeLists.txt | 16 ++ container-di/CMakeLists.txt | 5 + container-disc/CMakeLists.txt | 12 ++ container-jersey2/CMakeLists.txt | 2 + container-messagebus/CMakeLists.txt | 3 + container-search-and-docproc/CMakeLists.txt | 4 + container-search/CMakeLists.txt | 28 ++++ defaults/CMakeLists.txt | 2 + dist.sh | 2 +- dist/CMakeLists.txt | 2 - dist/post_install.sh | 76 ---------- docker-api/CMakeLists.txt | 2 + docproc/CMakeLists.txt | 4 + docprocs/CMakeLists.txt | 2 + document/CMakeLists.txt | 2 + document/src/vespa/document/config/CMakeLists.txt | 6 +- .../documentapi/messagebus/policies/CMakeLists.txt | 2 +- fileacquirer/CMakeLists.txt | 2 + .../filedistribution/distributor/CMakeLists.txt | 2 +- .../vespa/filedistribution/model/CMakeLists.txt | 2 +- functions.cmake | 20 +++ install_java.cmake | 161 --------------------- jdisc_core/CMakeLists.txt | 4 + jdisc_http_service/CMakeLists.txt | 10 ++ jdisc_jetty/CMakeLists.txt | 3 + logd/src/logd/CMakeLists.txt | 2 +- logserver/CMakeLists.txt | 4 + messagebus/src/vespa/messagebus/CMakeLists.txt | 2 +- metrics/src/vespa/metrics/CMakeLists.txt | 2 +- node-repository/CMakeLists.txt | 5 + orchestrator/CMakeLists.txt | 2 + persistence/CMakeLists.txt | 3 + .../src/vespa/searchcore/config/CMakeLists.txt | 8 +- searchlib/CMakeLists.txt | 7 + .../src/vespa/searchlib/config/CMakeLists.txt | 2 +- .../src/vespa/searchsummary/config/CMakeLists.txt | 2 +- simplemetrics/CMakeLists.txt | 4 + standalone-container/CMakeLists.txt | 2 + statistics/CMakeLists.txt | 2 + storage/src/vespa/storage/bucketdb/CMakeLists.txt | 4 +- storage/src/vespa/storage/config/CMakeLists.txt | 24 +-- storage/src/vespa/storage/visiting/CMakeLists.txt | 2 +- storageserver/src/apps/storaged/CMakeLists.txt | 2 + vespa-http-client/CMakeLists.txt | 2 + vespa_jersey2/CMakeLists.txt | 2 + vespabase/CMakeLists.txt | 4 + vespabase/conf/default-env.txt.in | 2 + vespabase/src/rhel-prestart.sh | 1 + vespaclient-container-plugin/CMakeLists.txt | 2 + vespaclient-core/CMakeLists.txt | 3 + vespaclient-java/CMakeLists.txt | 12 ++ vespajlib/CMakeLists.txt | 2 + vsm/src/vespa/vsm/config/CMakeLists.txt | 6 +- zkfacade/CMakeLists.txt | 2 + 73 files changed, 350 insertions(+), 310 deletions(-) create mode 100644 application-preprocessor/CMakeLists.txt create mode 100644 chain/CMakeLists.txt create mode 100644 clustercontroller-apps/CMakeLists.txt create mode 100644 clustercontroller-apputil/CMakeLists.txt create mode 100644 clustercontroller-core/CMakeLists.txt create mode 100644 clustercontroller-utils/CMakeLists.txt create mode 100644 component/CMakeLists.txt create mode 100644 config-bundle/CMakeLists.txt create mode 100644 config-model-api/CMakeLists.txt create mode 100644 config-model-fat/CMakeLists.txt create mode 100644 config-model/CMakeLists.txt create mode 100644 config-provisioning/CMakeLists.txt create mode 100644 config-proxy/CMakeLists.txt create mode 100644 container-accesslogging/CMakeLists.txt create mode 100644 container-core/CMakeLists.txt create mode 100644 container-di/CMakeLists.txt create mode 100644 container-disc/CMakeLists.txt create mode 100644 container-jersey2/CMakeLists.txt create mode 100644 container-messagebus/CMakeLists.txt create mode 100644 container-search-and-docproc/CMakeLists.txt create mode 100644 container-search/CMakeLists.txt delete mode 100644 dist/CMakeLists.txt delete mode 100755 dist/post_install.sh create mode 100644 docker-api/CMakeLists.txt create mode 100644 docproc/CMakeLists.txt create mode 100644 docprocs/CMakeLists.txt delete mode 100644 install_java.cmake create mode 100644 jdisc_core/CMakeLists.txt create mode 100644 jdisc_http_service/CMakeLists.txt create mode 100644 jdisc_jetty/CMakeLists.txt create mode 100644 logserver/CMakeLists.txt create mode 100644 node-repository/CMakeLists.txt create mode 100644 orchestrator/CMakeLists.txt create mode 100644 simplemetrics/CMakeLists.txt create mode 100644 standalone-container/CMakeLists.txt create mode 100644 statistics/CMakeLists.txt create mode 100644 vespa-http-client/CMakeLists.txt create mode 100644 vespa_jersey2/CMakeLists.txt create mode 100644 vespabase/conf/default-env.txt.in create mode 100644 vespaclient-container-plugin/CMakeLists.txt create mode 100644 vespaclient-core/CMakeLists.txt create mode 100644 vespaclient-java/CMakeLists.txt create mode 100644 vespajlib/CMakeLists.txt create mode 100644 zkfacade/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 413d232c00d..f7752d5915e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -16,7 +16,6 @@ find_package(JNI REQUIRED) include(functions.cmake) include(build_settings.cmake) -include(install_java.cmake) # Enable CTest unit testing enable_testing() @@ -24,12 +23,36 @@ enable_testing() # Include vespa config definitions in every target include_directories(BEFORE ${CMAKE_BINARY_DIR}/configdefinitions/src) +add_subdirectory(application-preprocessor) +add_subdirectory(chain) +add_subdirectory(component) +add_subdirectory(config-bundle) +add_subdirectory(config-model) +add_subdirectory(config-model-api) +add_subdirectory(config-provisioning) +add_subdirectory(config-proxy) add_subdirectory(config) +add_subdirectory(config-model-fat) add_subdirectory(configd) add_subdirectory(configdefinitions) add_subdirectory(configserver) add_subdirectory(configutil) +add_subdirectory(container-accesslogging) +add_subdirectory(container-core) +add_subdirectory(container-di) +add_subdirectory(container-disc) +add_subdirectory(container-jersey2) +add_subdirectory(container-messagebus) +add_subdirectory(container-search) +add_subdirectory(container-search-and-docproc) +add_subdirectory(clustercontroller-apps) +add_subdirectory(clustercontroller-apputil) +add_subdirectory(clustercontroller-utils) +add_subdirectory(clustercontroller-core) add_subdirectory(defaults) +add_subdirectory(docker-api) +add_subdirectory(docproc) +add_subdirectory(docprocs) add_subdirectory(document) add_subdirectory(documentapi) add_subdirectory(eval) @@ -41,14 +64,20 @@ add_subdirectory(filedistribution) add_subdirectory(fnet) add_subdirectory(frtstream) add_subdirectory(fsa) +add_subdirectory(jdisc_core) +add_subdirectory(jdisc_http_service) +add_subdirectory(jdisc_jetty) add_subdirectory(jrt_test) add_subdirectory(juniper) add_subdirectory(logd) +add_subdirectory(logserver) add_subdirectory(lowercasing_test) add_subdirectory(memfilepersistence) add_subdirectory(messagebus) add_subdirectory(messagebus_test) add_subdirectory(metrics) +add_subdirectory(node-repository) +add_subdirectory(orchestrator) add_subdirectory(persistence) add_subdirectory(persistencetypes) add_subdirectory(searchcommon) @@ -56,25 +85,32 @@ add_subdirectory(searchcore) add_subdirectory(searchcorespi) add_subdirectory(searchlib) add_subdirectory(searchsummary) +add_subdirectory(simplemetrics) add_subdirectory(slobrok) add_subdirectory(staging_vespalib) +add_subdirectory(standalone-container) add_subdirectory(storage) add_subdirectory(storageapi) add_subdirectory(storageframework) add_subdirectory(storageserver) +add_subdirectory(statistics) add_subdirectory(streamingvisitors) add_subdirectory(vbench) add_subdirectory(vdslib) add_subdirectory(vdstestlib) +add_subdirectory(vespa-http-client) +add_subdirectory(vespa_jersey2) add_subdirectory(vespabase) add_subdirectory(vespaclient) +add_subdirectory(vespaclient-core) +add_subdirectory(vespaclient-container-plugin) +add_subdirectory(vespaclient-java) +add_subdirectory(vespajlib) add_subdirectory(vespalib) add_subdirectory(vespalog) add_subdirectory(vespamalloc) add_subdirectory(vsm) -# Note: Change when cmake gets proper post-install support. -# Post installation steps are run from dist subdirectory which needs to be the last add_subdirectory(...) call in this file. -add_subdirectory(dist) +add_subdirectory(zkfacade) # Create module targets with name ${MODULE}+module depending on every target defined within that module __create_module_targets(TARGETS "module") diff --git a/application-preprocessor/CMakeLists.txt b/application-preprocessor/CMakeLists.txt new file mode 100644 index 00000000000..e40fd4a6736 --- /dev/null +++ b/application-preprocessor/CMakeLists.txt @@ -0,0 +1,4 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(application-preprocessor) +vespa_install_script(src/main/sh/vespa-preprocess-application bin) + diff --git a/chain/CMakeLists.txt b/chain/CMakeLists.txt new file mode 100644 index 00000000000..3b5b5fd2c99 --- /dev/null +++ b/chain/CMakeLists.txt @@ -0,0 +1,2 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_config_definition(src/main/resources/configdefinitions/chains.def container.core.chains.def) diff --git a/clustercontroller-apps/CMakeLists.txt b/clustercontroller-apps/CMakeLists.txt new file mode 100644 index 00000000000..f59ffbfa7bf --- /dev/null +++ b/clustercontroller-apps/CMakeLists.txt @@ -0,0 +1,2 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(clustercontroller-apps) diff --git a/clustercontroller-apputil/CMakeLists.txt b/clustercontroller-apputil/CMakeLists.txt new file mode 100644 index 00000000000..bdfb3ab3ed7 --- /dev/null +++ b/clustercontroller-apputil/CMakeLists.txt @@ -0,0 +1,2 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(clustercontroller-apputil) diff --git a/clustercontroller-core/CMakeLists.txt b/clustercontroller-core/CMakeLists.txt new file mode 100644 index 00000000000..6754e893009 --- /dev/null +++ b/clustercontroller-core/CMakeLists.txt @@ -0,0 +1,2 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(clustercontroller-core) diff --git a/clustercontroller-utils/CMakeLists.txt b/clustercontroller-utils/CMakeLists.txt new file mode 100644 index 00000000000..250a8e7e693 --- /dev/null +++ b/clustercontroller-utils/CMakeLists.txt @@ -0,0 +1,2 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(clustercontroller-utils) diff --git a/component/CMakeLists.txt b/component/CMakeLists.txt new file mode 100644 index 00000000000..87d0a4989ba --- /dev/null +++ b/component/CMakeLists.txt @@ -0,0 +1,2 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(component) diff --git a/config-bundle/CMakeLists.txt b/config-bundle/CMakeLists.txt new file mode 100644 index 00000000000..8d4878920a4 --- /dev/null +++ b/config-bundle/CMakeLists.txt @@ -0,0 +1,2 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(config-bundle) diff --git a/config-model-api/CMakeLists.txt b/config-model-api/CMakeLists.txt new file mode 100644 index 00000000000..f69e5242e2e --- /dev/null +++ b/config-model-api/CMakeLists.txt @@ -0,0 +1,2 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(config-model-api) diff --git a/config-model-fat/CMakeLists.txt b/config-model-fat/CMakeLists.txt new file mode 100644 index 00000000000..1e2364556dc --- /dev/null +++ b/config-model-fat/CMakeLists.txt @@ -0,0 +1,5 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_java_artifact(config-model-fat) + +install(FILES src/main/resources/config-models.xml + DESTINATION conf/configserver-app) diff --git a/config-model/CMakeLists.txt b/config-model/CMakeLists.txt new file mode 100644 index 00000000000..274ab8a763b --- /dev/null +++ b/config-model/CMakeLists.txt @@ -0,0 +1,10 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(config-model) + +vespa_install_script(src/main/perl/vespa-deploy bin) +vespa_install_script(src/main/perl/vespa-expand-config.pl bin) +vespa_install_script(src/main/perl/vespa-replicate-log-stream bin) +vespa_install_script(src/main/sh/vespa-validate-application bin) + +install(DIRECTORY src/main/resources/schema DESTINATION share/vespa PATTERN ".gitignore" EXCLUDE) +install(DIRECTORY src/main/resources/schema DESTINATION share/vespa/schema/version/6.x PATTERN ".gitignore" EXCLUDE) diff --git a/config-provisioning/CMakeLists.txt b/config-provisioning/CMakeLists.txt new file mode 100644 index 00000000000..829ba87fab8 --- /dev/null +++ b/config-provisioning/CMakeLists.txt @@ -0,0 +1,3 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(config-provisioning) +install_config_definition(src/main/resources/configdefinitions/flavors.def config.provisioning.flavors.def) diff --git a/config-proxy/CMakeLists.txt b/config-proxy/CMakeLists.txt new file mode 100644 index 00000000000..a87f10573be --- /dev/null +++ b/config-proxy/CMakeLists.txt @@ -0,0 +1,6 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(config-proxy) + +vespa_install_script(src/main/sh/vespa-config-ctl.sh vespa-config-ctl bin) +vespa_install_script(src/main/sh/vespa-config-loadtester.sh vespa-config-loadtester bin) +vespa_install_script(src/main/sh/vespa-config-verification.sh vespa-config-verification bin) diff --git a/configdefinitions/CMakeLists.txt b/configdefinitions/CMakeLists.txt index d8f89e04cc1..ee78759254a 100644 --- a/configdefinitions/CMakeLists.txt +++ b/configdefinitions/CMakeLists.txt @@ -8,3 +8,5 @@ vespa_define_module( LIBS src/vespa ) + +install_fat_java_artifact(configdefinitions) diff --git a/configdefinitions/src/vespa/CMakeLists.txt b/configdefinitions/src/vespa/CMakeLists.txt index 016739f4594..4ed4dc06d41 100644 --- a/configdefinitions/src/vespa/CMakeLists.txt +++ b/configdefinitions/src/vespa/CMakeLists.txt @@ -5,66 +5,66 @@ vespa_add_library(configdefinitions DEPENDS ) vespa_generate_config(configdefinitions application-id.def) -install(FILES application-id.def RENAME cloud.config.application-id.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(application-id.def cloud.config.application-id.def) vespa_generate_config(configdefinitions attributes.def) -install(FILES attributes.def RENAME vespa.config.search.attributes.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(attributes.def vespa.config.search.attributes.def) vespa_generate_config(configdefinitions cluster-info.def) -install(FILES cluster-info.def RENAME cloud.config.cluster-info.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(cluster-info.def cloud.config.cluster-info.def) vespa_generate_config(configdefinitions cluster-list.def) -install(FILES cluster-list.def RENAME cloud.config.cluster-list.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(cluster-list.def cloud.config.cluster-list.def) vespa_generate_config(configdefinitions configserver.def) -install(FILES configserver.def RENAME cloud.config.configserver.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(configserver.def cloud.config.configserver.def) vespa_generate_config(configdefinitions dispatch.def) -install(FILES dispatch.def RENAME vespa.config.search.dispatch.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(dispatch.def vespa.config.search.dispatch.def) vespa_generate_config(configdefinitions fleetcontroller.def) -install(FILES fleetcontroller.def RENAME vespa.config.content.fleetcontroller.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(fleetcontroller.def vespa.config.content.fleetcontroller.def) vespa_generate_config(configdefinitions ilscripts.def) -install(FILES ilscripts.def RENAME vespa.configdefinition.ilscripts.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(ilscripts.def vespa.configdefinition.ilscripts.def) vespa_generate_config(configdefinitions imported-fields.def) -install(FILES imported-fields.def RENAME vespa.config.search.imported-fields.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(imported-fields.def vespa.config.search.imported-fields.def) vespa_generate_config(configdefinitions indexschema.def) -install(FILES indexschema.def RENAME vespa.config.search.indexschema.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(indexschema.def vespa.config.search.indexschema.def) vespa_generate_config(configdefinitions lb-services.def) -install(FILES lb-services.def RENAME cloud.config.lb-services.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(lb-services.def cloud.config.lb-services.def) vespa_generate_config(configdefinitions load-type.def) -install(FILES load-type.def RENAME vespa.config.content.load-type.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(load-type.def vespa.config.content.load-type.def) vespa_generate_config(configdefinitions messagetyperouteselectorpolicy.def) -install(FILES messagetyperouteselectorpolicy.def RENAME vespa.config.content.messagetyperouteselectorpolicy.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(messagetyperouteselectorpolicy.def vespa.config.content.messagetyperouteselectorpolicy.def) vespa_generate_config(configdefinitions model.def) -install(FILES model.def RENAME cloud.config.model.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(model.def cloud.config.model.def) vespa_generate_config(configdefinitions orchestrator.def) -install(FILES orchestrator.def RENAME vespa.orchestrator.config.orchestrator.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(orchestrator.def vespa.orchestrator.config.orchestrator.def) vespa_generate_config(configdefinitions persistence.def) -install(FILES persistence.def RENAME vespa.config.content.persistence.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(persistence.def vespa.config.content.persistence.def) vespa_generate_config(configdefinitions rank-profiles.def) -install(FILES rank-profiles.def RENAME vespa.config.search.rank-profiles.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(rank-profiles.def vespa.config.search.rank-profiles.def) vespa_generate_config(configdefinitions routing.def) -install(FILES routing.def RENAME cloud.config.routing.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(routing.def cloud.config.routing.def) vespa_generate_config(configdefinitions routing-provider.def) -install(FILES routing-provider.def RENAME cloud.config.routing-provider.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(routing-provider.def cloud.config.routing-provider.def) vespa_generate_config(configdefinitions sentinel.def) -install(FILES sentinel.def RENAME cloud.config.sentinel.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(sentinel.def cloud.config.sentinel.def) vespa_generate_config(configdefinitions slobroks.def) -install(FILES slobroks.def RENAME cloud.config.slobroks.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(slobroks.def cloud.config.slobroks.def) vespa_generate_config(configdefinitions specialtokens.def) -install(FILES specialtokens.def RENAME vespa.configdefinition.specialtokens.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(specialtokens.def vespa.configdefinition.specialtokens.def) vespa_generate_config(configdefinitions stor-devices.def) -install(FILES stor-devices.def RENAME vespa.config.storage.stor-devices.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(stor-devices.def vespa.config.storage.stor-devices.def) vespa_generate_config(configdefinitions stor-distribution.def) -install(FILES stor-distribution.def RENAME vespa.config.content.stor-distribution.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(stor-distribution.def vespa.config.content.stor-distribution.def) vespa_generate_config(configdefinitions stor-filestor.def) -install(FILES stor-filestor.def RENAME vespa.config.content.stor-filestor.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(stor-filestor.def vespa.config.content.stor-filestor.def) vespa_generate_config(configdefinitions stor-memfilepersistence.def) -install(FILES stor-memfilepersistence.def RENAME vespa.config.storage.stor-memfilepersistence.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(stor-memfilepersistence.def vespa.config.storage.stor-memfilepersistence.def) vespa_generate_config(configdefinitions summary.def) -install(FILES summary.def RENAME vespa.config.search.summary.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(summary.def vespa.config.search.summary.def) vespa_generate_config(configdefinitions summarymap.def) -install(FILES summarymap.def RENAME vespa.config.search.summarymap.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(summarymap.def vespa.config.search.summarymap.def) vespa_generate_config(configdefinitions upgrading.def) -install(FILES upgrading.def RENAME vespa.config.content.upgrading.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(upgrading.def vespa.config.content.upgrading.def) vespa_generate_config(configdefinitions ymon.def) -install(FILES ymon.def RENAME cloud.config.ymon.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(ymon.def cloud.config.ymon.def) vespa_generate_config(configdefinitions zookeeper-server.def) -install(FILES zookeeper-server.def RENAME cloud.config.zookeeper-server.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(zookeeper-server.def cloud.config.zookeeper-server.def) vespa_generate_config(configdefinitions zookeepers.def) -install(FILES zookeepers.def RENAME cloud.config.zookeepers.def DESTINATION var/db/vespa/config_server/serverdb/classes) +install_config_definition(zookeepers.def cloud.config.zookeepers.def) diff --git a/configserver/CMakeLists.txt b/configserver/CMakeLists.txt index e54a93b3d28..8134fde2105 100644 --- a/configserver/CMakeLists.txt +++ b/configserver/CMakeLists.txt @@ -1,9 +1,21 @@ # Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(configserver) + vespa_install_script(src/main/sh/vespa-configserver-remove-state bin) vespa_install_script(src/main/sh/start-filedistribution libexec/vespa) vespa_install_script(src/main/sh/ping-configserver libexec/vespa) vespa_install_script(src/main/sh/start-configserver libexec/vespa) vespa_install_script(src/main/sh/start-logd libexec/vespa) vespa_install_script(src/main/sh/stop-configserver libexec/vespa) + install(DIRECTORY src/main/resources/logd DESTINATION conf) install(DIRECTORY src/main/resources/configserver-app DESTINATION conf) + +install(CODE "execute_process(COMMAND mkdir -p $ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/conf/configserver-app/components)") +install(CODE "execute_process(COMMAND mkdir -p $ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/conf/configserver-app/config-models)") +install(CODE "execute_process(COMMAND ln -snf ${CMAKE_INSTALL_PREFIX}/lib/jars/config-model-fat.jar $ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/conf/configserver-app/components/config-model-fat.jar)") +install(CODE "execute_process(COMMAND ln -snf ${CMAKE_INSTALL_PREFIX}/lib/jars/configserver-jar-with-dependencies.jar $ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/conf/configserver-app/components/configserver.jar)") +install(CODE "execute_process(COMMAND ln -snf ${CMAKE_INSTALL_PREFIX}/lib/jars/orchestrator-jar-with-dependencies.jar $ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/conf/configserver-app/components/orchestrator.jar)") +install(CODE "execute_process(COMMAND ln -snf ${CMAKE_INSTALL_PREFIX}/lib/jars/node-repository-jar-with-dependencies.jar $ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/conf/configserver-app/components/node-repository.jar)") +install(CODE "execute_process(COMMAND ln -snf ${CMAKE_INSTALL_PREFIX}/lib/jars/zkfacade-jar-with-dependencies.jar $ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/conf/configserver-app/components/zkfacade.jar)") +install(CODE "execute_process(COMMAND ln -snf ${CMAKE_INSTALL_PREFIX}/conf/configserver-app/components $ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/lib/jars/config-models)") diff --git a/configserver/src/main/sh/start-configserver b/configserver/src/main/sh/start-configserver index 43bb6b2ba83..3b168b14c41 100755 --- a/configserver/src/main/sh/start-configserver +++ b/configserver/src/main/sh/start-configserver @@ -80,6 +80,7 @@ fixddir () { chmod 755 $1 } +fixddir ${VESPA_HOME}/conf/zookeeper fixfile ${VESPA_HOME}/conf/zookeeper/zookeeper.cfg fixfile ${VESPA_HOME}/var/zookeeper/myid fixddir ${VESPA_HOME}/var/zookeeper/version-2 diff --git a/container-accesslogging/CMakeLists.txt b/container-accesslogging/CMakeLists.txt new file mode 100644 index 00000000000..fb2ba9ac031 --- /dev/null +++ b/container-accesslogging/CMakeLists.txt @@ -0,0 +1,2 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_config_definition(src/main/resources/configdefinitions/access-log.def container.core.access-log.def) diff --git a/container-core/CMakeLists.txt b/container-core/CMakeLists.txt new file mode 100644 index 00000000000..2d5723865eb --- /dev/null +++ b/container-core/CMakeLists.txt @@ -0,0 +1,16 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_config_definition(src/main/resources/configdefinitions/application-metadata.def container.core.application-metadata.def) +install_config_definition(src/main/resources/configdefinitions/container-document.def container.core.document.container-document.def) +install_config_definition(src/main/resources/configdefinitions/container-http.def container.core.container-http.def) +install_config_definition(src/main/resources/configdefinitions/diagnostics.def container.core.diagnostics.def) +install_config_definition(src/main/resources/configdefinitions/health-monitor.def container.jdisc.config.health-monitor.def) +install_config_definition(src/main/resources/configdefinitions/http-filter.def container.core.http.http-filter.def) +install_config_definition(src/main/resources/configdefinitions/metrics-presentation.def metrics.metrics-presentation.def) +install_config_definition(src/main/resources/configdefinitions/mockservice.def container.handler.test.mockservice.def) +install_config_definition(src/main/resources/configdefinitions/qr-logging.def container.core.qr-logging.def) +install_config_definition(src/main/resources/configdefinitions/qr-searchers.def container.qr-searchers.def) +install_config_definition(src/main/resources/configdefinitions/qr-templates.def container.core.qr-templates.def) +install_config_definition(src/main/resources/configdefinitions/qr.def container.qr.def) +install_config_definition(src/main/resources/configdefinitions/servlet-config.def container.servlet.servlet-config.def) +install_config_definition(src/main/resources/configdefinitions/threadpool.def container.handler.threadpool.def) +install_config_definition(src/main/resources/configdefinitions/vip-status.def container.core.vip-status.def) diff --git a/container-di/CMakeLists.txt b/container-di/CMakeLists.txt new file mode 100644 index 00000000000..c2b033baa92 --- /dev/null +++ b/container-di/CMakeLists.txt @@ -0,0 +1,5 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_config_definition(src/main/resources/configdefinitions/bundles.def container.bundles.def) +install_config_definition(src/main/resources/configdefinitions/components.def container.components.def) +install_config_definition(src/main/resources/configdefinitions/jersey-bundles.def container.di.config.jersey-bundles.def) +install_config_definition(src/main/resources/configdefinitions/jersey-injection.def container.di.config.jersey-injection.def) diff --git a/container-disc/CMakeLists.txt b/container-disc/CMakeLists.txt new file mode 100644 index 00000000000..1b661020166 --- /dev/null +++ b/container-disc/CMakeLists.txt @@ -0,0 +1,12 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(container-disc) + +vespa_install_script(src/main/sh/vespa-start-container-daemon.sh vespa-start-container-daemon bin) + +install_config_definition(src/main/resources/configdefinitions/container.jdisc.config.http-server.def) +install_config_definition(src/main/resources/configdefinitions/jdisc-bindings.def container.jdisc.jdisc-bindings.def) +install_config_definition(src/main/resources/configdefinitions/jersey-connection.def container.config.jersey.jersey-connection.def) +install_config_definition(src/main/resources/configdefinitions/jersey-init.def container.config.jersey.jersey-init.def) +install_config_definition(src/main/resources/configdefinitions/jersey-web-app-pool.def container.config.jersey.jersey-web-app-pool.def) +install_config_definition(src/main/resources/configdefinitions/metric-defaults.def container.jdisc.config.metric-defaults.def) +install_config_definition(src/main/resources/configdefinitions/score-board.def jdisc.metrics.yamasconsumer.cloud.score-board.def) diff --git a/container-jersey2/CMakeLists.txt b/container-jersey2/CMakeLists.txt new file mode 100644 index 00000000000..d2490563372 --- /dev/null +++ b/container-jersey2/CMakeLists.txt @@ -0,0 +1,2 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(container-jersey2) diff --git a/container-messagebus/CMakeLists.txt b/container-messagebus/CMakeLists.txt new file mode 100644 index 00000000000..3cd62d83b73 --- /dev/null +++ b/container-messagebus/CMakeLists.txt @@ -0,0 +1,3 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_config_definition(src/main/resources/configdefinitions/container-mbus.def container.jdisc.container-mbus.def) +install_config_definition(src/main/resources/configdefinitions/session.def container.jdisc.config.session.def) diff --git a/container-search-and-docproc/CMakeLists.txt b/container-search-and-docproc/CMakeLists.txt new file mode 100644 index 00000000000..29bbe5bdb0f --- /dev/null +++ b/container-search-and-docproc/CMakeLists.txt @@ -0,0 +1,4 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_fat_java_artifact(container-search-and-docproc) + +install_config_definition(src/main/resources/configdefinitions/application-userdata.def container.handler.observability.application-userdata.def) diff --git a/container-search/CMakeLists.txt b/container-search/CMakeLists.txt new file mode 100644 index 00000000000..dcf6c3461d3 --- /dev/null +++ b/container-search/CMakeLists.txt @@ -0,0 +1,28 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +install_config_definition(src/main/resources/configdefinitions/cluster.def search.config.cluster.def) +install_config_definition(src/main/resources/configdefinitions/documentdb-info.def prelude.fastsearch.documentdb-info.def) +install_config_definition(src/main/resources/configdefinitions/emulation.def prelude.emulation.def) +install_config_definition(src/main/resources/configdefinitions/federation.def search.federation.federation.def) +install_config_definition(src/main/resources/configdefinitions/fs4.def container.search.fs4.def) +install_config_definition(src/main/resources/configdefinitions/index-info.def search.config.index-info.def) +install_config_definition(src/main/resources/configdefinitions/keyvalue.def prelude.searcher.keyvalue.def) +install_config_definition(src/main/resources/configdefinitions/legacy-emulation.def container.search.legacy-emulation.def) +install_config_definition(src/main/resources/configdefinitions/lowercasing.def search.querytransform.lowercasing.def) +install_config_definition(src/main/resources/configdefinitions/measure-qps.def search.statistics.measure-qps.def) +install_config_definition(src/main/resources/configdefinitions/page-templates.def search.pagetemplates.page-templates.def) +install_config_definition(src/main/resources/configdefinitions/provider.def search.federation.provider.def) +install_config_definition(src/main/resources/configdefinitions/qr-binary-cache-region.def search.cache.qr-binary-cache-region.def) +install_config_definition(src/main/resources/configdefinitions/qr-binary-cache.def search.cache.qr-binary-cache.def) +install_config_definition(src/main/resources/configdefinitions/qr-monitor.def prelude.cluster.qr-monitor.def) +install_config_definition(src/main/resources/configdefinitions/qr-quotetable.def prelude.searcher.qr-quotetable.def) +install_config_definition(src/main/resources/configdefinitions/qr-start.def search.config.qr-start.def) +install_config_definition(src/main/resources/configdefinitions/query-profiles.def search.query.profile.config.query-profiles.def) +install_config_definition(src/main/resources/configdefinitions/rate-limiting.def search.config.rate-limiting.def) +install_config_definition(src/main/resources/configdefinitions/resolvers.def search.pagetemplates.resolvers.def) +install_config_definition(src/main/resources/configdefinitions/rewrites.def search.query.rewrite.rewrites.def) +install_config_definition(src/main/resources/configdefinitions/search-nodes.def search.config.dispatchprototype.search-nodes.def) +install_config_definition(src/main/resources/configdefinitions/search-with-renderer-handler.def search.handler.search-with-renderer-handler.def) +install_config_definition(src/main/resources/configdefinitions/searchchain-forward.def search.federation.searchchain-forward.def) +install_config_definition(src/main/resources/configdefinitions/semantic-rules.def prelude.semantics.semantic-rules.def) +install_config_definition(src/main/resources/configdefinitions/strict-contracts.def search.federation.strict-contracts.def) +install_config_definition(src/main/resources/configdefinitions/timing-searcher.def search.statistics.timing-searcher.def) diff --git a/defaults/CMakeLists.txt b/defaults/CMakeLists.txt index 2b7f719d297..c42e5402688 100644 --- a/defaults/CMakeLists.txt +++ b/defaults/CMakeLists.txt @@ -6,3 +6,5 @@ vespa_define_module( APPS src/apps/printdefault ) + +install_fat_java_artifact(defaults) diff --git a/dist.sh b/dist.sh index 6396ce35368..c1fd499fdf9 100755 --- a/dist.sh +++ b/dist.sh @@ -9,5 +9,5 @@ fi VERSION="$1" mkdir -p ~/rpmbuild/{SOURCES,SPECS} -GZIP=-1 tar -zcf ~/rpmbuild/SOURCES/vespa-$VERSION.tar.gz --transform "flags=r;s,^,vespa-$VERSION/," * +GZIP=-1 tar -zcf ~/rpmbuild/SOURCES/vespa-$VERSION.tar.gz --exclude target --exclude cmake-build-debug --transform "flags=r;s,^,vespa-$VERSION/," * sed -e "s,VESPA_VERSION,$VERSION," < dist/vespa.spec > ~/rpmbuild/SPECS/vespa-$VERSION.spec diff --git a/dist/CMakeLists.txt b/dist/CMakeLists.txt deleted file mode 100644 index d06074074df..00000000000 --- a/dist/CMakeLists.txt +++ /dev/null @@ -1,2 +0,0 @@ -# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -install(CODE "execute_process(COMMAND ${CMAKE_CURRENT_LIST_DIR}/post_install.sh ${CMAKE_INSTALL_PREFIX})") diff --git a/dist/post_install.sh b/dist/post_install.sh deleted file mode 100755 index fb0e19370ee..00000000000 --- a/dist/post_install.sh +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/bash -# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. - -if [ $# -ne 1 ]; then - echo "Usage: $0 " - exit 1 -fi - -declare -r PREFIX="$1" -declare -r INSTALLPATH="$DESTDIR/$PREFIX" - -# Rewrite config def file names -for path in $INSTALLPATH/var/db/vespa/config_server/serverdb/classes/*.def; do - dir=$(dirname $path) - filename=$(basename $path) - namespace=$(grep '^ *namespace *=' $path | sed 's/ *namespace *= *//') - if [ "$namespace" ]; then - case $filename in - $namespace.*) - ;; - *) - mv $path $dir/$namespace.$filename ;; - esac - fi -done - -mkdir -p $INSTALLPATH/conf/configserver/ -mkdir -p $INSTALLPATH/conf/configserver-app/ -mkdir -p $INSTALLPATH/conf/configserver-app/config-models/ -mkdir -p $INSTALLPATH/conf/configserver-app/components/ -mkdir -p $INSTALLPATH/conf/filedistributor/ -mkdir -p $INSTALLPATH/conf/node-admin-app/ -mkdir -p $INSTALLPATH/conf/node-admin-app/components/ -mkdir -p $INSTALLPATH/conf/zookeeper/ -mkdir -p $INSTALLPATH/libexec/jdisc_core/ -mkdir -p $INSTALLPATH/libexec/vespa/modelplugins/ -mkdir -p $INSTALLPATH/libexec/vespa/plugins/qrs/ -mkdir -p $INSTALLPATH/logs/jdisc_core/ -mkdir -p $INSTALLPATH/logs/vespa/ -mkdir -p $INSTALLPATH/logs/vespa/ -mkdir -p $INSTALLPATH/logs/vespa/configserver/ -mkdir -p $INSTALLPATH/logs/vespa/search/ -mkdir -p $INSTALLPATH/logs/vespa/qrs/ -mkdir -p $INSTALLPATH/share/vespa/ -mkdir -p $INSTALLPATH/share/vespa/schema/version/6.x/schema/ -mkdir -p $INSTALLPATH/tmp/vespa/ -mkdir -p $INSTALLPATH/var/db/jdisc/logcontrol/ -mkdir -p $INSTALLPATH/var/db/vespa/ -mkdir -p $INSTALLPATH/var/db/vespa/config_server/serverdb/applications/ -mkdir -p $INSTALLPATH/var/db/vespa/logcontrol/ -mkdir -p $INSTALLPATH/var/jdisc_container/ -mkdir -p $INSTALLPATH/var/jdisc_core/ -mkdir -p $INSTALLPATH/var/run/ -mkdir -p $INSTALLPATH/var/spool/vespa/ -mkdir -p $INSTALLPATH/var/spool/master/inbox/ -mkdir -p $INSTALLPATH/var/vespa/bundlecache/ -mkdir -p $INSTALLPATH/var/vespa/cache/config/ -mkdir -p $INSTALLPATH/var/vespa/cmdlines/ -mkdir -p $INSTALLPATH/var/zookeeper/version-2/ -mkdir -p $INSTALLPATH/sbin - -ln -sf $PREFIX/lib/jars/config-model-fat.jar $INSTALLPATH/conf/configserver-app/components/config-model-fat.jar -ln -sf $PREFIX/lib/jars/configserver-jar-with-dependencies.jar $INSTALLPATH/conf/configserver-app/components/configserver.jar -ln -sf $PREFIX/lib/jars/orchestrator-jar-with-dependencies.jar $INSTALLPATH/conf/configserver-app/components/orchestrator.jar -ln -sf $PREFIX/lib/jars/node-repository-jar-with-dependencies.jar $INSTALLPATH/conf/configserver-app/components/node-repository.jar -ln -sf $PREFIX/lib/jars/zkfacade-jar-with-dependencies.jar $INSTALLPATH/conf/configserver-app/components/zkfacade.jar -ln -snf $PREFIX/conf/configserver-app/components $INSTALLPATH/lib/jars/config-models -ln -sf vespa-storaged-bin $INSTALLPATH/sbin/vespa-distributord-bin - -# Setup default enviroment -mkdir -p $INSTALLPATH/conf/vespa -cat > $INSTALLPATH/conf/vespa/default-env.txt <