Difference between revisions of "Getting started"

From Archivematica
Jump to navigation Jump to search
(Installation stub)
(→‎Installation: Ansible and local)
Line 36: Line 36:
 
# Use ansible and vagrant to install Archivematica in a VM
 
# Use ansible and vagrant to install Archivematica in a VM
 
# Install Archivematica on your development machine
 
# Install Archivematica on your development machine
 +
 +
 +
=== Ansible & Vagrant ===
 +
 +
To install and run Archivematica from source on a VM:
 +
# Checkout deployment repo
 +
#* <code>git clone git@github.com:artefactual/deploy-pub.git</code>
 +
# Temporary: switch to playbooks/archivematica branch
 +
#* <code>git checkout playbooks/archivematica</code>
 +
# Install VirtualBox, Vagrant, Ansible
 +
#* <code>sudo apt-get install virtualbox vagrant</code>
 +
#* Vagrant must be at least 1.5
 +
#** <code>vagrant --version</code>
 +
#* <code>sudo pip install ansible</code>
 +
# Helpers
 +
#* Install vagrant helper plugin http://hakunin.com/six-ansible-practices
 +
#** <code>vagrant plugin install vagrant-hostsupdater</code>
 +
#* Guest additions https://github.com/dotless-de/vagrant-vbguest
 +
#** <code>vagrant plugin install vagrant-vbguest</code>
 +
# Create machine
 +
#* <code>cd deploy-pub/playbooks/archivematica/</code>
 +
#* <code>vagrant up</code>
 +
#* Will prompt for sudo to modify /etc/hosts adding am-local.myapp.dev
 +
# Login now available (but nothing needs to be run on the VM)
 +
#* <code>ssh root@am-local.myapp.dev</code>
 +
# Get updates to roles
 +
#* <code>ansible-galaxy install -r requirements.yml [--force]</code>
 +
# Execute playbook
 +
#* <code>ansible-playbook -i hosts singlenode.yml</code>
 +
# Archivematica should be available at 192.168.168.192 and the storage service at 192.168.168.192:8000
 +
 +
You may want to add this to your .ssh/config
 +
<pre>Host 192.168.168.* *.myapp.dev
 +
  StrictHostKeyChecking no
 +
  UserKnownHostsFile=/dev/null
 +
  User root
 +
  LogLevel ERROR</pre>
 +
 +
=== Development Machine ===
 +
 +
See [[Development_environment#Setup|development environment setup instructions]]

Revision as of 19:00, 11 August 2015

Main Page > Development > Getting Started

Vital Stats

Projects

Archivematica consists of several projects working together.

  • Archivematica: Main repository containing the user-facing dashboard, task manager MCPServer and clients scripts for the MCPClient
  • Storage Service: Responsible for moving files to Archivematica for processing, and from Archivematica into storage
  • Format Policy Registry: Submodule shared between Archivematica and the Format Policy Registry (FPR) server that displays and updates FPR rules and commands

There are also several smaller repositories that support Archivematica in various ways. In general, you will not need these to develop on Archivematica.

Installation

There are two main ways to run Archivematica in development.

  1. Use ansible and vagrant to install Archivematica in a VM
  2. Install Archivematica on your development machine


Ansible & Vagrant

To install and run Archivematica from source on a VM:

  1. Checkout deployment repo
    • git clone git@github.com:artefactual/deploy-pub.git
  2. Temporary: switch to playbooks/archivematica branch
    • git checkout playbooks/archivematica
  3. Install VirtualBox, Vagrant, Ansible
    • sudo apt-get install virtualbox vagrant
    • Vagrant must be at least 1.5
      • vagrant --version
    • sudo pip install ansible
  4. Helpers
  5. Create machine
    • cd deploy-pub/playbooks/archivematica/
    • vagrant up
    • Will prompt for sudo to modify /etc/hosts adding am-local.myapp.dev
  6. Login now available (but nothing needs to be run on the VM)
    • ssh root@am-local.myapp.dev
  7. Get updates to roles
    • ansible-galaxy install -r requirements.yml [--force]
  8. Execute playbook
    • ansible-playbook -i hosts singlenode.yml
  9. Archivematica should be available at 192.168.168.192 and the storage service at 192.168.168.192:8000

You may want to add this to your .ssh/config

Host 192.168.168.* *.myapp.dev
  StrictHostKeyChecking no
  UserKnownHostsFile=/dev/null
  User root
  LogLevel ERROR

Development Machine

See development environment setup instructions