mirror of https://github.com/apache/nifi.git
NIFI-857 merged develop into master in preparation for the removal of develop branch
This commit is contained in:
commit
cd74519133
149
README.md
149
README.md
|
@ -18,9 +18,38 @@ Apache NiFi is an easy to use, powerful, and reliable system to process and dist
|
|||
|
||||
## Table of Contents
|
||||
|
||||
- [Features](#features)
|
||||
- [Requirements](#requirements)
|
||||
- [Getting Started](#getting-started)
|
||||
- [Getting Help](#getting-help)
|
||||
- [Documentation](#documentation)
|
||||
- [License](#license)
|
||||
- [Disclaimer](#disclaimer)
|
||||
- [Export Control] (#export-control)
|
||||
|
||||
## Features
|
||||
|
||||
Apache NiFi was made for dataflow. It supports highly configurable directed graphs of data routing, transformation, and system mediation logic. Some of its key features include:
|
||||
|
||||
- Web-based user interface
|
||||
- Seamless experience for design, control, and monitoring
|
||||
- Highly configurable
|
||||
- Loss tolerant vs guaranteed delivery
|
||||
- Low latency vs high throughput
|
||||
- Dynamic prioritization
|
||||
- Flows can be modified at runtime
|
||||
- Back pressure
|
||||
- Data Provenance
|
||||
- Track dataflow from beginning to end
|
||||
- Designed for extension
|
||||
- Build your own processors and more
|
||||
- Enables rapid development and effective testing
|
||||
- Secure
|
||||
- SSL, SSH, HTTPS, encrypted content, etc...
|
||||
- Pluggable role-based authentication/authorization
|
||||
|
||||
## Requirements
|
||||
* JDK 1.7 or higher
|
||||
* Apache Maven 3.0.5 or higher
|
||||
|
||||
## Getting Started
|
||||
|
||||
|
@ -29,43 +58,69 @@ Apache NiFi is an easy to use, powerful, and reliable system to process and dist
|
|||
tracking, and provide some warnings about common problems with development environments.
|
||||
- For a more comprehensive guide to development and information about contributing to the project
|
||||
read through the [NiFi Developer's Guide](http://nifi.incubator.apache.org/developer-guide.html).
|
||||
- Optional: Build supporting modules. This should only be needed if the current 'nifi' module is in
|
||||
the process of updating to a new version of either the 'nifi-parent' or 'nifi-nar-maven-plugin'
|
||||
artifacts.
|
||||
|
||||
If in doubt, just skip to building the main nifi project. If the build fails, come back here and
|
||||
figure out which optional step you are missing; each entry below will give an example of the
|
||||
errors you'll receive if that step needs to be followed. The version numbers may change but the
|
||||
error text should still look very familiar.
|
||||
- Install the nifi-parent pom. Change directory to 'nifi-parent' and follow the directions found
|
||||
there in [README.md](nifi-parent/README.md).
|
||||
To build:
|
||||
- Execute `mvn clean install` or for parallel build execute `mvn -T 2.0C clean install`. On a
|
||||
modest development laptop that is a couple of years old, the latter build takes a bit under ten
|
||||
minutes. After a large amount of output you should eventually see a success message.
|
||||
|
||||
If you don't build the nifi-parent pom and the main nifi code relies on an unreleased version
|
||||
you'll see an erorr like the following:
|
||||
laptop:nifi fhampton$ mvn -T 2.0C clean install
|
||||
[INFO] Scanning for projects...
|
||||
[INFO] Inspecting build with total of 115 modules...
|
||||
...tens of thousands of lines elided...
|
||||
[INFO] ------------------------------------------------------------------------
|
||||
[INFO] BUILD SUCCESS
|
||||
[INFO] ------------------------------------------------------------------------
|
||||
[INFO] Total time: 09:24 min (Wall Clock)
|
||||
[INFO] Finished at: 2015-04-30T00:30:36-05:00
|
||||
[INFO] Final Memory: 173M/1359M
|
||||
[INFO] ------------------------------------------------------------------------
|
||||
|
||||
[ERROR] Non-resolvable parent POM: Could not find artifact
|
||||
org.apache.nifi:nifi-parent:pom:1.0.0-incubating-SNAPSHOT in example.snapshots.repo
|
||||
(https://repository.example.com/content/repositories/snapshots) and
|
||||
'parent.relativePath' points at no local POM @ line 18, column 13 -> [Help 2]
|
||||
- Build the nifi-nar-maven-plugin. Change directory to 'nifi-nar-maven-plugin' and
|
||||
follow the directions found there in [README.md](nifi-nar-maven-plugin/README.md).
|
||||
To deploy:
|
||||
- Change directory to 'nifi-assembly'. In the target directory, there should be a build of nifi.
|
||||
|
||||
If you don't build the nifi-nar-maven-plugin and the main nifi code relies on an unreleased
|
||||
version you'll see an error like the following:
|
||||
laptop:nifi fhampton$ cd nifi-assembly
|
||||
laptop:nifi-assembly fhampton$ ls -lhd target/nifi*
|
||||
drwxr-xr-x 3 fhampton staff 102B Apr 30 00:29 target/nifi-0.1.0-SNAPSHOT-bin
|
||||
-rw-r--r-- 1 fhampton staff 144M Apr 30 00:30 target/nifi-0.1.0-SNAPSHOT-bin.tar.gz
|
||||
-rw-r--r-- 1 fhampton staff 144M Apr 30 00:30 target/nifi-0.1.0-SNAPSHOT-bin.zip
|
||||
|
||||
[ERROR] Unresolveable build extension: Plugin
|
||||
org.apache.nifi:nifi-nar-maven-plugin:1.0.1-incubating-SNAPSHOT or one of its
|
||||
dependencies could not be resolved: Could not find artifact
|
||||
org.apache.nifi:nifi-nar-maven-plugin:jar:1.0.1-incubating-SNAPSHOT -> [Help 2]
|
||||
- Build nifi. Change directory to 'nifi' and follow the directions found there in
|
||||
[README.md](nifi/README.md).
|
||||
- Run NiFi. The directions found in the [README.md](nifi/README.md) file within the 'nifi' module
|
||||
will also include how to run an instance of NiFi. For help on how to build your first data flow,
|
||||
see the [NiFi User Guide](http://nifi.incubator.apache.org/docs/nifi-docs/user-guide.html).
|
||||
- For testing ongoing development you could use the already unpacked build present in the directory
|
||||
named "nifi-*version*-bin", where *version* is the current project version. To deploy in another
|
||||
location make use of either the tarball or zipfile and unpack them wherever you like. The
|
||||
distribution will be within a common parent directory named for the version.
|
||||
|
||||
laptop:nifi-assembly fhampton$ mkdir ~/example-nifi-deploy
|
||||
laptop:nifi-assembly fhampton$ tar xzf target/nifi-*-bin.tar.gz -C ~/example-nifi-deploy
|
||||
laptop:nifi-assembly fhampton$ ls -lh ~/example-nifi-deploy/
|
||||
total 0
|
||||
drwxr-xr-x 10 fhampton staff 340B Apr 30 01:06 nifi-0.1.0-SNAPSHOT
|
||||
|
||||
To run NiFi:
|
||||
- Change directory to the location where you installed NiFi and run it.
|
||||
|
||||
laptop:~ fhampton$ cd ~/example-nifi-deploy/nifi-*
|
||||
laptop:nifi-0.1.0-SNAPSHOT fhampton$ ./bin/nifi.sh start
|
||||
|
||||
- Direct your browser to http://localhost:8080/nifi/ and you should see a screen like this screenshot:
|
||||
![image of a NiFi dataflow canvas](nifi-docs/src/main/asciidoc/images/nifi_first_launch_screenshot.png?raw=true)
|
||||
|
||||
- For help building your first data flow see the [NiFi User Guide](http://nifi.apache.org/docs/nifi-docs/user-guide.html)
|
||||
|
||||
- If you are testing ongoing development, you will likely want to stop your instance.
|
||||
|
||||
laptop:~ fhampton$ cd ~/example-nifi-deploy/nifi-*
|
||||
laptop:nifi-0.1.0-SNAPSHOT fhampton$ ./bin/nifi.sh stop
|
||||
|
||||
## Getting Help
|
||||
If you have questions, you can reach out to our mailing list: dev@nifi.apache.org
|
||||
([archive](http://mail-archives.apache.org/mod_mbox/nifi-dev)).
|
||||
We're also often available in IRC: #nifi on
|
||||
[irc.freenode.net](http://webchat.freenode.net/?channels=#nifi).
|
||||
|
||||
## Documentation
|
||||
|
||||
See http://nifi.incubator.apache.org/ for the latest documentation.
|
||||
See http://nifi.apache.org/ for the latest documentation.
|
||||
|
||||
## License
|
||||
|
||||
|
@ -84,16 +139,32 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
## Disclaimer
|
||||
## Export Control
|
||||
|
||||
Apache NiFi is an effort undergoing incubation at the Apache Software
|
||||
Foundation (ASF), sponsored by the Apache Incubator PMC.
|
||||
This distribution includes cryptographic software. The country in which you
|
||||
currently reside may have restrictions on the import, possession, use, and/or
|
||||
re-export to another country, of encryption software. BEFORE using any
|
||||
encryption software, please check your country's laws, regulations and
|
||||
policies concerning the import, possession, or use, and re-export of encryption
|
||||
software, to see if this is permitted. See <http://www.wassenaar.org/> for more
|
||||
information.
|
||||
|
||||
Incubation is required of all newly accepted projects until a further review
|
||||
indicates that the infrastructure, communications, and decision making process
|
||||
have stabilized in a manner consistent with other successful ASF projects.
|
||||
The U.S. Government Department of Commerce, Bureau of Industry and Security
|
||||
(BIS), has classified this software as Export Commodity Control Number (ECCN)
|
||||
5D002.C.1, which includes information security software using or performing
|
||||
cryptographic functions with asymmetric algorithms. The form and manner of this
|
||||
Apache Software Foundation distribution makes it eligible for export under the
|
||||
License Exception ENC Technology Software Unrestricted (TSU) exception (see the
|
||||
BIS Export Administration Regulations, Section 740.13) for both object code and
|
||||
source code.
|
||||
|
||||
While incubation status is not necessarily a reflection of the completeness
|
||||
or stability of the code, it does indicate that the project has yet to be
|
||||
fully endorsed by the ASF.
|
||||
The following provides more details on the included cryptographic software:
|
||||
|
||||
Apache NiFi uses BouncyCastle, Jasypt, JCraft Inc., and the built-in
|
||||
java cryptography libraries for SSL, SSH, and the protection
|
||||
of sensitive configuration parameters. See
|
||||
http://bouncycastle.org/about.html
|
||||
http://www.jasypt.org/faq.html
|
||||
http://jcraft.com/c-info.html
|
||||
http://www.oracle.com/us/products/export/export-regulations-345813.html
|
||||
for more details on each of these libraries cryptography features.
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<parent>
|
||||
<groupId>org.apache.nifi</groupId>
|
||||
<artifactId>nifi</artifactId>
|
||||
<version>0.2.2-SNAPSHOT</version>
|
||||
<version>0.3.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>nifi-api</artifactId>
|
||||
<packaging>jar</packaging>
|
|
@ -25,7 +25,7 @@ public class DownloadAuthorization {
|
|||
|
||||
Approved,
|
||||
Denied;
|
||||
};
|
||||
}
|
||||
|
||||
private static final DownloadAuthorization APPROVED = new DownloadAuthorization(Result.Approved, null);
|
||||
|
|
@ -16,12 +16,14 @@
|
|||
*/
|
||||
package org.apache.nifi.events;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import org.apache.nifi.reporting.Severity;
|
||||
|
||||
/**
|
||||
* Implementations MUST be thread-safe
|
||||
*/
|
||||
public interface EventReporter {
|
||||
public interface EventReporter extends Serializable {
|
||||
|
||||
void reportEvent(Severity severity, String category, String message);
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue