Skip to content

Commit

Permalink
Merge pull request #3 from carlwilson/rc/v1.2-alpha
Browse files Browse the repository at this point in the history
Rc/v1.2 alpha
  • Loading branch information
carlwilson authored Jun 5, 2024
2 parents b316152 + 66ee3a9 commit 53c579d
Show file tree
Hide file tree
Showing 67 changed files with 553 additions and 423 deletions.
1 change: 1 addition & 0 deletions CNAME
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
vitest.openpreservation.org
22 changes: 8 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,18 @@

This project creates ViPER, the Virtual Preservation Environment for Research. The environment is a virtual machine set up with a set of digital preservation tools installed and ready to use from the desktop.

Supporting documentation is presented in these sections, or you can use [the documentation website](https://openpreserve.github.io/ddhn-forge/):
Supporting documentation is presented in these sections, or you can use [the documentation website](https://viper.openpreserve.org/):

1. [Setup Guide](docs/setup/index.md): How to download and configure ViPER.
2. [User Guide](docs/guide/index.md): Some help getting acquainted with VirtualBox and the environment.
3. [Tool Reference](docs/tools/index.md): A list of the bundled tools and some help references.
4. [Maintainer's Guide](docs/maintainer/index.md): A look at how ViPER is produced and how it can be updated or extended.
1. [Setup Guide](https://viper.openpreservation.org/setup/): How to download and configure ViPER.
2. [User Guide](https://viper.openpreservation.org/guide/): Some help getting acquainted with VirtualBox and the environment.
3. [Tool Reference](https://viper.openpreservation.org/tools/): A list of the bundled tools and some help references.
4. [Maintainer's Guide](https://viper.openpreservation.org/maintainer/): A look at how ViPER is produced and how it can be updated or extended.
5. [Quick Start](#quick-start): A brief look at how to get going with this project yourself.
6. [References](docs/refs/index.md): A list of references used in the documentation.
6. [References](https://viper.openpreservation.org/refs/): A list of references used in the documentation.

## Logging Issues

Should you have problems with ViPER then please [raise a GitHub issue](https://github.com/openpreserve/ddhn-forge/issues/new) on the project GitHub issue tracker [Openpreserve ddhn-forge](https://github.com/openpreserve/ddhn-forge/issues). You're also free to suggest enhancements by [raising an issue](https://github.com/openpreserve/ddhn-forge/issues/new). Please note that this should be limited to ViPER functionality only, tool enhancements should be directed to the relevant sites. If you do not have a GitHub user account you can also post issues via the [OPF contact us page](https://openpreservation.org/contact/)
Should you have problems with ViPER then please [raise a GitHub issue](https://github.com/openpreserve/ViPER/issues/new) on the [project GitHub issue tracker](https://github.com/openpreserve/ViPER/issues). You're also free to suggest enhancements by [raising an issue](https://github.com/openpreserve/ViPER/issues/new). Please note that this should be limited to ViPER functionality only, tool enhancements should be directed to the relevant sites. If you do not have a GitHub user account you can also post issues via the [OPF contact us page](https://openpreservation.org/contact/)

## Quick Start

Expand All @@ -28,9 +28,7 @@ You'll need [Virtual Box](https://www.virtualbox.org/) on your machine to act as

### Downloading the virtual Machine

Rather than build a vagrant machine you can download a [prebuilt OVF file](https://www.virtualbox.org/manual/ch01.html#ovf-about)
which can be downloaded [ViPER](https://viper.openpreservation.org/viper.ova). The download takes some time
as it's about 4GB. When it's finished you should have a file called `viper.ova`.
Download the latest version of ViPER at <https://ddhn.openpreservation.org/viper-v{{ site.data.vars.version }}.ova>. ViPER is distributed as a [prebuilt OVF file](https://www.virtualbox.org/manual/ch01.html#ovf-about). The download takes some time as the file is about 5GB.

[These instructions](https://www.virtualbox.org/manual/ch01.html#ovf) tell you how to import the OVA file into VirtualBox so you can start it.

Expand All @@ -47,7 +45,3 @@ Out of the box the machine should come configured with:
- 128MB of video RAM to allow desktop scaling

More CPU and RAM will almost certainly improve performance. If you're setting up a vagrant box from scratch you can use the [Maintenance Initialisation](docs/maintainer/index.md#initialisation) instructions to change the parameters. If you've imported the OVA you can use the VirtualBox GUI to make the changes as [described here](https://www.virtualbox.org/manual/ch01.html#ovf).

## ViPER Tools and Resources

The list of tools and reference resources is maintained [here in a separate Markdown file](./docs/tools/index.md).
8 changes: 3 additions & 5 deletions Vagrantfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Vagrant.configure("2") do |config|

# Every Vagrant development environment requires a box. You can search for
# boxes at https://vagrantcloud.com/search.
config.vm.box = "debian/bullseye64"
config.vm.box = "debian/bookworm64"

# Share an additional folder to the guest VM. The first argument is
# the path on the host to the actual folder. The second argument is
Expand All @@ -25,7 +25,7 @@ Vagrant.configure("2") do |config|
# provider for Vagrant. These expose provider-specific options.
config.vm.provider "virtualbox" do |vb|
# Name the prototype machine
vb.name = "VIPER v1.1"
vb.name = "viper-v1.2-alpha"
# Display the VirtualBox GUI when booting the machine
vb.gui = true
# Customize the CPUs (2x) and memory (4GB) on the VM:
Expand All @@ -44,9 +44,7 @@ Vagrant.configure("2") do |config|
config.vm.provision "ansible" do |ansible|
ansible.playbook = "ansible/initialise-env.yml"
ansible.verbose = "vv"
ansible.limit = "env.ddhn.test"
ansible.galaxy_role_file = "ansible/requirements.yml"
ansible.galaxy_command = "ansible-galaxy install --role-file=%{role_file}"
ansible.limit = "env.viper.test"
ansible.inventory_path = "ansible/vagrant.yml"
end
end
File renamed without changes.
5 changes: 2 additions & 3 deletions ansible/initialise-env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,5 @@
- hosts: all
become: true
roles:
- { role: ddhn.setup }
- { role: PeterMosmans.virtualbox-guest }
- { role: ddhn.tools }
- { role: viper.setup }
- { role: viper.tools }
2 changes: 0 additions & 2 deletions ansible/requirements.yml

This file was deleted.

54 changes: 0 additions & 54 deletions ansible/roles/ddhn.setup/defaults/main.yml

This file was deleted.

15 changes: 0 additions & 15 deletions ansible/roles/ddhn.setup/tasks/desktop.yml

This file was deleted.

17 changes: 0 additions & 17 deletions ansible/roles/ddhn.setup/tasks/main.yml

This file was deleted.

21 changes: 0 additions & 21 deletions ansible/roles/ddhn.setup/tasks/server.yml

This file was deleted.

5 changes: 0 additions & 5 deletions ansible/roles/ddhn.setup/templates/etc/hosts.j2

This file was deleted.

2 changes: 0 additions & 2 deletions ansible/roles/ddhn.setup/vars/main.yml

This file was deleted.

134 changes: 134 additions & 0 deletions ansible/roles/viper.setup/defaults/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
---
# viper.setup default values
viper_env_apt_defaults:
# Source control a
- "git"
# Debian lacks the ability to download apt over HTTPS
- "apt-transport-https"
# Install some helper network tools
- "psmisc"
- "net-tools"
# Python3 module so that ansible can handle dconf tasks
- "python3-psutil"
# Zip and unzip are always handy
- "zip"
- "unzip"
# Tools for keyboard and console setup
- "keyboard-configuration"
- "console-setup"
# Open JDK 17 for Java
- "openjdk-17-jre"
- "openjdk-17-doc"
- "openjdk-17-source"
# GNOME desktop and Nemo add on for icon display
- "task-gnome-desktop"
- "nemo"

viper_env_apt_remove:
- "acpi"
- "apcid"
- "aptitude"
- "at"
- "aspell"
- "aspell-en"
- "avahi-daemon"
- "bc"
- "bin86"
- "bind9-host"
- "console-common"
- "console-data"
- "console-tools"
- "dc"
- "debian-faq"
- "debian-faq-de"
- "debian-faq-fr"
- "debian-faq-it"
- "debian-faq-zh-cn"
- "dhcp"
- "dhcp3-client"
- "dhcp3-common"
- "dictionaries"
- "dnsutils"
- "doc-debian"
- "doc-linux-text"
- "eject"
- "fdutils"
- "file"
- "finger"
- "foomatic-filters"
- "gettext-base"
- "groff"
- "gnupg"
- "gnu-efi"
- "grub"
- "hplip"
- "iamerican"
- "ibritish"
- "info"
- "ispell"
- "laptop-detect"
- "libavahi-compat-libdnssd1"
- "libc6-amd64"
- "libc6-i686"
- "libgpmg1"
- "manpages"
- "mtools"
- "mtr-tiny"
- "mutt"
- "nano"
- "netcat"
- "net-tools"
- "ncurses-term"
- "openssl"
- "pidentd"
- "ppp"
- "pppconfig"
- "pppoe"
- "pppoeconf"
- "read-edid"
- "reportbug"
- "smclient"
- "tasksel"
- "tcsh"
- "traceroute"
- "usbutils"
- "vim-common"
- "vim-tiny"
- "wamerican"
- "w3m"
- "whois"
- "zeroinstall-injector"


viper:
setup:
prereqs:
apt: "{{ viper_env_prereqs_apt | default (viper_env_apt_defaults) }}"
remove:
apt: "{{ viper_env_remove_apt | default (viper_env_apt_remove) }}"
hostname: "{{ viper_env_hostname | default('localhost') }}"
hostdomain: "{{ viper_env_hostdomain | default('localdomain') }}"
fqdn: "{{ viper_env_fqdn | default('localhost.localdomain') }}"
timezone: "{{ viper_env_timezone | default('Europe/London') }}"
iptables:
interfaces: "{{ viper_env_http_interfaces | default([]) }}"
ip:
v4: "{{ viper_env_ip | default('127.0.0.1') }}"
v6: "{{ viper_env_ip_v6 | default('') }}"
port:
http: "{{ viper_env_port_http | default('') }}"
https: "{{ viper_env_port_https | default('') }}"
open_ports: "{{ viper_env_open_ports | default([]) }}"
limited_account:
name: "{{ viper_env_user_name | default('viper') }}"
password: ""
home: "{{ viper_env_user_home | default('/home/viper') }}"
default_locale: en_GB.UTF-8
locales:
- da_DK.UTF-8
- de_DE.UTF-8
- en_GB.UTF-8
- en_US.UTF-8
- fr_FR.UTF-8
- nl_NL.UTF-8

File renamed without changes.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
# ddhn.setup handlers
# viper.setup handlers

- name: restart ssh
service:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# ddhn.setup metadata
# viper.setup metadata
---
galaxy_info:
author: "Carl Wilson"
Expand All @@ -9,7 +9,7 @@ galaxy_info:
platforms:
- name: Debian
versions:
- stretch
- bookworm
galaxy_tags:
- OPF
- DDHN
Expand Down
Loading

0 comments on commit 53c579d

Please sign in to comment.