Hi, Thanks a lot:D
Regards ------------------------------------- *Shabir Mohamed* *Software Engineer* WSO2 Inc.; http://wso2.com Email: [email protected] <[email protected]> Mobile: +94 77 3516019 | +94 71 6583393 On Mon, Sep 14, 2015 at 6:45 PM, Mariangela Hills <[email protected]> wrote: > Hi Shabir, > I have documented this in [1]. > > [1] > https://docs.wso2.com/display/ES200/Adding+a+New+Sample+Asset+for+an+Asset+Type+at+Server+Startup > > Regards, > Mariangela > > > *Mariangela Hills* > Senior Technical Writer - WSO2, Inc. http://wso2.com > Committer and PMC member - Apache Stratos > email:[email protected] | mobile: +94 773 500185 > > On Fri, Sep 11, 2015 at 3:32 PM, Mariangela Hills <[email protected]> > wrote: > >> I created a JIRA [1] to track this task. >> >> [1] https://wso2.org/jira/browse/DOCUMENTATION-2366 >> >> Regards, >> Mariangela >> >> >> *Mariangela Hills* >> Senior Technical Writer - WSO2, Inc. http://wso2.com >> Committer and PMC member - Apache Stratos >> email:[email protected] | mobile: +94 773 500185 >> >> On Fri, Sep 11, 2015 at 10:25 AM, Mariangela Hills <[email protected]> >> wrote: >> >>> Thanks, Shabir! I will add this to the docs! >>> >>> Regards, >>> Mariangela >>> >>> >>> *Mariangela Hills* >>> Senior Technical Writer - WSO2, Inc. http://wso2.com >>> Committer and PMC member - Apache Stratos >>> email:[email protected] | mobile: +94 773 500185 >>> >>> On Thu, Sep 10, 2015 at 10:47 PM, Shabir Mohamed <[email protected]> >>> wrote: >>> >>>> Also to be added to *Common Mistakes:* >>>> >>>> >>>> - The *"name" *attribute and the *"overview_name"* attribute, both >>>> needs to have the same Value, (Ex: 'RaspberryPi' & 'Raspberry Pi' will >>>> not >>>> work). *"name"* is the Artifact-Name and "*overview_name*" is the >>>> value used when creating the resource path in the registry. >>>> >>>> >>>> ------------------------------------- >>>> *Shabir Mohamed* >>>> *Software Engineer* >>>> WSO2 Inc.; http://wso2.com >>>> Email: [email protected] <[email protected]> >>>> Mobile: +94 77 3516019 | +94 71 6583393 >>>> >>>> On Thu, Sep 10, 2015 at 9:10 PM, Shabir Mohamed <[email protected]> >>>> wrote: >>>> >>>>> Hi, >>>>> >>>>> I have been trying to do $subject and found no relevant documentation. >>>>> Hence, I backtracked the path as to how the existing sample-artifacts of >>>>> the default asset-types (i.e.: gadget & site) are added when running the >>>>> WSO2 - Enterprise Store 2.0. >>>>> >>>>> *As per my study these are the necessary steps required to do >>>>> $subject:* >>>>> >>>>> Say the Asset-type for which we want to add a sample artifact has its >>>>> *"RXT"* name as *"device.rxt". **(sample txt attached in the email)* >>>>> >>>>> 1. *The sample artifacts per asset-type are found at path:* >>>>> >>>>> - >>>>> >>>>> *<ES_HOME>/repository/deployment/server/jaggeryapps/publisher/samples/assets* >>>>> - Create a folder by the plural-name of the asset-type(rxt) in >>>>> this path. In this example we make a folder by the name *"devices"* >>>>> . >>>>> - All sample/default artifacts of asset-type *"device" *shall go >>>>> into this folder. >>>>> >>>>> 2. The parent installation script - *"install.js"* - for all samples >>>>> is found at the above mentioned path. Any *"install.js"* scripts >>>>> found within sub-folders *(ex: devices, gadgets & sites)* of this >>>>> path will over-ride the parent script to perform any specific operations >>>>> relavant to that asset-type. >>>>> >>>>> - copy the sample asset-specific *"install.js"** (attached with >>>>> this email)* into the folder created in the previous step. >>>>> - search and change the following tags appropriately in the copied >>>>> script: >>>>> >>>>> *<ASSET_LIFECYCLE>* : LifeCycle definition to which >>>>> the asset-type *(in this example "device") *needs to be attached to *(ex: >>>>> DeviceLifeCycle)*. Should be one of the lifecycle definitions found >>>>> inside: >>>>> *<ES_HOME>/repository/deployment/server/jaggeryapps/publisher/extensions/lifecycles/* >>>>> *<ASSET_RXT_NAME>* : The *"rxt"* name of the >>>>> asset-type for which the samples are to be made *(in this >>>>> example "device"). * >>>>> >>>>> - Save and close the *"install.js"* script. >>>>> >>>>> 3. Create a folder by the name of the sample-artifact inside the >>>>> asset-specific-parent-folder created in Step 1. In this example lets call >>>>> our sample artifact of asset-type *"device"* as *"firealarm"*. We can >>>>> continue adding any number of folders *per artifact* of the >>>>> asset-type *(ex: firearm, raspberryPi, arduino & etc)*. Artifact >>>>> specific details go into these folders. >>>>> >>>>> *The folder structure >>>>> at- <ES_HOME>/repository/deployment/server/jaggeryapps/publisher/samples >>>>> should >>>>> look as follows:* >>>>> >>>>> *.* >>>>> >>>>> *└── samples* >>>>> >>>>> * └── assets* >>>>> >>>>> * ├── devices* >>>>> >>>>> * │ ├── firealarm* >>>>> >>>>> * │ │ ├── banner.png* >>>>> >>>>> * │ │ ├── device.json* >>>>> >>>>> * │ │ └── thumbnail.png* >>>>> >>>>> * │ └── install.js* >>>>> >>>>> * └── install.js* >>>>> >>>>> >>>>> 4. Now we have to specify the asset specific attributes to be used >>>>> when creating our sample (firealarm) artifact. These details are provided >>>>> as a *"json" *file with the same name as the asset-type/rxt >>>>> *(<RXT_NAME>.json)*. >>>>> >>>>> >>>>> - In our example this is found inside the *"firealarm"* artifact >>>>> folder as *"device.json"*. For every additional artifact-folder >>>>> that is declared, there will be a corresponding *"device.json" *file >>>>> with relevant attribute details. *(The one used for declaring >>>>> "firealarm" artifact is attached)* >>>>> >>>>> >>>>> - Additionally, any images used for thumbnail & banner views of >>>>> the artifact in the store also need to go into the artifact specific >>>>> folder. The path to these images need to be given appropriately in the >>>>> *<RXT_NAME>.json >>>>> *file. (See attached sample for clarity) >>>>> >>>>> >>>>> 5. Make the following additions in the *"publisher-tenant.json"* file >>>>> found at path: >>>>> >>>>> *<ES_HOME>/repository/deployment/server/jaggeryapps/publisher/config* >>>>> >>>>> >>>>> - Add the asset-type *("device" in this example)* to the *"assets"* >>>>> unit. >>>>> >>>>> *"assets":["gadget","site", "device"],* >>>>> >>>>> - Add the plural-name *("devices" in this example)* of the >>>>> asset-type *(by which the folder was made in Step 1)* to the >>>>> sub-unit *"collections"* nested under the unit - *"accessible".* >>>>> >>>>> *"accessible": [{* >>>>> * "context": "/_system/governance",* >>>>> * "collections": ["gadgets", "sites", >>>>> "ebooks", "devices"],* >>>>> * "actions": >>>>> ["http://www.wso2.org/projects/registry/actions/get >>>>> <http://www.wso2.org/projects/registry/actions/get>","http://www.wso2.org/projects/registry/actions/add >>>>> <http://www.wso2.org/projects/registry/actions/add>", >>>>> "http://www.wso2.org/projects/registry/actions/delete >>>>> <http://www.wso2.org/projects/registry/actions/delete>", "authorize"]* >>>>> * }],* >>>>> >>>>> - Add a new "*type"* by the same plural-name of the asset-type for >>>>> sub-unit *"assetData" *nested under the unit - *"defaultAssets"*. >>>>> >>>>> *"defaultAssets": {* >>>>> * "root": "/samples/assets",* >>>>> * "assetData": [{* >>>>> * "type": "gadgets",* >>>>> * "ignore": >>>>> ["agricultural-land", "intro-gadget-1", "intro-gadget-2", >>>>> "gadget-template-explorer", "gadget-explorer", "co2-emission", >>>>> "electric-power", "energy-use", "greenhouse-gas"]* >>>>> * }, {* >>>>> * "type": "ebooks"* >>>>> * }, {* >>>>> * "type": "sites"* >>>>> * }, {* >>>>> * "type": "devices"* >>>>> * }]* >>>>> * },* >>>>> >>>>> >>>>> Now, if you restart the server (WSO2-ES), the new sample artifact >>>>> should get created for the specific asset-type. This can be viewed at the >>>>> Publisher-UI. The artifact will be listed under the asset-type in the >>>>> Store-UI according to the lifecycle state mentioned for the >>>>> *"overview_status"* attribute in the *<RXT_NAME>.json* file. In our >>>>> example the artifact will be visible in the Store-UI, since we have set >>>>> the >>>>> lifecycle status to *"PUBLISHED"*. >>>>> >>>>> >>>>> *Common Mistakes:* >>>>> >>>>> - Missing lifecycle definition in path: >>>>> >>>>> *<ES_HOME>/repository/deployment/server/jaggeryapps/publisher/extensions/lifecycles/* >>>>> >>>>> >>>>> - >>>>> *In-appropiate attribute naming in the Asset-RXT file for the >>>>> attributes: * >>>>> >>>>> *Ex: >>>>> shortName, singularLabel, pluralLabel, <storagePath>....</storagePath>* >>>>> >>>>> >>>>> Please do inform me of anything that I have missed or included >>>>> redundantly. >>>>> >>>>> Regards >>>>> ------------------------------------- >>>>> *Shabir Mohamed* >>>>> *Software Engineer* >>>>> WSO2 Inc.; http://wso2.com >>>>> Email: [email protected] <[email protected]> >>>>> Mobile: +94 77 3516019 | +94 71 6583393 >>>>> >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "WSO2 Documentation Group" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> For more options, visit https://groups.google.com/a/wso2.com/d/optout. >>>> >>> >>> >> >
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
