WSO2 BPS 3.5.0 source code - wso2

I try to build wso2 bps 3.5 from source code by following document (https://docs.wso2.com/display/BPS350/Working+with+the+Source+Code), but there is no org.wso2.carbon.humantask_4.4.4.jar inside the downloading component. Also I cannot find the source code in svn (https://svn.wso2.org/repos/wso2/carbon/platform/branches/turing/components/business-processes/humantask/org.wso2.carbon.humantask/).
Can somebody help to figure out where is this code repository.

If you look at the release matrix, this is released with carbon 4.4.x where sources are in Git repos. So the sources should be available in this Git repo (checkout the correct branch version). Note that you don't have to build the entire product from sources, just do the changes to the relevant component and build the jar. Then apply it as a patch to the product.

Related

The correct order to rebuild the WSO2 repositories on my local computer

I want to rebuild the WSO2 EI from source code on Git repository. But I do not know how to start this job. I have already sent an email to dev#wso2.org to get advice for along time. But I have not received any information from them yet.
I also downloaded and rebuilt the carbon-commons repository tag that was used for the WSO2 AS 5.3.0 release successfully. But I do not know what is the tag of WSO2 EI from the carbon repository?
(following this reference link: https://docs.wso2.com/display/Carbon4411/Working+with+the+Source+Code)
Could you give me some advice to do this job quickly ?
You can build the EI pack by cloning product-ei repository from the Github and checkout to the relevant tag. All WSO2 related dependencies are hosted in WSO2 nexus repository. Therefore you don't need to build dependent repositories. You can build EI project without running test cases by simply running "mvn clean install -Dmaven.test.skip=true".
If you need to do a code change for dependent repository, then you can do the necessary changes in relevant dependent repository and build the repositories in following order.
For example, If you need to do a code change to the Synapse, first you need to build the Synapse. Then build Carbon-mediation project with updated Synapse version. Finally build EI with latest synapse and carbon-mediation version.

Siddhi PMML Extension - Installation error

I'm trying to install Siddhi PMML Extension from WSO2 DAS as described [here][1].
I downloaded archive p2-repo.zip, added repository WSO2 GPL Feature Repository. I have an error when I try to install the extension:
Cannot complete the install because one or more required items could not be found. Software being installed: WSO2 Carbon GPL - Siddhi PMML Extension Feature 2.0.4 (org.wso2.siddhi.gpl.extension.pmml.feature.group 2.0.4) Missing requirement: pmml-evaluator 1.1.16.wso2v1 (pmml-evaluator 1.1.16.wso2v1) requires 'package com.google.common.base [15.0.0,18.0.0]' but it could not be found Cannot satisfy dependency: From: WSO2 Carbon GPL - Siddhi PMML Extension Feature 2.0.4 (org.wso2.siddhi.gpl.extension.pmml.feature.group 2.0.4) To: pmml-evaluator [1.1.16.wso2v1]
At the same time, I have no problem during installation other extentions (Siddhi NLP, R,...). How can I fix this issue?
I also experienced the same problem. Try build the p2-repo from building the P2 repositories. It worked for me.
Download the repositories and build them using mvn clean install command in the following order.
orbit
siddhi
carbon-event-processing
Copy the generated P2 repository in carbon-event-processing/repository/target/p2-repo into a local directory in your machine.
Then add this folder as a repository to DAS.

build wso2 apim 1.10.0 from source

So far I installed deployment version of wso2 AM. Now I would like to build it from source and try running it instead of the binaries I downloaded from the site.
Based on WSO2 documentation, I understand the steps are:
1) Download the carbon kernel source:
git clone -b 4.4.x https://github.com/wso2/carbon-kernel.git
2) Download the APIM source:
git clone https://github.com/wso2/product-apim
3) Build APIM from source
cd <SOURCE-DIR>\product-apim
mvn clean install
Are these steps sufficient, or am I missing something?
Should I build carbon-kernel in addition to building apim-manager?
On previous stackoverflow question, I read that carbon-kernel is not really necessary, and instead i should download and build carbon-apimgmt. Is this correct?
After I build the sources, how do I "package" all the compiled binaries along with all other necessary artifacts, in order to form an equivalent package to the wso2am-1.10.0.zip which I download from the site? Or is there another way to install and run the built code?
Github projects related to API manger can be found in following locations
apimgt component repo:
https://github.com/wso2/carbon-apimgt
This repository contains org.wso2.carbon.apimgt component related source code.
product repo:
https://github.com/wso2/product-apim
This repository contains all the resources needed to build the product package and intergration tests for the product.
master branch of these repositories are used for current development. (if you open parent pom.xml file you would find SNAPSHOT versions). If you build the default branches you would build the current development version of the api manager. (at this time, 1.10.1-SNAPSHOT). To build already released product you need to build released tag.
Steps to Build API manager 1.10.0
clone product:
git clone https://github.com/wso2/product-apim
Checkout release tag v1.10.0:
git checkout v1.10.0
Build the product:
mvn clean install (or mvn clean install -Dmaven.test.skip=true to skip integration tests)
get the product from
product-apim\modules\distribution\product\target
You do not have to build the 'carbon-apimgt' repository because the component build using that is already released and can be found in the nexus repo.
If you want to build the component (say need to provide a fix for a bug) build the 'v5.0.3' tag from the 'carbon-apimgt' repo.
git clone https://github.com/wso2/product-apim
git checkout v5.0.3
I'm posting the steps I did:
git clone https://github.com/wso2/carbon-appmgt
git clone https://github.com/wso2/product-apim
cd <SRC>/carbon-appmgt
mvn clean install
cd <SRC>/product-apim
mvn clean install
The ZIP file was found in
<SRC>\product-apim\modules\distribution\product\target
It is similar to the ZIP file that you download from the site.

