Add-On Registration (ARD +Zip) files in SAP B1 through automation (DevOps) - sapb1

I want to know about can we do Add-On Registration (ARD + Zip) files through automation or using DevOps Tools.
If you have any method then let me know or refer to an article.

The SDK tool for packaging lightweight add-ons can be run from the command line to produce an ARD+Zip (the same tool that can be run in GUI mode). Note however that if you have files in sub-folders, for some reason when run from the command line these don't get included in the zip (seems to be a bug).

Related

Customising NetBeans Platform Harness

my question is about developing a suite of applications using NetBeans Platform 8.x and modifying the harness.
We would like to modify the harness independently for the apps, and be able to commit that into source control. The modified harnesses work when they replace the existing one in the NetBeans installation. We have modified the harnesses and placed them inside the suite directory (as just a directory) for the command line app and the GUI app. Ideally we would like to carry on using the platform installed at the default location but modify the harness per app?
What we have tried:
We defined:
suite.dir=${basedir}
harness.dir=${suite.dir}/harness
This works great for the clean and build targets. But it does not work for the GUI invoked package as installers action.
Looking at the source for:
org.netbeans.modules.apisupport.installer.actions.BuildInstallersAction()
it is not immediately clear how to achieve this because it makes use of InstalledFileLocator.getDefault().locate
to find the harness.
Is there away to direct the installer 'build' to use the modified harness in ${suite.dir}/harness ?
Or is the only option to register our own action to replace BuildInstallersAction() ? - if that is possible?
We are trying to avoid having to copy the entire platform source (as seems to be suggested in harness\README - may be I have misunderstood it?) as well, we only modify the harness.
Thanks
Trevor

Vapi-xp library properties of TDAPIOLELIB are disabled

We are writing the vb scripts in Vapi-xp (in QC) to execute the Shell scripts in unix box.
At present, Vapi calls the functional library in the local to run shell scripts.
As part of enhancements to Frame Work , we trying to attach the Functional library in ALM(QC) and to download the same to local at run-time.
To Download the attachment from ALM to local: We tried to use TDAPIOLELIB reference library in Vapi-xp But most of the Properties like Treemanager are Disabled.
So anyone knows the fix to above problem.please let us know
Is there any better approach to download the attachments from vapi-xp?
I don't know how to download from inside vapi-xp, but you can have the ALM deployment engine deploy your files from ALM server the same way as it deploys the rest of the ALM client.
For detailed instructions on how to make it work look for the custom test types guide in ALM documentation.
There in the deployment section you have instructions on packaging your files and placing them on ALM server for download.
We have used the OTA client library to download the VAPI-XP scripts.
The IExtendedStorage interface is used in getting the downloads.
Using the Rest API, the following URL downloads the scripts in VAPI-XP:
/rest/domains/DEFAULT/projects/<project_name>/tests/<test_id>/storage?login-form-required=y
e.g.
/rest/domains/DEFAULT/projects/sample/tests/6/storage?login-form-required=y

Installing print driver on Windows Azure VM

We have a native, stand alone Win32 application that we use to generate .PDF files. It is command line driven to take one of our data files in and generate a PDF file. It works in conjunction with a print driver that is installed on the computer.
I know there are libraries for generating PDF files in .NET that we can use in Azure, however, there is specific type layout being carried out in our App that we must support, and that logic is not yet on the server side. This is a short term cheat, before we port (or rewrite) our 20 year old type layout engine out of C/C++. There is alot of code here with alot of complexity.
I see that we can now run native apps in Azure (yay). However, my issue seems to be that this native application requires a print driver installed. I have not been able to find any information about installing print driver in Azure worker role.
I found this discussion: https://stackoverflow.com/questions/9125385/printing-to-pdf-from-azure-worker-role. The end result of this is to use a PDF library on Azure, which is not something that will work for us.
Also, I am aware that it is not the best use of a server to fire up a process to generate a PDF file everytime somebody wants to preview their data file in our web site. We are planning on cheating by showing the user the PDF, when they want to preview our proprietary data format in a browser. This is Phase I of a project, and rewriting our 20 year old type layout engine in C# is going to take alot longer to accomplish, and we are talking about this (admitted hack) as a short term (in the bigger sense of things) measure.
How do I install a Print Driver in Windows Azure worker role? Is it possible? Are there any other options?
Many Thanks.
If you can do a command line, silent install of the Amyuni software that yms mentioned then you could run that as part of a startup task on your worker role, probably with elevated permissions. People use startup tasks to do all sorts of things and many of them have written blog posts about it or answer questions about them here on SO, but a good place to start would be the official documentation.
This may help: Amyuni PDF Converter is a PDF printer driver with an API exposed as a COM interface and as a net. assembly that allows you to silently install and uninstall the driver programmatically. This can be done by using the methods PDFDriverInit and DriverEnd from your application.
Once your application installs the driver, you can print to PDF using a memory stream as destination and upload it to a Microsoft Azure Blob Storage.
There are 2 ways of installing Amyuni PDF Converter:
1- Using the installation program provided with the package.
2- Copying the dll files to their corresponding folders and then calling the method DriverInit.
The complete process is explained here:
Using the Developer Version of the Amyuni Document Converter
About your specific scenario, if you have an application that uses Amyuni PDF Converter, then there is indeed a printer driver that should be installed with it. Your application could be installing the driver every time it is launched and removing it when it is closed, or it could be installing it only during the installation of your program.
If you do not have the source code of this application but you still have the license information of the library provided by Amyuni, you could try building a small application or batch script that just takes care of the installation process. You can contact Amyuni support for a link to the latest build of the version you are using.
You mentioned that you are using Windows Azure VM, so I am assuming that you have administrative rights on the virtual system and that you can connect to it using remote desktop and run any kind of applications.
Usual disclaimer applies

