|
Links Home Mighty Automated Build (MAB) MAB Overview Setting Up Configure and Build Mighty Automated Deployment (MAD) MAD Overview For Developers For Administrators External links ArchStudio 3 xADL 2.0 Site Official xArch Site UCI Institute for Software Research |
Mighty Automated Deployment - For Developers This section is for users who develop software and want to use MAD to deploy their software products. Administrators who want to deploy MAD at their own site should see here. Deploying software with MAD is done through the MAD releaser, a command-line program deployed with the MAD software. Software deployed with MAD must be in the .ZIP file format, and must contain a build properties file containing information about the build. This can be created in any number of ways, but the easiest is to use Mighty Automated Build. Building software without MAB is possible but won't be covered in this tutorial. This tutorial assumes you have built your software already with MAB and have it as a .ZIP archive. If you are interested in building softwae without MAB, contact Eric Dashofy. Step 1: Download and install MAD. MAD, of course, is deployed using MAD. The software release component is included in the MAD download. To download MAD, go to the ISR Software Update Site and follow the instructions to download and install MAD, formally known as ISR Deployment. When you install it, it will create a directory structure that looks like this:
[install_dir]/
|
+-mad/
|
+-doc/
| |
| +-(contains javadoc documentation)
|
+-lib/
| |
| +-mad.jar
| (contains MAD software)
|
+-src/
|
+-(contains MAD source code)
Step 2: Configure your environment and test-run the releaser. Once you have MAD downloaded and installed,
you can run the releaser, which is used to release software
products. To run the releaser, you need to put
Ensure that the
Of course, running the releaser without any parameters won't actually release any software, but it will verify that you've got it installed correctly and that your Java environment is working. If you are successful, you should see a message like this: ISR Deployment Releaser 1.0 (C)2001-2002 The Regents of the University of California. All rights reserved worldwide. Argument Error. Start with: ... Step 3: Prepare the server for release. MAD Releaser releases software to an FTP site. You have to have write-access via FTP to some web-accessible directory on the server for the deployment system to work. This is fairly common practice for most ISPs. If this is your first time releasing software via MAD, FTP to the Web server using your favorite FTP client and create a new Web-accessible directory somewhere on the server for the released software. You can use an existing directory, but things will get jumbled up. Let's say this directory on the server is:
Which maps to the URL:
Have your MAD administrator create this directory and ensure that it has the appropriate permissions to be accessible from the Web. MAD administrators should see the administrator's page for instructions on setting up MAD. Step 4: Prepare for release. Now that you have the releaser configured correctly, change
directory to the directory where your MAB-built software is.
If your product is named "myproduct" then this is the directory
containing Now, you need to choose parameters for your release. The parameters to the releaser are as follows: java edu.uci.isr.mad.MadReleaser [params] Where params are: -f filename -s ftp_server [-port portnum] [-b build_id] [-u username] [-p password] | -pprompt] -d remote_directory [-old] filename is the name of the .zip file you are
releasing. In this case, we're using ftp_server is the DNS name or IP address of the
FTP server to which you are releasing the software. For the
purpose of this example, we will use portnum is the number of the port on which the FTP
server is running. If you omit the username is the username you use to login to the FTP
server. If you leave this blank, the releaser will use password is the password you use to login to the FTP
server. If you leave this blank, the releaser will use build_id is the short identifier of the build you are releasing. Generally this is a short identifying string with no spaces. If you don't specify one, MAD generates build numbers incrementally starting with 1000. This is generally sufficient for most uses, unless you have a better internal build-numbering system. remote_directory is the directory on the server where
you want to release the software. In our case it is -old is an interesting switch. You should pass this
switch if the version of the software you are releasing should NOT be
marked as the 'latest' version of the software. When a new 'latest'
version is released, users who invoke MAD and who have already installed
another version will see that they do not have the "latest" version of
the software. It is useful to mark a version as the non-latest version
if you are releasing a non-stable build, a fix for an old version of
the software, an instrumented build, or a custom build for a particular
user. When releasing an That's it. So, a command-line for releasing a build of
Step 5: Release software. That's it. simply run MAD releaser with the parameters shown. Any errors will be output to the console. If the release is successful then users should be able to access it via MAD. |