Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
Hi Shamika, On Mon, Jan 6, 2014 at 4:43 PM, Shamika Ariyawansa sham...@wso2.com wrote: Hi All, New feature that is going to be introduced to AppFactory is creating a new application by uploading exiting binary file of an application. e.g WAR *User Scenario* 1. User logs on to the system, goes to the application creation page. 2. In there user provides basic information related to the application, such as name, key, description then he/she would be able to create the application by choosing one of the following options, a. Create the application from the scratch by selecting the repository type and application type which maps with existing functionality. *OR* b. Create the application by uploading the binary file and selecting the binary file type. By doing so the application will be created as non build-able application. Can we improve this so that a user can create an application pointing to a existing source code so that AF can clone that instead of the default template? Thanks, Janaka 3. In Repos and Builds page user will be able to see the uploaded application and he/she will be able to do following operations from there, a. Delete the existing application. b. Upload new version of the same application. - Provides a way to upload new binary file. c. Test the application by deploying to Dev cloud. Note that for applications created like this, source repository paths, build options and not shown to the users. 4. From Life Cycle Management page user will be able to Promote and Demote the application through different life cycles. *Solution* So far in AppFactory we maintain two logical types of application flows. Buildable and non-Buildable. Buildabale applications are mainly handled and deployed by the buildserver (Jenkins) whereas non-Buildable are maintained and deployed by the AppFactory itself. uploading existing application functionality will be implemented considering Non-Buildable application flow as follows. [image: Inline image 2] Further App Creation, Build and Repos and other UIs will be changed accordingly. Regards, -- Shamika Ariyawansa Senior Software Engineer WSO2, Inc.; http://wso2.com LK - +94 7639629 Ext 5999 US - +1 408 754 7388 Ext 51732 Mob:+ 94 772929486 *twitter: **https://twitter.com/Amila_Shamika*https://twitter.com/Amila_Shamika * linked-in: *http://www.linkedin.com/pub/dir/Shamika/Ariyawansa *Lean . Enterprise . Middleware* ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
As I feel creating an application pointing to an existing code base is different than allowing to upload an artifact and create an application, since this will not include any source code management. So we should consider those as two different use cases. IMO we can relate the use case that Janaka has mentioned to our main flow of application creation where we can provide the option of - creating an application pointing to an existing source code ( so AF can clone that and create application) - creating an application with default template On Mon, Jan 6, 2014 at 5:45 PM, Harsha Thirimanna hars...@wso2.com wrote: Hi Janaka, +1 for that. There will some work to do this. Because 1. we should process the pom file of that external repository and change artifactId, groupId to our one. 2. we have to have credentials to access external repository. thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http: http://lk.linkedin.com/in/afkhamazeez**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122* *Lean . Enterprise . Middleware* On Mon, Jan 6, 2014 at 5:28 PM, Janaka Ranabahu jan...@wso2.com wrote: Hi Shamika, On Mon, Jan 6, 2014 at 4:43 PM, Shamika Ariyawansa sham...@wso2.comwrote: Hi All, New feature that is going to be introduced to AppFactory is creating a new application by uploading exiting binary file of an application. e.g WAR *User Scenario* 1. User logs on to the system, goes to the application creation page. 2. In there user provides basic information related to the application, such as name, key, description then he/she would be able to create the application by choosing one of the following options, a. Create the application from the scratch by selecting the repository type and application type which maps with existing functionality. *OR* b. Create the application by uploading the binary file and selecting the binary file type. By doing so the application will be created as non build-able application. Can we improve this so that a user can create an application pointing to a existing source code so that AF can clone that instead of the default template? Thanks, Janaka 3. In Repos and Builds page user will be able to see the uploaded application and he/she will be able to do following operations from there, a. Delete the existing application. b. Upload new version of the same application. - Provides a way to upload new binary file. c. Test the application by deploying to Dev cloud. Note that for applications created like this, source repository paths, build options and not shown to the users. 4. From Life Cycle Management page user will be able to Promote and Demote the application through different life cycles. *Solution* So far in AppFactory we maintain two logical types of application flows. Buildable and non-Buildable. Buildabale applications are mainly handled and deployed by the buildserver (Jenkins) whereas non-Buildable are maintained and deployed by the AppFactory itself. uploading existing application functionality will be implemented considering Non-Buildable application flow as follows. [image: Inline image 2] Further App Creation, Build and Repos and other UIs will be changed accordingly. Regards, -- Shamika Ariyawansa Senior Software Engineer WSO2, Inc.; http://wso2.com LK - +94 7639629 Ext 5999 US - +1 408 754 7388 Ext 51732 Mob:+ 94 772929486 *twitter: **https://twitter.com/Amila_Shamika*https://twitter.com/Amila_Shamika * linked-in: *http://www.linkedin.com/pub/dir/Shamika/Ariyawansa *Lean . Enterprise . Middleware* ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
Hi all, On Mon, Jan 6, 2014 at 6:48 PM, Ashansa Perera asha...@wso2.com wrote: As I feel creating an application pointing to an existing code base is different than allowing to upload an artifact and create an application, since this will not include any source code management. So we should consider those as two different use cases. IMO we can relate the use case that Janaka has mentioned to our main flow of application creation where we can provide the option of - creating an application pointing to an existing source code ( so AF can clone that and create application) - creating an application with default template +1, this feature is about uploading a war file and no source code is involved. thank you. On Mon, Jan 6, 2014 at 5:45 PM, Harsha Thirimanna hars...@wso2.comwrote: Hi Janaka, +1 for that. There will some work to do this. Because 1. we should process the pom file of that external repository and change artifactId, groupId to our one. 2. we have to have credentials to access external repository. thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http: http://lk.linkedin.com/in/afkhamazeez**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122* *Lean . Enterprise . Middleware* On Mon, Jan 6, 2014 at 5:28 PM, Janaka Ranabahu jan...@wso2.com wrote: Hi Shamika, On Mon, Jan 6, 2014 at 4:43 PM, Shamika Ariyawansa sham...@wso2.comwrote: Hi All, New feature that is going to be introduced to AppFactory is creating a new application by uploading exiting binary file of an application. e.g WAR *User Scenario* 1. User logs on to the system, goes to the application creation page. 2. In there user provides basic information related to the application, such as name, key, description then he/she would be able to create the application by choosing one of the following options, a. Create the application from the scratch by selecting the repository type and application type which maps with existing functionality. *OR* b. Create the application by uploading the binary file and selecting the binary file type. By doing so the application will be created as non build-able application. Can we improve this so that a user can create an application pointing to a existing source code so that AF can clone that instead of the default template? Thanks, Janaka 3. In Repos and Builds page user will be able to see the uploaded application and he/she will be able to do following operations from there, a. Delete the existing application. b. Upload new version of the same application. - Provides a way to upload new binary file. c. Test the application by deploying to Dev cloud. Note that for applications created like this, source repository paths, build options and not shown to the users. 4. From Life Cycle Management page user will be able to Promote and Demote the application through different life cycles. *Solution* So far in AppFactory we maintain two logical types of application flows. Buildable and non-Buildable. Buildabale applications are mainly handled and deployed by the buildserver (Jenkins) whereas non-Buildable are maintained and deployed by the AppFactory itself. uploading existing application functionality will be implemented considering Non-Buildable application flow as follows. [image: Inline image 2] Further App Creation, Build and Repos and other UIs will be changed accordingly. Regards, -- Shamika Ariyawansa Senior Software Engineer WSO2, Inc.; http://wso2.com LK - +94 7639629 Ext 5999 US - +1 408 754 7388 Ext 51732 Mob:+ 94 772929486 *twitter: **https://twitter.com/Amila_Shamika*https://twitter.com/Amila_Shamika * linked-in: *http://www.linkedin.com/pub/dir/Shamika/Ariyawansa *Lean . Enterprise . Middleware* ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- *Janaka Ranabahu* Senior Software Engineer; WSO2 Inc.; http://wso2.com * E-mail: jan...@wso2.com http://wso2.com**M: **+94 718370861 %2B94%20718370861* Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture -- Thanks Regards, Ashansa Perera Software Engineer WSO2, Inc ___ Architecture mailing list Architecture@wso2.org
Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
Hi Shamika, In this case, do we restrict exposing repository URL to user to checkout/checkin this artifact ? Because even though we not show this URL in AppFactory UI , user can see this after login to the Git server. thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http: http://lk.linkedin.com/in/afkhamazeez**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122* *Lean . Enterprise . Middleware* On Mon, Jan 6, 2014 at 4:43 PM, Shamika Ariyawansa sham...@wso2.com wrote: Hi All, New feature that is going to be introduced to AppFactory is creating a new application by uploading exiting binary file of an application. e.g WAR *User Scenario* 1. User logs on to the system, goes to the application creation page. 2. In there user provides basic information related to the application, such as name, key, description then he/she would be able to create the application by choosing one of the following options, a. Create the application from the scratch by selecting the repository type and application type which maps with existing functionality. *OR* b. Create the application by uploading the binary file and selecting the binary file type. By doing so the application will be created as non build-able application. 3. In Repos and Builds page user will be able to see the uploaded application and he/she will be able to do following operations from there, a. Delete the existing application. b. Upload new version of the same application. - Provides a way to upload new binary file. c. Test the application by deploying to Dev cloud. Note that for applications created like this, source repository paths, build options and not shown to the users. 4. From Life Cycle Management page user will be able to Promote and Demote the application through different life cycles. *Solution* So far in AppFactory we maintain two logical types of application flows. Buildable and non-Buildable. Buildabale applications are mainly handled and deployed by the buildserver (Jenkins) whereas non-Buildable are maintained and deployed by the AppFactory itself. uploading existing application functionality will be implemented considering Non-Buildable application flow as follows. [image: Inline image 2] Further App Creation, Build and Repos and other UIs will be changed accordingly. Regards, -- Shamika Ariyawansa Senior Software Engineer WSO2, Inc.; http://wso2.com LK - +94 7639629 Ext 5999 US - +1 408 754 7388 Ext 51732 Mob:+ 94 772929486 *twitter: **https://twitter.com/Amila_Shamika*https://twitter.com/Amila_Shamika * linked-in: *http://www.linkedin.com/pub/dir/Shamika/Ariyawansa *Lean . Enterprise . Middleware* ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
On Mon, Jan 6, 2014 at 4:43 PM, Shamika Ariyawansa sham...@wso2.com wrote: Hi All, New feature that is going to be introduced to AppFactory is creating a new application by uploading exiting binary file of an application. e.gWAR *User Scenario* 1. User logs on to the system, goes to the application creation page. 2. In there user provides basic information related to the application, such as name, key, description then he/she would be able to create the application by choosing one of the following options, a. Create the application from the scratch by selecting the repository type and application type which maps with existing functionality. *OR* b. Create the application by uploading the binary file and selecting the binary file type. By doing so the application will be created as non build -able application. 3. In Repos and Builds page user will be able to see the uploaded application and he/she will be able to do following operationsfrom there, a. Delete the existing application. b. Upload new version of the same application. - Provides a way to upload new binary file. Re uploading should be allowed in the dev stage only. Isn't it? c. Test the application by deploying to Dev cloud. Note that for applications created like this, source repository paths, build options and not shown to the users. 4. From Life Cycle Management page user will be able to Promote and Demote the application through different life cycles. *Solution* So far in AppFactory we maintain two logical types of application flows. Buildable and non-Buildable. Buildabale applications are mainly handled and deployed by the buildserver (Jenkins) whereas non-Buildable are maintained and deployed by the AppFactory itself. uploading existing application functionality will be implemented considering Non-Buildable application flow as follows. [image: Inline image 2] Further App Creation, Build and Repos and other UIs will be changed accordingly. Regards, -- Shamika Ariyawansa Senior Software Engineer WSO2, Inc.; http://wso2.com LK - +94 7639629 Ext 5999 US - +1 408 754 7388 Ext 51732 Mob:+ 94 772929486 *twitter: **https://twitter.com/Amila_Shamika*https://twitter.com/Amila_Shamika * linked-in: *http://www.linkedin.com/pub/dir/Shamika/Ariyawansa *Lean . Enterprise . Middleware* -- ajanthan -- Ajanthan Balachandiran Senior Software Engineer; Solutions Technologies Team ;WSO2, Inc.; http://wso2.com/ email: ajanthan http://goog_595075977@wso2.com; cell: +94775581497 blog: http://bkayts.blogspot.com/ Lean . Enterprise . Middleware ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
On Tue, Jan 7, 2014 at 11:05 AM, Ajanthan Balachandran ajant...@wso2.comwrote: On Mon, Jan 6, 2014 at 4:43 PM, Shamika Ariyawansa sham...@wso2.comwrote: Hi All, New feature that is going to be introduced to AppFactory is creating a new application by uploading exiting binary file of an application. e.gWAR *User Scenario* 1. User logs on to the system, goes to the application creation page. 2. In there user provides basic information related to the application, such as name, key, description then he/she would be able to create the application by choosing one of the following options, a. Create the application from the scratch by selecting the repository type and application type which maps with existing functionality. *OR* b. Create the application by uploading the binary file and selecting the binary file type. By doing so the application will be created as non build-able application. 3. In Repos and Builds page user will be able to see the uploaded application and he/she will be able to do following operationsfrom there, a. Delete the existing application. b. Upload new version of the same application. - Provides a way to upload new binary file. Re uploading should be allowed in the dev stage only. Isn't it? Yes c. Test the application by deploying to Dev cloud. Note that for applications created like this, source repository paths, build options and not shown to the users. 4. From Life Cycle Management page user will be able to Promote and Demote the application through different life cycles. *Solution* So far in AppFactory we maintain two logical types of application flows. Buildable and non-Buildable. Buildabale applications are mainly handled and deployed by the buildserver (Jenkins) whereas non-Buildable are maintained and deployed by the AppFactory itself. uploading existing application functionality will be implemented considering Non-Buildable application flow as follows. [image: Inline image 2] Further App Creation, Build and Repos and other UIs will be changed accordingly. Regards, -- Shamika Ariyawansa Senior Software Engineer WSO2, Inc.; http://wso2.com LK - +94 7639629 Ext 5999 US - +1 408 754 7388 Ext 51732 Mob:+ 94 772929486 *twitter: **https://twitter.com/Amila_Shamika*https://twitter.com/Amila_Shamika * linked-in: *http://www.linkedin.com/pub/dir/Shamika/Ariyawansa *Lean . Enterprise . Middleware* -- ajanthan -- Ajanthan Balachandiran Senior Software Engineer; Solutions Technologies Team ;WSO2, Inc.; http://wso2.com/ email: ajanthan http://goog_595075977@wso2.com; cell: +94775581497 blog: http://bkayts.blogspot.com/ Lean . Enterprise . Middleware -- Shamika Ariyawansa Senior Software Engineer WSO2, Inc.; http://wso2.com LK - +94 7639629 Ext 5999 US - +1 408 754 7388 Ext 51732 Mob:+ 94 772929486 *twitter: **https://twitter.com/Amila_Shamika*https://twitter.com/Amila_Shamika *linked-in: *http://www.linkedin.com/pub/dir/Shamika/Ariyawansa *Lean . Enterprise . Middleware* ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
Hi Harsha, On Mon, Jan 6, 2014 at 8:09 PM, Harsha Thirimanna hars...@wso2.com wrote: Hi Shamika, In this case, do we restrict exposing repository URL to user to checkout/checkin this artifact ? Because even though we not show this URL in AppFactory UI , user can see this after login to the Git server. We are trying to resolve this issue by introducing an permission (Read only) so that even though the Repo is visible the user can do modifications to it. However this is still to be found out. thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http: http://lk.linkedin.com/in/afkhamazeez**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122* *Lean . Enterprise . Middleware* On Mon, Jan 6, 2014 at 4:43 PM, Shamika Ariyawansa sham...@wso2.comwrote: Hi All, New feature that is going to be introduced to AppFactory is creating a new application by uploading exiting binary file of an application. e.g WAR *User Scenario* 1. User logs on to the system, goes to the application creation page. 2. In there user provides basic information related to the application, such as name, key, description then he/she would be able to create the application by choosing one of the following options, a. Create the application from the scratch by selecting the repository type and application type which maps with existing functionality. *OR* b. Create the application by uploading the binary file and selecting the binary file type. By doing so the application will be created as non build-able application. 3. In Repos and Builds page user will be able to see the uploaded application and he/she will be able to do following operations from there, a. Delete the existing application. b. Upload new version of the same application. - Provides a way to upload new binary file. c. Test the application by deploying to Dev cloud. Note that for applications created like this, source repository paths, build options and not shown to the users. 4. From Life Cycle Management page user will be able to Promote and Demote the application through different life cycles. *Solution* So far in AppFactory we maintain two logical types of application flows. Buildable and non-Buildable. Buildabale applications are mainly handled and deployed by the buildserver (Jenkins) whereas non-Buildable are maintained and deployed by the AppFactory itself. uploading existing application functionality will be implemented considering Non-Buildable application flow as follows. [image: Inline image 2] Further App Creation, Build and Repos and other UIs will be changed accordingly. Regards, -- Shamika Ariyawansa Senior Software Engineer WSO2, Inc.; http://wso2.com LK - +94 7639629 Ext 5999 US - +1 408 754 7388 Ext 51732 Mob:+ 94 772929486 *twitter: **https://twitter.com/Amila_Shamika*https://twitter.com/Amila_Shamika * linked-in: *http://www.linkedin.com/pub/dir/Shamika/Ariyawansa *Lean . Enterprise . Middleware* -- Shamika Ariyawansa Senior Software Engineer WSO2, Inc.; http://wso2.com LK - +94 7639629 Ext 5999 US - +1 408 754 7388 Ext 51732 Mob:+ 94 772929486 *twitter: **https://twitter.com/Amila_Shamika*https://twitter.com/Amila_Shamika *linked-in: *http://www.linkedin.com/pub/dir/Shamika/Ariyawansa *Lean . Enterprise . Middleware* ___ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
Hi Manjula, On Tue, Jan 7, 2014 at 11:05 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi Janaka, On Tue, Jan 7, 2014 at 10:41 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, While I completely agree that this feature is something different from what I've stated, I'm trying to understand the usability of this feature. From what I've gathered so far from this discussion is that, we do not allow code modifications, versions and build for these kinds of applications. So basically this feature is only there to deploy, test and govern a pre-built artifact. But then, we loose many powerful development features that are provided by AppFactory. With this feature, the source code management, versioning and build(which are three important features of AF) is happening out of AppFactory and they have to manage them separately. But instead, what we need to do is to promote AppFactory for developers so that developers would be attracted to it. IMO, having a feature to create applications from an existing repo is more important in that context. I understand your point, but uploading a war file(or any deployable artifact) is the feature we implement here. There might be situations where users do not need to share their source code into our source repository. They just need to maintain binary artifacts within appfactory. But the feature you mentioned is a valid feature we can provide and can be implemented separately. Understood. I have few more points to clarify. Now when a user creates such application project do we allow him to upload the same binary to the same version of that application. Say that the user found a bug in the uploaded application. What is the procedure of fixing the bug and testing it using AF. Does he need to create a new version to upload the new artifact or can he simply replace the existing artifact in current version? How can this help to enforce the governance best practices of an application? Eg:- when an application version in promoted to the production environment, how do we guarantee that there will be no commits and builds on that version? Even though that we can stop deployment from AF side, there is no guarantee that the original source is in the same state. Do we rename the binary to AppFactory default format when creating these types of applications? Otherwise default applications in AF will have one format(applicaiton_key-version) where this would have something else. Also If not, how does features like log download(which needs to find the application name to download logs) will work? Do we allow developers to be invited into these types of applications? If so what are the functionality available to them? Is it only deployment and developer testing or do we allow a developer to upload a new binary/new version of the artifact? Thanks, Janaka thank you. WDYT? On Mon, Jan 6, 2014 at 7:24 PM, Manjula Rathnayake manju...@wso2.comwrote: Hi all, On Mon, Jan 6, 2014 at 6:48 PM, Ashansa Perera asha...@wso2.com wrote: As I feel creating an application pointing to an existing code base is different than allowing to upload an artifact and create an application, since this will not include any source code management. So we should consider those as two different use cases. IMO we can relate the use case that Janaka has mentioned to our main flow of application creation where we can provide the option of - creating an application pointing to an existing source code ( so AF can clone that and create application) - creating an application with default template +1, this feature is about uploading a war file and no source code is involved. Also, is this only about war files or do we support all the applications types of AF and are we going to support other app types like aar and car? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 5:45 PM, Harsha Thirimanna hars...@wso2.comwrote: Hi Janaka, +1 for that. There will some work to do this. Because 1. we should process the pom file of that external repository and change artifactId, groupId to our one. 2. we have to have credentials to access external repository. thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http: http://lk.linkedin.com/in/afkhamazeez**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122* *Lean . Enterprise . Middleware* On Mon, Jan 6, 2014 at 5:28 PM, Janaka Ranabahu jan...@wso2.comwrote: Hi Shamika, On Mon, Jan 6, 2014 at 4:43 PM, Shamika Ariyawansa sham...@wso2.comwrote: Hi All, New feature that is going to be introduced to AppFactory is creating a new application by uploading exiting binary file of an application. e.g WAR
Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
Hi Janaka, On Tue, Jan 7, 2014 at 11:33 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, On Tue, Jan 7, 2014 at 11:05 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi Janaka, On Tue, Jan 7, 2014 at 10:41 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, While I completely agree that this feature is something different from what I've stated, I'm trying to understand the usability of this feature. From what I've gathered so far from this discussion is that, we do not allow code modifications, versions and build for these kinds of applications. So basically this feature is only there to deploy, test and govern a pre-built artifact. But then, we loose many powerful development features that are provided by AppFactory. With this feature, the source code management, versioning and build(which are three important features of AF) is happening out of AppFactory and they have to manage them separately. But instead, what we need to do is to promote AppFactory for developers so that developers would be attracted to it. IMO, having a feature to create applications from an existing repo is more important in that context. I understand your point, but uploading a war file(or any deployable artifact) is the feature we implement here. There might be situations where users do not need to share their source code into our source repository. They just need to maintain binary artifacts within appfactory. But the feature you mentioned is a valid feature we can provide and can be implemented separately. Understood. I have few more points to clarify. Now when a user creates such application project do we allow him to upload the same binary to the same version of that application. Say that the user found a bug in the uploaded application. What is the procedure of fixing the bug and testing it using AF. Does he need to create a new version to upload the new artifact or can he simply replace the existing artifact in current version? If it is development stage, it can be replaced with new binary file. But if it is in other stages, it has to follow application life cycle. They can use issue tracker to report bugs and demote on testing stage or even in production stage. As per the diagram, initial development stage artifacts are stored in gitblit. How can this help to enforce the governance best practices of an application? Eg:- when an application version in promoted to the production environment, how do we guarantee that there will be no commits and builds on that version? Even though that we can stop deployment from AF side, there is no guarantee that the original source is in the same state. Yes, If someone manage their source code outside of AF, we can not do anything on that. But still they can use application life cycle flow, issue tracking, user management, log viewers like features. Do we rename the binary to AppFactory default format when creating these types of applications? Otherwise default applications in AF will have one format(applicaiton_key-version) where this would have something else. Also If not, how does features like log download(which needs to find the application name to download logs) will work? This is a limitation in appfactory. However we have decided to enforce this as artifact name matters in many places of appfactory(security, logs, deployment,etc). So we have to rename the binary. Do we allow developers to be invited into these types of applications? If so what are the functionality available to them? Is it only deployment and developer testing or do we allow a developer to upload a new binary/new version of the artifact? Application upload is done by app owners but we can allow developers as well in any case if appfactory users need to do so, as it is configurable. This is a feature to bring current existing applications into AppFactory and manage application life cycle. When they need to bring the source code, AF can provide a link to add source. In that case, we can commit the initial code and change the application type to default source code based application types. As you mentioned, some part of governance story is missing due to the fact that source code control is not done via AppFactory. thank you. Thanks, Janaka thank you. WDYT? On Mon, Jan 6, 2014 at 7:24 PM, Manjula Rathnayake manju...@wso2.comwrote: Hi all, On Mon, Jan 6, 2014 at 6:48 PM, Ashansa Perera asha...@wso2.comwrote: As I feel creating an application pointing to an existing code base is different than allowing to upload an artifact and create an application, since this will not include any source code management. So we should consider those as two different use cases. IMO we can relate the use case that Janaka has mentioned to our main flow of application creation where we can provide the option of - creating an application pointing to an existing source code ( so AF can clone that and create application) - creating
Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
*please look at the comment.* On Tue, Jan 7, 2014 at 11:33 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, On Tue, Jan 7, 2014 at 11:05 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi Janaka, On Tue, Jan 7, 2014 at 10:41 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, While I completely agree that this feature is something different from what I've stated, I'm trying to understand the usability of this feature. From what I've gathered so far from this discussion is that, we do not allow code modifications, versions and build for these kinds of applications. So basically this feature is only there to deploy, test and govern a pre-built artifact. But then, we loose many powerful development features that are provided by AppFactory. With this feature, the source code management, versioning and build(which are three important features of AF) is happening out of AppFactory and they have to manage them separately. But instead, what we need to do is to promote AppFactory for developers so that developers would be attracted to it. IMO, having a feature to create applications from an existing repo is more important in that context. I understand your point, but uploading a war file(or any deployable artifact) is the feature we implement here. There might be situations where users do not need to share their source code into our source repository. They just need to maintain binary artifacts within appfactory. But the feature you mentioned is a valid feature we can provide and can be implemented separately. Understood. I have few more points to clarify. Now when a user creates such application project do we allow him to upload the same binary to the same version of that application. Say that the user found a bug in the uploaded application. What is the procedure of fixing the bug and testing it using AF. Does he need to create a new version to upload the new artifact or can he simply replace the existing artifact in current version? *Yes , we should allow to delete existing one and upload new one.* How can this help to enforce the governance best practices of an application? Eg:- when an application version in promoted to the production environment, how do we guarantee that there will be no commits and builds on that version? Even though that we can stop deployment from AF side, there is no guarantee that the original source is in the same state. *In this case, our repository is built artifact , not the source. if they want to put new build , it is new version of that.* Do we rename the binary to AppFactory default format when creating these types of applications? Otherwise default applications in AF will have one format(applicaiton_key-version) where this would have something else. Also If not, how does features like log download(which needs to find the application name to download logs) will work? *Yes, I think we should rename to our standard.* Do we allow developers to be invited into these types of applications? If so what are the functionality available to them? Is it only deployment and developer testing or do we allow a developer to upload a new binary/new version of the artifact? *Yes , we allow to do version and upload new artifact to that* Thanks, Janaka thank you. WDYT? On Mon, Jan 6, 2014 at 7:24 PM, Manjula Rathnayake manju...@wso2.comwrote: Hi all, On Mon, Jan 6, 2014 at 6:48 PM, Ashansa Perera asha...@wso2.comwrote: As I feel creating an application pointing to an existing code base is different than allowing to upload an artifact and create an application, since this will not include any source code management. So we should consider those as two different use cases. IMO we can relate the use case that Janaka has mentioned to our main flow of application creation where we can provide the option of - creating an application pointing to an existing source code ( so AF can clone that and create application) - creating an application with default template +1, this feature is about uploading a war file and no source code is involved. Also, is this only about war files or do we support all the applications types of AF and are we going to support other app types like aar and car? Thanks, Janaka thank you. On Mon, Jan 6, 2014 at 5:45 PM, Harsha Thirimanna hars...@wso2.comwrote: Hi Janaka, +1 for that. There will some work to do this. Because 1. we should process the pom file of that external repository and change artifactId, groupId to our one. 2. we have to have credentials to access external repository. thanks *Harsha Thirimanna* Senior Software Engineer; WSO2, Inc.; http://wso2.com * http://www.apache.org/* * email: **hars...@wso2.com* az...@wso2.com* cell: +94 71 5186770* * twitter: **http://twitter.com/ http://twitter.com/afkham_azeez* *harshathirimann linked-in: **http:
Re: [Architecture] [AppFactory] Create AppFactory applications from already existing application binaries
Hi Manjula, Thanks for the clarifications. Seems good. Thanks, Janaka On Tue, Jan 7, 2014 at 11:54 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi Janaka, On Tue, Jan 7, 2014 at 11:33 AM, Janaka Ranabahu jan...@wso2.com wrote: Hi Manjula, On Tue, Jan 7, 2014 at 11:05 AM, Manjula Rathnayake manju...@wso2.comwrote: Hi Janaka, On Tue, Jan 7, 2014 at 10:41 AM, Janaka Ranabahu jan...@wso2.comwrote: Hi Manjula, While I completely agree that this feature is something different from what I've stated, I'm trying to understand the usability of this feature. From what I've gathered so far from this discussion is that, we do not allow code modifications, versions and build for these kinds of applications. So basically this feature is only there to deploy, test and govern a pre-built artifact. But then, we loose many powerful development features that are provided by AppFactory. With this feature, the source code management, versioning and build(which are three important features of AF) is happening out of AppFactory and they have to manage them separately. But instead, what we need to do is to promote AppFactory for developers so that developers would be attracted to it. IMO, having a feature to create applications from an existing repo is more important in that context. I understand your point, but uploading a war file(or any deployable artifact) is the feature we implement here. There might be situations where users do not need to share their source code into our source repository. They just need to maintain binary artifacts within appfactory. But the feature you mentioned is a valid feature we can provide and can be implemented separately. Understood. I have few more points to clarify. Now when a user creates such application project do we allow him to upload the same binary to the same version of that application. Say that the user found a bug in the uploaded application. What is the procedure of fixing the bug and testing it using AF. Does he need to create a new version to upload the new artifact or can he simply replace the existing artifact in current version? If it is development stage, it can be replaced with new binary file. But if it is in other stages, it has to follow application life cycle. They can use issue tracker to report bugs and demote on testing stage or even in production stage. As per the diagram, initial development stage artifacts are stored in gitblit. How can this help to enforce the governance best practices of an application? Eg:- when an application version in promoted to the production environment, how do we guarantee that there will be no commits and builds on that version? Even though that we can stop deployment from AF side, there is no guarantee that the original source is in the same state. Yes, If someone manage their source code outside of AF, we can not do anything on that. But still they can use application life cycle flow, issue tracking, user management, log viewers like features. Do we rename the binary to AppFactory default format when creating these types of applications? Otherwise default applications in AF will have one format(applicaiton_key-version) where this would have something else. Also If not, how does features like log download(which needs to find the application name to download logs) will work? This is a limitation in appfactory. However we have decided to enforce this as artifact name matters in many places of appfactory(security, logs, deployment,etc). So we have to rename the binary. Do we allow developers to be invited into these types of applications? If so what are the functionality available to them? Is it only deployment and developer testing or do we allow a developer to upload a new binary/new version of the artifact? Application upload is done by app owners but we can allow developers as well in any case if appfactory users need to do so, as it is configurable. This is a feature to bring current existing applications into AppFactory and manage application life cycle. When they need to bring the source code, AF can provide a link to add source. In that case, we can commit the initial code and change the application type to default source code based application types. As you mentioned, some part of governance story is missing due to the fact that source code control is not done via AppFactory. thank you. Thanks, Janaka thank you. WDYT? On Mon, Jan 6, 2014 at 7:24 PM, Manjula Rathnayake manju...@wso2.comwrote: Hi all, On Mon, Jan 6, 2014 at 6:48 PM, Ashansa Perera asha...@wso2.comwrote: As I feel creating an application pointing to an existing code base is different than allowing to upload an artifact and create an application, since this will not include any source code management. So we should consider those as two different use cases. IMO we can relate the use case that Janaka has mentioned to our main flow of