wso2 svn structure documentation

Is there any documentation available that describes the WSO2 svn structure?
It seems that the folder https://svn.wso2.org/repos/wso2/branches/ is deprecated.
Question 1: Should I only be working in the svn folder https://svn.wso2.org/repos/wso2/carbon/?
In the https://svn.wso2.org/repos/wso2/carbon/ folder, I'm managing to piece bits together, for example the difference between Carbon orbit, kernel and platform (see previous stackoverflow question).
In the https://svn.wso2.org/repos/wso2/carbon/platform/branches/ folder, there are 3 sub-folders:
4.0.0
4.0.2AF
4.1.0
Question 2: 4.0.0 and 4.1.0 seem to be for the Carbon Platform, but what is 4.0.2AF - Is this Application Factory?
Question 3: If I want to work on a specific version of Carbon say 4.0.3, it seems that I need to checkout the 4.0.0 branch. What else do I need to do so that mvn clean install will build 4.0.3 for me?
Question: Should I only be working in the svn folder https://svn.wso2.org/repos/wso2/carbon/?
WSO2 is currently doing active development in following svn directory.
https://svn.wso2.org/repos/wso2/carbon/
Question: 4.0.0 and 4.1.0 seem to be for the Carbon Platform, but what is 4.0.2AF - Is this Application Factory?
The branches in https://svn.wso2.org/repos/wso2/carbon/platform/branches/ are for the Carbon platform. The branch 4.0.2AF is for WSO2 App Factory (http://wso2.com/cloud/app-factory/)
Question: If I want to work on a specific version of Carbon say 4.0.3, it seems that I need to checkout the 4.0.0 branch. What else do I need to do so that mvn clean install will build 4.0.3 for me?
You can build Carbon 4.0.3 from following:
https://svn.wso2.org/repos/wso2/carbon/kernel/branches/4.0.0/patch-releases/4.0.3/
You will be able to build products using the branch. That's why branch SVN URL is given in the links.
Each branch has a patch release for minor platform releases. For example: https://svn.wso2.org/repos/wso2/carbon/platform/branches/4.0.0/patch-releases/
As mentioned in your answer, you can build from a tagged version also.
You can more details about product version and carbon version from the release matrix: http://wso2.com/products/carbon/release-matrix/
You can also subscribe to WSO2 mailing lists and get more information, if you have not subscribed already.
The answer to question 3 is build a checkout a tagged version (of course!!). Thanks to the answer here for pointing me in the right direction.
I was blindly following the wiki documentation which tells you to checkout a branch.

How to build WSO2 Identity Server

how to access to svn and build Identy server from sources?
The page http://docs.wso2.org/display/identity/Building+WSO2+Identity+Server+from+source is valid also for 3.2.3?
Installing Identity Server on Linux from Source Distribution [1] Guide.
When you extract the wso2is-3.2.3-src distribution execute mvn clean install from the root level OR if you need to build only 3.2.3 version go inside the /wso2is-3.2.0-src/patch-releases/ folder.
There you will find separate directories for 3.2.1, 3.2.2 and 3.2.3, To build 3.2.3 version, start building from 3.2.3 patch releases pom.xml (mvn clean install from /wso2is-3.2.0-src/patch-releases/3.2.3/ directory).
Please note, 3.2.0 branch needs to be built with maven2.
FYI: To build current trunk, use maven3.