Commit Graph

481 Commits

Author SHA1 Message Date
Clinton Gormley 05d512f417 Packaging: Add LICENSE, NOTICE, and sha1 files and tests for all core dependencies
Added a licenses/ directory to core which contains a sha1 file for each JAR
dependency, and one or more LICENSE files and one NOTICE file for each
project.

Also adds dev-tools/src/main/resources/license-check/check_license_and_sha.pl
which checks that the licenses/ dir is up to date during a mvn verify,
and which can be used to update the sha1 files when upgrading dependencies.

Closes #2794
Closes #10684
Closes #11705
2015-06-17 18:06:00 +02:00
David Pilato fd6112171d Merge pull request #11622 from dadoonet/maven/shade-plugin
[build] update maven-shade-plugin to 2.4

## Release Notes - Apache Maven Shade - Version 2.4

https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317921&version=12331393

### Bugs:

* [MSHADE-155] - dependency-reduced-pom should use shadedArtifactId
* [MSHADE-169] - Typos in warning message
* [MSHADE-172] - "java.lang.ArithmeticException: / by zero" in MinijarFilter
* [MSHADE-174] - Unable to shade Java 8 jarfiles with static interface methods using minimizeJar
* [MSHADE-183] - Getting "Error creating shaded jar: java.util.jar.Attributes cannot be
                 cast to java.lang.String" error when using ManifestResourceTransformer with Maven 3.2.5
* [MSHADE-185] - systemPath content is interpolated for system dependencies

### Improvements:

* [MSHADE-177] - MavenProject/MavenSession Injection as a paremeter instead as a component.
* [MSHADE-178] - Removing plexus-container-default dependency
* [MSHADE-179] - Fix RAT Report
* [MSHADE-180] - Upgrade plexus-utils to 3.0.18
* [MSHADE-188] - Upgrade maven-dependency-tree to 2.2
* [MSHADE-191] - Upgrade plexus-utils to 3.0.22
* [MSHADE-192] - Upgrade maven-invoker to 1.10
* [MSHADE-193] - Upgrade to fluido skin 1.4.0
2015-06-16 09:34:55 +02:00
David Pilato bd5c7d0ea2 [maven] clean pom.xml
In Maven parent project, in dependency management, we should only declare which versions of 3rd party jars we want to use but not force any scope.
It makes then more obvious in modules what is exactly the scope of any dependency.

For example, one could imagine importing `jimfs` as a `compile` dependency in another module/plugin with:

```xml
<dependency>
   <groupId>com.google.jimfs</groupId>
   <artifactId>jimfs</artifactId>
</dependency>
```

But it won't work as expected as the default maven `scope` should be `compile` but here it's `test` as defined in the parent project.

So, if you want to use this lib for tests, you should simply define:

```xml
<dependency>
   <groupId>com.google.jimfs</groupId>
   <artifactId>jimfs</artifactId>
   <scope>test</scope>
</dependency>
```

We also remove `maven-s3-wagon` from gce plugin as it's not used.
2015-06-15 17:08:15 +02:00
Adrien Grand ff279275b3 Upgrade to Lucene 5.2.1. 2015-06-15 10:51:05 +02:00
David Pilato a41f68f9fe [build] update maven-shade-plugin to 2.4
## Release Notes - Apache Maven Shade - Version 2.4

https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317921&version=12331393

### Bugs:

* [MSHADE-155] - dependency-reduced-pom should use shadedArtifactId
* [MSHADE-169] - Typos in warning message
* [MSHADE-172] - "java.lang.ArithmeticException: / by zero" in MinijarFilter
* [MSHADE-174] - Unable to shade Java 8 jarfiles with static interface methods using minimizeJar
* [MSHADE-183] - Getting "Error creating shaded jar: java.util.jar.Attributes cannot be
                 cast to java.lang.String" error when using ManifestResourceTransformer with Maven 3.2.5
* [MSHADE-185] - systemPath content is interpolated for system dependencies

### Improvements:

* [MSHADE-177] - MavenProject/MavenSession Injection as a paremeter instead as a component.
* [MSHADE-178] - Removing plexus-container-default dependency
* [MSHADE-179] - Fix RAT Report
* [MSHADE-180] - Upgrade plexus-utils to 3.0.18
* [MSHADE-188] - Upgrade maven-dependency-tree to 2.2
* [MSHADE-191] - Upgrade plexus-utils to 3.0.22
* [MSHADE-192] - Upgrade maven-invoker to 1.10
* [MSHADE-193] - Upgrade to fluido skin 1.4.0
2015-06-12 13:56:35 +02:00
Colin Goodheart-Smithe 240155b4ea Adds eclipse settings files to set correct encoding and complier preferences
This is done in the maven-eclipse-plugin so now all eclipse files are generated by mV eclipse:eclipse and can safely be ignored
2015-06-08 14:54:44 +01:00
Robert Muir 1f3c4604a5 use released lucene 5.2 jar 2015-06-08 06:51:46 -04:00
Simon Willnauer 4c981ff4bf [BUILD] Don't shade core artifacts
This commit adds an additioal jar that is shaded and keeps all the
artifacts that are used by default on the server-side unshaded. Users
that need a shaded jar can now use the `shaded` classifyer to pull
the shaded minimized jar in instead. Including the shaded jar in a
downstream project looks like this:

