5-Minute Guide to Packaging Your Module

part of the ArsDigita Community System
by Jon Salz

About This Document

At this time, this guide is intended primarily for ArsDigita employees, specifically, ACS 3.2 module owners who want to turn their module into a package which can be used with the new ACS Package Manager. Eventually it will become more general.

Background

For ACS 3.3, we are releasing an APM that provides a subset of the desired functionality. So ACS 3.2 was the last monolithic release of ACS: ACS 3.3 will consist of a set of distinct packages (the address book, the bboard, etc.) which will be individually versionable and upgrading. During the wait for the ACS 4.0 release, package owners can still distribute upgrades to their packages by posting tarballs (.apm files) on software.arsdigita.com. The package manager will automate all this.

So What Do I Have To Do?

Every package owner (a.k.a. module owner) needs to use the package manager on dev.arsdigita.com to register their packages. The process is very easy. Just
  1. Register as a site-wide administrator on dev.arsdigita.com, if you're not already. To do this, just log onto ls.arsdigita.com and type
    sh ~jsalz/make-me-admin.sh youremailaddress@arsdigita.com
    (If it complains about a unique constraint being violated, that means you were already a site-wide administrator).

  2. Go to the package manager on dev.arsdigita.com.

  3. Click the Add a new package link.

  4. Follow the prompts to type in the information for your package. Use 0.5 for the initial version. Note that the package URL and version URL are filled in automatically for you.

  5. Click Create Package.

  6. Now for the tough part: telling the system which files are contained in your package. First, click that link at the top of the page (scan the usual places in the filesystem for files in this package) to check for files in the usual places (e.g., if your package is called education it will look for www/greeble, www/admin/greeble, and filenames containing the string "greeble" in the tcl, www/doc, and www/doc/sql directories.

  7. If there are any files in your package which the package manager wasn't able to find, click Add files/directories to this package and type in the paths of the files (e.g., tcl/pull-down-menu-defs), one per line. You can use wildcards (e.g., paths containing stars) if you like. Click Show These Files, make sure everything looks reasonable, and click Add These Files. Repeat this step as necessary until you've nailed down all the files in your package.

  8. Repeat steps 3 through 7 for each additional package you own. And you're done! ACS thanks you.

    And Why Am I Doing This Again?

    Most importantly: This things will make ACS much more approachable and desirable to new users, and make it easier for us to keep improving and streamlining ACS.
    jsalz@mit.edu