Commit Graph

46 Commits

Author SHA1 Message Date
David Roberts ba7fa6b69d Top level build.gradle should have build task
Original commit: elastic/x-pack-elasticsearch@bc5aa9e5ae
2017-01-24 14:48:03 +00:00
Colin Goodheart-Smithe db0f4c0977 Fixes projects refs in build (elastic/elasticsearch#771)
The build would fail certain task (e.g. `gradle tasks` and `gradle :prelert-legacy:test`) if run from the elasticsearch root directory because the project references in the build were not abolute project paths from the root, they were relative to the `prelert-legacy` project. This change fixes the references so they are all absolute project paths.

Original commit: elastic/x-pack-elasticsearch@e549533834
2017-01-23 14:09:22 +00:00
Colin Goodheart-Smithe 4c6989212a Gets build to use elasticsearch-extras (elastic/elasticsearch#758)
* Gets build to use elasticsearch-extras

Also adds ci script for building repo on CI servers

To use this change you need to:
1. Clone elasticsearch: `git@github.com:elastic/elasticsearch.git`
2. create a directory at the same level as elasticsearch called `elasticsearch-extra`
3. Clone this repository into the `elasticsearch-extra` directory
4. Run `gradle build` from the `elasticsearch-extra/prelert-legacy` directory or run `gradle :prelert-legacy:build` from the `elasticsearch directory

* Adds USE_SSH option to ci script

* iter

Original commit: elastic/x-pack-elasticsearch@ea127dfef0
2017-01-20 15:11:21 +00:00
Colin Goodheart-Smithe 3fa87c0994 Removes upload pack task from build (elastic/elasticsearch#757)
* removes upload pack task from build

This is preventing us from being an elasticsearch-extra project and we cannot have this task when we move to x-pack. Once we are in X-Pack the unified build will be uploading the final artifact so for now we will change the CI build to add a build step to upload the pack artifact.

* Removes OS specific stuff from the build

the CPP_LOCAL_DIST will now look for any `ml-cpp` artifacts for the same version in the specified directory.

* review corrections

Original commit: elastic/x-pack-elasticsearch@be15e55ddb
2017-01-19 16:14:08 +00:00
Colin Goodheart-Smithe 62cb7a17c5 Changes build to get c++ lib as a standard dependency (elastic/elasticsearch#756)
Original commit: elastic/x-pack-elasticsearch@d46990da49
2017-01-19 15:22:55 +00:00
Colin Goodheart-Smithe d0b36fd52a Change pack artifact to be more maven-like
Original commit: elastic/x-pack-elasticsearch@e8eed37553
2017-01-19 14:03:40 +00:00
David Roberts f24e8c6d54 Remove C++ from build files (elastic/elasticsearch#739)
NB: The actual C++ code will be deleted in a separate commit to
avoid swamping this commit.

If you want to have the Java build pick up locally built C++ then:

export CPP_LOCAL_DISTS=$CPP_SRC_HOME/build/distributions

Otherwise, C++ artifacts will be downloaded from S3.

Original commit: elastic/x-pack-elasticsearch@246672e81d
2017-01-17 14:45:00 +00:00
David Roberts bc03dba9a2 Add facility to cross compile for Mac OS X on Linux (elastic/elasticsearch#717)
Adding a build system that makes it possible for an Ubuntu 16.04 build
server configured according to the instructions in
https://github.com/elastic/prelert-legacy/wiki/Plugin-Development-Setup-for-Mac-OS-X-cross-compiled-on-Linux
to build a Mac OS X version of the product.

Original commit: elastic/x-pack-elasticsearch@c6f39c0395
2017-01-13 17:42:11 +00:00
David Roberts c4038b52ed Rename prelert to ml (elastic/elasticsearch#681)
* prelert to ml
* Prelert to Ml
* PRELERT to ML

Exceptions:

* prelert.com - because it generally appears in links to our website, and
  although these will eventually break it will be possible for people to see
  what was there using https://archive.org/web/
* PRELERT_AWS_ACCESS_KEY_ID and PRELERT_AWS_SECRET_ACCESS_KEY - because it
  creates a knock-on effect on infra that will be temporary anyway because once
  we're in x-pack we'll use x-pack keys
* prelert-artifacts - this is the name of the s3 bucket we're currently using
  and you cannot rename s3 buckets - as with the access keys it will become
  obsolete when we merge to x-pack so there's no point changing it now
* prelert-legacy - the name of our legacy Git repo has not changed

Original commit: elastic/x-pack-elasticsearch@720e83c7f2
2017-01-10 13:40:16 +00:00
David Roberts 1615be4ff3 Moved the C++ code under the cpp sub-directory (elastic/elasticsearch#584)
The $PRELERT_SRC_HOME environment variable is replaced with $CPP_SRC_HOME,
which points to the cpp sub-directory off the repository root

Original commit: elastic/x-pack-elasticsearch@02ef6d6be6
2016-12-20 11:03:00 +00:00
Colin Goodheart-Smithe 037392ddd4 remove debug lines from build
Original commit: elastic/x-pack-elasticsearch@7766e171b9
2016-12-08 13:35:03 +00:00
Colin Goodheart-Smithe 3eb3b7f38d change aws cred properties
Changing properties to `PRELERT_AWS_ACCESS_KEY_ID` and `PRELERT_AWS_SECRET_ACCESS_KEY` to avoid conflicts on the ci servers

Original commit: elastic/x-pack-elasticsearch@2b90e752f1
2016-12-08 13:27:03 +00:00
Colin Goodheart-Smithe 2f3e5af046 more debug lines
Original commit: elastic/x-pack-elasticsearch@f653ce3822
2016-12-08 13:05:29 +00:00
Colin Goodheart-Smithe 631ff9386a Changes AWS property names to be in line with the Elastic standard names (elastic/elasticsearch#499)
Properties are now `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`

Original commit: elastic/x-pack-elasticsearch@5947dc5ff1
2016-12-08 09:34:05 +00:00
Colin Goodheart-Smithe 3f35eac183 Adds ability to specify the aws credentials as environment variables
Original commit: elastic/x-pack-elasticsearch@c22428069e
2016-12-05 13:58:27 +00:00
Colin Goodheart-Smithe d530edc263 Centralises where the version is defined
Original commit: elastic/x-pack-elasticsearch@e822136d97
2016-12-02 15:17:49 +00:00
David Roberts 3173f7a727 Remove redundant imports
Original commit: elastic/x-pack-elasticsearch@01123ea9fd
2016-12-02 14:27:24 +00:00
Colin Goodheart-Smithe 41bd367071 cenrealise group across all projects
Original commit: elastic/x-pack-elasticsearch@8a62d12149
2016-12-02 13:12:57 +00:00
Colin Goodheart-Smithe ea1c8b5ddd centralise detection of operating system
Original commit: elastic/x-pack-elasticsearch@0ba41dde0d
2016-12-02 12:18:51 +00:00
Colin Goodheart-Smithe 8dc12d0f88 Gets ES plugin to download the cpp code if not built locally
Original commit: elastic/x-pack-elasticsearch@64cc4aeb38
2016-12-01 16:33:28 +00:00
Colin Goodheart-Smithe 19c1424984 fix build to not require AWS credentials
Original commit: elastic/x-pack-elasticsearch@74c7fb5c0f
2016-12-01 16:18:29 +00:00
Colin Goodheart-Smithe bfb72d0a96 Adds task to upload cpp distribution zip
Original commit: elastic/x-pack-elasticsearch@c4fee26b37
2016-12-01 14:19:00 +00:00
Colin Goodheart-Smithe e5e039973e Changes build to only grab cpp zip if it was built
Original commit: elastic/x-pack-elasticsearch@24fc48fe86
2016-12-01 12:16:47 +00:00
David Roberts b11e5dbf4a Gradle task bundlePack needs to depend on cpp:strip (elastic/elasticsearch#368)
Otherwise the ES plugin can be bundled before the C++ is built

Original commit: elastic/x-pack-elasticsearch@079a59efdf
2016-11-23 14:00:08 +00:00
Colin Goodheart-Smithe b295d764a6 Creates a cpp gradle module to control the cpp build (elastic/elasticsearch#361)
Also uploads the pack zip to the nas instead of the elasticsearch plugin.

The cpp build can be disabled with `-Pxpack.cpp.build=false`

Original commit: elastic/x-pack-elasticsearch@1efb1b2e7e
2016-11-23 11:22:04 +00:00
Colin Goodheart-Smithe 15c9e8baa4 Adds ability to build a pack zip in gradle (elastic/elasticsearch#356)
Original commit: elastic/x-pack-elasticsearch@87d6750fc5
2016-11-22 08:29:13 +00:00
Colin Goodheart-Smithe c8ef5c64de Adds kibana plugin to gradle build (elastic/elasticsearch#354)
This change moves the kibana app to a `kibana` directory at the root of the repository and adds gradle tasks to build the kibana app as part of `gradle check`. The kibana build can be muted by running `gradle check -Pxpack.kibana.build=false`

Original commit: elastic/x-pack-elasticsearch@f6ebb2d62b
2016-11-21 17:56:55 +00:00
David Roberts 85b5220c59 cppClean task should remove old cppdistribution contents
The `git clean` we used to do at the beginning of the build used to take
care of this, but due to long paths on Windows we can no longer use this

Original commit: elastic/x-pack-elasticsearch@3210c7507b
2016-11-18 13:44:41 +00:00
Martijn van Groningen a77f6df3f2 attempt to always download latest snapshot
Original commit: elastic/x-pack-elasticsearch@869760c9df
2016-11-18 09:34:18 +01:00
David Roberts 155ee948ef Strip the C++ binaries when built via gradle to reduce download size (elastic/elasticsearch#323)
By default this isn't done when building directly with make, so developers
should still have debugging symbols in binaries they build themselves

Original commit: elastic/x-pack-elasticsearch@64cd92431b
2016-11-17 19:34:39 +00:00
Colin Goodheart-Smithe 83f2997ee0 Add infrastructure to the build for documentation (elastic/elasticsearch#320)
Original commit: elastic/x-pack-elasticsearch@7efa8c3f98
2016-11-17 14:07:20 +00:00
David Roberts cd04814cfb Change the Jenkins build entry point from shell script to gradle (elastic/elasticsearch#317)
Other related changes:
1) The Windows build is now done on Windows Server 2012r2
2) The Windows build is now done using Visual Studio 2013 Express (closes elastic/elasticsearch#256)
3) set_env.sh is only used with the C++ build
4) It is no longer necessary to set PRELERT_SRC_HOME if building via gradle -
   this environment variable IS still required for make, but gradle sets
   PRELERT_SRC_HOME before calling make
5) No build tools are loaded from the Prelert NAS
6) The version number for C++ components is now picked up from the same
   gradle.properties as the version number for Java components (closes elastic/elasticsearch#37)
7) "make test" now propagates error returns even when PRELERT_KEEP_GOING is
   defined - this means gradle only needs to check the return code of make
8) The C++ processes now print out Elasticsearch BV as the copyright owner

Jenkins implications:
1) Jenkins installs gradle 2.13 as part of the build process
2) Jenkins now does the build by executing these gradle tasks: cppAll, pluginAll
3) Jenkins must define the JAVA_HOME environment variables
4) The Jenkins slave running on Windows now has a standard setup, i.e. using
   cmd for its shell instead of Git bash
5) 64 bit Git for Windows is used on Windows build slaves instead of 32 bit
   msysgit

Original commit: elastic/x-pack-elasticsearch@01c863bfd0
2016-11-17 13:12:26 +00:00
Colin Goodheart-Smithe c6dadacb29 Changes the build to track elasticsearch 5.1.0-SNAPSHOT (elastic/elasticsearch#248)
Original commit: elastic/x-pack-elasticsearch@af689298f7
2016-11-07 09:27:22 +00:00
David Roberts 3033674607 Fix some Jenkins build issues (elastic/elasticsearch#221)
1) The C++ 3rd party libraries need to be copied to cppdistribution
   before gradle assemble runs
2) Use gradle check instead of gradle test in the build
3) We don't need Maven or pbzip2 any more
4) Make new_version.sh script update the right files
5) Keep a copy of the built plugin after the build

Outstanding TODOs:

1) Versioning needs to be brought in line with Elasticsearch
2) We are building a plugin per platform rather than one containing
   all platforms - we need a step that runs when all platforms have
   completed to create a single plugin
3) Strip the C++ binaries so the uploads aren't so big

Original commit: elastic/x-pack-elasticsearch@0cf32e134f
2016-11-02 15:41:12 +00:00
Colin Goodheart-Smithe 68ecc10ea7 Adds ide build gradle config (elastic/elasticsearch#203)
Makes the ides work the same as the main ES project

Original commit: elastic/x-pack-elasticsearch@3ca9d78ea9
2016-10-31 13:05:32 +00:00
Martijn van Groningen 791f74ded9 5.0 upgrade
Original commit: elastic/x-pack-elasticsearch@9627dadb00
2016-10-26 17:35:10 +02:00
Martijn van Groningen 926c04c00d upgraded to 5.0.0-rc1
Original commit: elastic/x-pack-elasticsearch@687f9669db
2016-10-14 14:47:04 +02:00
Martijn van Groningen 2af02b04e1 really remove old log4j from old engine-node module.
(only the engine-api-java module and its submodules remain to use old log4j)

Original commit: elastic/x-pack-elasticsearch@18a761eb9a
2016-10-04 20:08:24 +02:00
Dimitrios Athanasiou aba1447b67 Upgrade engine-node to beta1 and clean up after merge
Original commit: elastic/x-pack-elasticsearch@745043a99a
2016-10-04 17:03:06 +01:00
Martijn van Groningen 9fa9dc3fa5 removed forked base test classes and let tests depend on provided base classes.
During tests we run now only with jar hell enabled, security manager remains to be disabled.

Original commit: elastic/x-pack-elasticsearch@06aebc5ec5
2016-10-04 17:03:04 +01:00
David Roberts 9414b83e25 Updating version number
Original commit: elastic/x-pack-elasticsearch@027e5a6126
2016-10-04 09:18:52 +01:00
David Roberts 2d7b536848 Updating version number
Original commit: elastic/x-pack-elasticsearch@6427ca0255
2016-09-20 15:07:14 +01:00
David Roberts f37a86c880 Explicitly state source code encoding is UTF-8 in Gradle build files
Original commit: elastic/x-pack-elasticsearch@2f59b2c3a9
2016-09-19 15:00:38 +01:00
David Roberts 1b667b2584 Further split out C++ Gradle targets to make life easier for people without a C++ build environment
Original commit: elastic/x-pack-elasticsearch@eeca100a3b
2016-09-19 14:36:40 +01:00
David Roberts c0b1ac948c More Gradle migration changes
Original commit: elastic/x-pack-elasticsearch@2cdd825224
2016-09-19 14:08:35 +01:00
David Kyle f367ecf1e2 Build Native C++ binaries and Java code in a single gradle project.
C++ is built by calling make

Original commit: elastic/x-pack-elasticsearch@bd52bfd316
2016-09-16 17:30:45 +01:00