These nodes are based on the KNIME node skeleton with sample code as described here.
This project uses Eclipse Tycho to perform build steps.
Requirements:
- KNIME, https://www.knime.org, version 3.5 or higher
Steps to get the WikiPathwaysNode KNIME node inside KNIME:
- Goto Help > Install new software ... menu
- Press add button
- Fill text fields with url of update site which contains this node.
- Select --all sites-- in
work with
pulldown - Select the node
- Install software
- Restart KNIME
- Create a new KNIME workflow.
- Find node in Node navigator panel.
- Drag node to workflow canvas.
To build the node extension and verify the tests run with the following command:
mvn verify
Make sure all code is commited as the snapshot version is determined by git commit timestamp.
An Eclipse update site will be made in p2/target/repository
directory.
The update site can be used to perform a local installation.
Configuration files to run Continuous Integration builds on Linux (Travis-CI), OS X (Travis-CI) and Windows (AppVeyor) are present.
See ./.travis.yml
file how to trigger a Travis-CI build for every push or pull request.
Also see ./.travis.yml
file how to perform a SonarCloud analysis and code coverage.
See ./appveyor.yml
file how to run on https://www.appveyor.com .
Steps to get development environment setup:
-
Download KNIME SDK from https://www.knime.org/downloads/overview
-
Install/extract KNIME SDK
-
Start KNIME SDK
-
Install m2e (Maven integration for Eclipse) + Test workflows in JUnit
- Goto Window -> Preferences -> Install/Update -> Available Software Sites
- Make sure the following Software Sites (or a version of them) are present otherwise add them:
- http://update.knime.org/analytics-platform/3.5
- http://download.eclipse.org/eclipse/updates/4.6
- http://download.eclipse.org/releases/neon
- https://3d-e-chem.github.io/updates (only required for 3D-e-Chem node)
- Goto Help -> Check for updates
- Install any updates found & restart
- Goto Help > Install new software ...
- Select --All Available sites-- in work with pulldown
- Wait for list to be filled,
Pending...
should disappear - Select the following items:
- m2e - Maven integration for Eclipse (includes Incubating components)
- Test KNIME workflows from a Junit test
- Splash & node category for 3D-e-Chem KNIME nodes (only required for 3D-e-Chem node)
- Install software & restart
-
Import this repo as an Existing Maven project
During import the Tycho Eclipse providers must be installed, Eclipse will ask for your permission.
Tests for the node are in tests/src
directory.
Tests can be executed with mvn verify
, they will be run in a separate KNIME environment.
Test results will be written to test/target/surefire-reports
directory.
Code coverage reports (html+xml) can be found in the tests/target/jacoco/report/
directory.
The tests can be run against a different KNIME version using mvn verify -Dknime.version=3.5
where 3.5
is the major.minor version of KNIME.
Unit tests written in Junit4 format can be put in tests/src/java
.
See https://github.com/3D-e-Chem/knime-testflow#3-add-test-workflow
Running mvn commands can take a long time as Tycho fetches indices of all p2 update sites.
This can be skipped by running maven offline using mvn -o
.
- Update versions in pom files with
mvn org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=<version>-SNAPSHOT
command. - Create package with
mvn package
, will create update site inp2/target/repository
- Run tests with
mvn verify
- Optionally, test node by installing it in KNIME from a local update site
- Append new release to an update site
- Make clone of an update site repo
- Append release to the update site with
mvn install -Dtarget.update.site=<path to update site>
- Commit and push changes in this repo and update site repo.
- Create a Github release
- Update Zenodo entry
- Correct authors
- Correct license
- Make nodes available to 3D-e-Chem KNIME feature by following steps at https://github.com/3D-e-Chem/knime-node-collection#new-release