```XML
<dependency>
  <groupId>org.elasticsearch</groupId>
  <artifactId>elasticsearch</artifactId>
  <classifier>shaded</classifier>
</dependency>
```
2015-06-05 21:52:09 +02:00
David Pilato 02c9c8998e [maven] update maven-assembly-plugin to 2.5.5
```xml
<plugin>
 <groupId>org.apache.maven.plugins</groupId>
 <artifactId>maven-assembly-plugin</artifactId>
 <version>2.5.5</version>
</plugin>
```

## Release Notes - Maven Assembly Plugin - Version 2.5.5

* Bug
   - [MASSEMBLY-767] - Schema missing from the web site
   - [MASSEMBLY-768] - JarInputStream unable to find  manifest
created by version 2.5.4
   - [MASSEMBLY-769] - ZIP fileMode permissions not properly set with
dependencySet and unpackOptions
2015-06-05 19:17:21 +02:00
Robert Muir 49eae2bb8b Seriously make forbidden apis not picky until builds are stable 2015-06-05 08:47:07 -04:00
Adrien Grand 4efa134745 Build: Make the Eclipse build use cross-project dependencies. 2015-06-05 14:05:59 +02:00
Robert Muir 1ea9a7f028 Make forbidden apis lenient (temporary!) until builds are stable 2015-06-05 07:44:24 -04:00
Simon Willnauer 7662f4711f [BUILD] Run unshaded by default 2015-06-05 13:13:44 +02:00
Simon Willnauer 29d06605c0 add core module 2015-06-05 13:12:05 +02:00
Simon Willnauer 05db5dc2c8 create parent pom project from its original location 2015-06-05 13:12:05 +02:00
Tanguy Leroux 340b7ef6ef Add common SystemD file for RPM/DEB package 2015-05-27 11:51:58 +02:00
David Pilato 60519911b4 [maven] fix paths for final artifact
We need to define an absolute path (based on `${project.basedir}`) instead of using related paths.
2015-05-26 11:40:57 +02:00
Robert Muir c08481f523 allow third party license analysis to run (com.mycila vs org.codehaus.mojo mess) 2015-05-23 08:40:40 -04:00
Robert Muir 9e7595655b Ensure shaded jar has manifest too 2015-05-23 08:37:50 -04:00
Robert Muir b462fd712a factor out static analysis 2015-05-23 01:33:37 -04:00
Robert Muir 5b1ecbf07f add snapshot repo (so we know where to get elasticsearch-parent from if needed) 2015-05-23 00:27:28 -04:00
Robert Muir 20da601e92 factor out code coverage 2015-05-23 00:25:50 -04:00
Robert Muir 38496c8265 remove duplicate test logging configuration 2015-05-22 23:55:27 -04:00
Robert Muir 5330e3423f remove build duplication 2015-05-22 23:23:59 -04:00
Ryan Ernst 3ff839d35f Upgrade to lucene-5.2.0-snapshot-1681214 2015-05-22 13:39:58 -07:00
Shay Banon 2eaaef571c Merge pull request #11304 from kimchy/upgrade_netty_3_10_3
Upgrade to Netty 3.10.3
2015-05-22 18:42:16 +02:00
Shay Banon 2f00a27042 Upgrade to Netty 3.10.3 2015-05-22 17:37:44 +02:00
Adrien Grand 2bfac41c8e Upgrade to lucene-5.2.0-snapshot-1681024 2015-05-22 11:36:40 +02:00
Robert Muir 8abb8e4861 Remove useless outdated forbidden-api version in `-Pdev` config. 2015-05-21 02:11:11 -04:00
Adrien Grand 437910e882 Upgrade to lucene-5.2.0-snapshot-1680200. 2015-05-19 10:28:35 +02:00
Robert Muir fc73540aac include rest tests in test-framework.jar
Closes #11192 which I accidentally already closed.

Squashed commit of the following:

commit f23faccddc2a77a880841da4c89c494edaa2aa46
Author: Robert Muir <rmuir@apache.org>
Date:   Fri May 15 16:04:55 2015 -0400

    Simplify this FileUtils even more: its either from the filesystem, or the classpath,
    not both. Its already trying 4 different combinations of crazy paths for either of these anyway.

commit c7016c8a2b5a6043e2ded4b48b160821ba196974
Author: Robert Muir <rmuir@apache.org>
Date:   Fri May 15 14:21:37 2015 -0400

    include rest tests in test-framework jar
2015-05-15 16:16:24 -04:00
Adrien Grand 3e215e720a Merge pull request #11144 from jpountz/fix/remove_hppc_esoteric_dep
Internal: remove dependency on hppc:esoteric.
2015-05-15 16:25:51 +02:00
Robert Muir 30cdd4c03b Use our provided JNA library, versus one installed on the system
which might be older and not work.
2015-05-14 00:09:44 -04:00
Robert Muir 3dd706f1e6 Add these two props for consistency, so we aren't confused
when we deduplicate with elasticsearch-parent
2015-05-13 14:56:29 -04:00
Adrien Grand 5c9c4776cd Internal: remove dependency on hppc:esoteric.
The esoteric classifier contains in particular maps that take bytes or doubles
as keys. In the byte case, we can just use integer, and in the double case we
can use their long bits instead.
2015-05-13 14:13:10 +02:00
Dawid Weiss 491b00c4ec Updating to HPPC-0.7.1
Close #11035
2015-05-13 13:53:14 +02:00
Robert Muir 262555079c Merge pull request #11106 from rmuir/symlink
Improve path mgmt on init, better error messages, symlink support
2015-05-12 14:21:19 -04:00
Adrien Grand 290fefcdf8 Upgrade to lucene-5.2.0-snapshot-1678978. 2015-05-12 18:49:51 +02:00
Robert Muir 019a9410a3 SecurityBootstrap -> BootstrapForTesting, and make less things public 2015-05-12 00:34:02 -04:00
David Pilato 234716a1ef Remove Codehaus repository
Codehaus announced they are shutting down their services: https://www.codehaus.org/

We should remove their repository from our pom as it could cause some errors an useless HTTP calls.

Related to #10939
2015-05-06 17:51:17 +02:00
Robert Muir 2ed2c4f884 fix permissions bugs 2015-05-04 16:27:24 -04:00
Robert Muir fe046df125 hacky state 2015-05-04 15:38:46 -04:00
Robert Muir b8efa8ea21 Remove JNI permissions, improve JNI testing. 2015-05-04 12:30:03 -04:00
Shay Banon 16c7689355 Exclude jackson-databind dependency
the jackson yaml data format pulls in the databind dependency, its important that we exclude it so we won't use any of its classes by mistake
2015-05-01 19:03:14 +02:00
Ryan Ernst a0451a37cc Upgrade lucene snapshot to r1677039 2015-04-30 13:43:19 -07:00
Robert Muir d7b7614f6f Use http for lucene snapshot downloads 2015-04-28 08:38:57 -04:00
Colin Goodheart-Smithe b3723cdb28 Fix to let eclipse ignore the antigun plugin in it's maven integration
This plugin should be ignored as it will make the internal eclipse build fail when there are NOCOMMIT comments in files, which are expected during feature development. This change only affects eclipse users and only when they are using the m2e eclipse integration
2015-04-27 12:50:11 +01:00
Alexander Reelsen f64739788b Build: Update package repositories when creating a release
In order to automatically sign and and upload our debian and RPM
packages, this commit incorporates signing into the build process
and adds the necessary steps to the release process. In order to do this
the pom.xml has been adapted and the RPM and jdeb maven plugins have been
updated, so the packages are signed on build. However the repositories
need to signed as well.

Syncing the repos requires downloading the current repo, adding
the new packages and syncing it back.

The following environment variables are now required as part of the build

* GPG_KEY_ID - the key ID of the key used for signing
* GPG_PASSPHRASE - your GPG passphrase
* S3_BUCKET_SYNC_TO: S3 bucket to sync new repo into

The following environment variables are optional

* S3_BUCKET_SYNC_FROM: S3 bucket to get existing packages from
* GPG_KEYRING - home of gnupg, defaults to ~/.gnupg

The following command line tools are needed

* createrepo (creates RPM repositories)
* expect (used by the maven rpm plugin)
* apt-ftparchive (creates DEB repositories)
* gpg (signs packages and repo files)
* s3cmd (syncing between the different S3 buckets)

The current approach would also work for users who want to run their
own repositories, all they need to change are a couple of environment
variables.

Minor implementation detail: Right now the branch name is used as version
for the repositories (like 1.4/1.5/1.6) - if we ever change our branch naming
scheme, the script needs to be fixed.
2015-04-26 19:05:47 +02:00
Tanguy Leroux f7d4baacfb Remove working directory
This commit removes the working directory and its associated environment variable "WORK_DIR"
2015-04-25 13:08:36 +02:00
Ryan Ernst f27f5aaa22 Upgrade to lucene-5.2-snapshot-1675927 2015-04-24 12:38:32 -07:00