Difference between revisions of "Development environment"

From Archivematica
Jump to navigation Jump to search
(Issue 595: Update local dev enviroment to use upstart daemons for the MCP client and server, and openofficed)
Line 36: Line 36:
 
**Open Thunar file manager
 
**Open Thunar file manager
 
**if using sample SIPs, 'export' the SIP directory
 
**if using sample SIPs, 'export' the SIP directory
***<pre>svn export buildVM/includes/sampledata ~/sampledata</pre>
+
***<pre>svn export src/sampledata ~/sampledata</pre>
 
**'cut' the SIP directory and paste into the receiveSIP directory
 
**'cut' the SIP directory and paste into the receiveSIP directory
 
**Open the Firefox browser and type 'localhost' as the address to view SIP processing progress via the Dashboard
 
**Open the Firefox browser and type 'localhost' as the address to view SIP processing progress via the Dashboard

Revision as of 09:46, 7 June 2011

Main Page > Development > Development Environment

This page explains how you can configure and use a Ubuntu Linux system, to use as an Archivematica development environment. The Archivematica development environment is available for developers that want the ability to customize or enhance their own Archivematica installation and/or contribute code back to the Archivematica project.

Setup

  • Use Subversion to checkout Archivematica code
    • If you have commit access, use the private repository
    • If you have read-only access, use the public GoogleCode repository
svn checkout http://archivematica.googlecode.com/svn/trunk/ archivematica


  • Run localDevSetup scripts.
    • cd archivematica/localDevSetup/
    • ./installLocalDevRequirements.sh
    • ./createArchivematicaUserAndGroupForLocalDev.sh
    • ./createLocalDevDirectories.sh
    • cd createDatabases
    • ./postBuildRun.sh
    • This will create links in your local Ubuntu environment back to the relevant Archivematica scripts in your SVN checkout, allowing you to run a local Archivematica version which can continue to pull down revision updates from the code repository
    • If you have commit access, you can work on the files in the checkout directory, make changes and commit those back to SVN repository, while also running Archivematica locally to test your changes and commits from other developers.
  • Additional local environment configuration
    • Add Crontab for quarantine check
    • sudo crontab -e
    • * * * * * flock -xn /var/lock/quarantine.lock /usr/lib/archivematica/MCPServer/delay/delay.py 60 "/var/archivematica/sharedDirectory/watchedDirectories/quarantined"

Run

  • Start Archivematica MCP Server & Client
    • Open a terminal and type in the following commands:
      • sudo restart openoffice-service
      • sudo restart archivematica-mcp-server
      • sudo restart archivematica-mcp-client
  • To start processing a SIP:
    • Open Thunar file manager
    • if using sample SIPs, 'export' the SIP directory
      • svn export src/sampledata ~/sampledata
    • 'cut' the SIP directory and paste into the receiveSIP directory
    • Open the Firefox browser and type 'localhost' as the address to view SIP processing progress via the Dashboard

Update

To pull down the latest code commits from the repository, navigate to the directory where Archivematica trunk has been checked out:

  • Change Directory to the archivematica SVN directory.
cd ~/archivematica/
  • cd archivematica/localDevSetup/
  • ./cleanup.sh
  • cd ~/archivematica/
  • svn up
  • cd ~/archivematica/localDevSetup/
  • ./createLocalDevDirectories.sh
  • Note: changes to the MCP database schema may have occurred. To make these changes to your local database run the following command.

THIS WILL ERASE THE DATA ON SIPs CURRENTLY IN YOUR DATABASE.

  • ./recreateDB.sh

Troubleshooting

  • If you get this error error starting service:
    • sudo start archivematica-mcp-server
    • start: Unknown job: archivematica-mcp-server
    • Then reboot the machine.
  • If a SIP processing fails, it will move it to the 'failed' directory which is located:
    • var/archivematica/sharedDirectory/watchedDirectories/failed
  • if ArchivematicaServer freezes
    • sudo restart archivematica-mcp-server
    • sudo restart archivematica-mcp-client
  • if ArchivematicaClient freezes (in terminal kill command)
    • sudo restart archivematica-mcp-client
  • Updates to the Dashboard may require an Apache webserver restart:
    • sudo /etc/init.d/apache2 restart
  • If you find a problem running the Dashboard and you want to get a detailed error log to report us, please switch it to debug mode following these instructions.