Design Studio SDK – Creating an online SDK Repository
EDIT – Update for those just looking for my online repository:
In Design Studio, Tools -> Install Extension to Design Studio… -> Copy and Paste this URL in the Location box:
You’ve created some SDK extension components that you now want to:
- deploy and maintain within your team
- or as an SDK addon vendor maybe to your customers
- or perhaps share with an online community (such as SCN)
And you’d like to have the ability to point everyone to one place and have a streamlined way to manage updates without distributing .ZIP files piecemeal.
I’ll be using my Design Studio Utility Pack for use case #3 above, while obviously this could apply for any of the 3.
This wasn’t really spelled out to me anywhere, but based on the steps already spelled out in the Design Studio 1.3 SDK Guide around creating a feature bundle, which is a standard Eclipse-type project, I assumed web-based repository delivery isn’t too hard in 2014. Since I’d never done one, I didn’t know what that web-based delivery term was called, but after stumbling around Google for awhile, I eventually figured out that I was trying to make is called an ‘Update Site Project’.
So OK, let’s try!
- With my Eclipse SDK loaded, I began with File -> New -> Project… -> Plug-in Development -> Update Site Project:
- I gave it a suitable name, and clicked Finish:
- So let’s pause here and look at what was created in the Package Explorer. A site.xml file is created:
- Hmm, ok. This looks similar to a Feature bundle screen with the ‘New Category’ and ‘Add Feature…’ button… I’ll take a guess that the category is ‘com.sap.ip.bi.zen.sdk’ as it is with a feature bundle, and I’ll add the feature from my feature project (the one that makes the .ZIP file described in the SDK Guide)
- Ok, now what? There’s a ‘Build’ and ‘Build All’ button, so I clicked the ‘Build All’ button (presumably would build any and all features, if I were to have more than one)… After a brief moment, the feature name has changed slightly, and now I have new files in the left panel of my package explorer:
- I am not a huge Java expert but I do know that .jar files are Java Archive files so OK, this made some JAR files for me. (Also what you would see if you manually unzip a feature bundle .ZIP)… Ok what do I do with these files? I don’t know… Let’s upload them and see what happens and see how hard or easy this is. Here’s the same files in a normal Explorer window, to show you what I’m going to upload to my web server.
- And below is the resulting folder I made containing the uploaded files in my webhost, same directory structure:
- Now what? I don’t know, but I’m assuming that when you add a repository site to Eclipse, it looks for site.xml and takes it from there. Surely it’s not that simple though? Let’s try Tools -> Install Extension to Design Studio…
- Woah. It figured out that there’s a feature there! Let’s install it and see if it works!
- We click though the normal addon prompts and let Design Studio restart. And sure enough, the components are there!
This was a lot of guesswork but I was pleasantly surprised that it ‘just worked’. So what are some of the benefits and considerations?
- Single point of distribution. No .ZIP file to keep up with.
- Updates! I tested this out after-the-fact, but if you upload a new version of the Update Site, you can instruct your users to check for updates by going to Help -> About -> Installation Details -> Select your addon -> ‘Update…’ (Or if you want a faster way, toggle to debug mode Ctl+Alt+Shift+D and then simply go Help -> Check for Updates and this also seems to work)
- Unless you are deploying your site within your Intranet, you need to remember a lot of users are probably behind a corporate firewall, so they may or may not have access to your website. This would mainly be a consideration for an SDK vendor or Internet-based community content (such as this example.)
This example for my Utility Pack is actually usable if you’d like to see it for yourself! If you’d like to try and have already installed a version of it from a .ZIP file, it *should* update correctly, but if you have problems switching, just uninstall the old version from the Help menu.
- Tools -> Install Extension to Design Studio…
- Provide URL http://www.mikehowles.com/designstudioutilitypack1.3
- Click OK and run through the prompts and restart.
You’re done! You can now check for updates and anything new I add will be reflected on this update site going forward.
If you have issues installing with this method, you may be one of those firewalled users mentioned. This won’t work for you unless you can work with your network guys.