IDE for Firefox Add-ons Development

I have been working on firefox add-ons for quite a long time and its been a real headache to use notpad++ for development. Is there any suitable IDE or plug-in for eclipse available.And just like we do **Run on Server" for dynamic web-projects,Is there any way that, I do a change in any of the sorce file and it automatically creates the .xpi file and installs in firefox?
There are a lot of editors or IDEs that could be easily integrated with the SDK to perform basic tasks like running cfx run or cfx xpi. Here's the system that I use:
I have Wladimir Palant's 'Extension Auto Installer' installed in Firefox
I have a script like this in the add-on's root directory:
#!/bin/bash
/path/to/cfx xpi && wget --post-file=filename.xpi http://127.0.0.1:8888/
Every time I want to test the add-on, I just run the script and the xpi is built and installed into Firefox. Most editors will have some capability to bind a shel command like this to a keybinding.
You don't really need IDE to create XPI every time you make a change.
Create a folder with your addon's source code (e.g.
C://addons/myaddon/).
Put a file containing this path to the folder
containing your Firefox addons and call it the same as your addon ID
(e.g. myaddon#domain.com).
In your install.rdf file, add this line: <em:unpack>true</em:unpack>
This way you can just restart the Firefox whenever you want to see the changes. I recommend this addon, it adds a keyboard shortcut Ctrl+Alt+R for quick restart of Firefox (be sure to get the 0.6b2 version, previous versions don't support the keyboard shortcut):
https://addons.mozilla.org/firefox/downloads/file/121516/restart_firefox-0.6b2-fx.xpi?src=dp-btn-devchannel
Also, you will not loose your source code in case you uninstall your addon while testing (this happens when you develop directly in your Firefox addons folder).
As of IDE, for me personally any editor with syntax highlight for XML and JS works just fine. My personal favorites are Aptana (Eclipse based IDE) and Intype (lightweight and extremely fast).

Cocoa - How to copy files to /usr/share?

I'm developing an "installation" like cocoa application wich needs to take care of some http request, some file system reading, copying files to /usr/share, set up cron (not launchd) and ask some information to user.
I discarded PackageMaker since I need more flexibility.
Currently everything is going well, but on my last installation step, I need to:
Delete my previously installed application folder (if exists). It's always the same path: /usr/share/MY_APP
Create again the application folder at: /usr/share/MY_APP
Copy application files to /usr/share/MY_APP
Update a cron job
It's very important that /usr/share/MY_APP keeps protected with administrative privileges, so a regular shouldn't delete it.
What would be the best approach to implement those steps?
BTW, I'm using Xcode 3.2.
Thanks a lot!
Carlos.
Between the preflight script, the postflight script, and perhaps an Installer plug-in for the custom UI, I see no reason why you can't do all of this in PackageMaker.
Note: “Installer plug-in” is a little misleading. The user does not have to install the plug-in somewhere as a separate step; you include the plug-in inside your package, and Installer will use it from there.
The relevant document is a ReadMe file in a sample code project. There's also an Installer plug-in project template in Xcode since 2.0.
Also, an Installer plug-in won't get used if the user does a command-line installation. Of course, they can't install from the command line at all (which includes remote installation onto an office or lab full of machines) if you write your own custom installer.
By the way: Why /usr/share? What are you putting there? There may be a better way to do what you're really trying to accomplish.