Skip to content

Commit

Permalink
Merge pull request #105 from marvel-nccr/develop
Browse files Browse the repository at this point in the history
release QM 19.12.0RC1
  • Loading branch information
ltalirz authored Dec 16, 2019
2 parents e1afa84 + 1c10ee2 commit 45f26ff
Show file tree
Hide file tree
Showing 13 changed files with 59 additions and 67 deletions.
18 changes: 18 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,23 @@
# Changelog

## Quantum Mobile v19.12.0RC1

### Improvements
* first Quantum Mobile release with AiiDA 1.0

### Software updates
* Ubuntu 18.04.3 LTS
* aiida-core v1.0.1
* aiida-cp2k v1.0.0b4
* aiida-quantumespresso v3.0.0a5
* aiida-siesta v1.0.0
* aiida-fleur v1.0.0a0
* aiida-bigdft v0.1.0a0
* aiidalab v19.11.0a2
* yambo 4.4
* QE 6.5 with EPW and Wannier90
* fleur 0.30 MaxR4

## Quantum Mobile v19.09.0

### Improvements
Expand Down
2 changes: 2 additions & 0 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ Get Quantum Mobile running on your computer in three simple steps:
File => Import Appliance

Note: username: `${vm_user}`, password: `${vm_password}`
In case of issues, see the [FAQ](https://github.com/marvel-nccr/quantum-mobile/wiki/Frequently-Asked-Questions).


## Contact

Expand Down
35 changes: 3 additions & 32 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ mechanical calculations, including
* [Quantum ESPRESSO](http://www.quantum-espresso.org/)
* [Yambo](http://www.yambo-code.org/)
* [fleur](http://www.flapw.de/)
* [Siesta](https://launchpad.net/siesta)
* [Siesta](https://gitlab.com/siesta-project/siesta)
* [CP2K](https://www.cp2k.org)
* [Wannier90](http://www.wannier.org)

all of which are set up and ready to be used through the
all of which are set up and ready to be used through on their own or through the
[AiiDA](http://www.aiida.net) python framework for automated workflows and
provenance tracking.

Expand Down Expand Up @@ -93,36 +93,7 @@ ansible-playbook playbook.yml --extra-vars "clean=true"

## Customizing Quantum Mobile

There are at least two ways to customize Quantum Mobile in order to fit your needs:

1. Start VM, add/remove components manually, export image again
+ it's quick
+ no need to work with ansible/vagrant
- **but**: no clear record of changes
- need to redo this next time round
2. Add/remove components in the [`playbook.yml`](playbook.yml), rebuild the VM
+ it's reproducible
+ easy to keep up to date (just rebuild with updated components)
- **but**: need to learn how to build the VM

Quantum Mobile encapsulates components in
[ansible roles](https://docs.ansible.com/ansible/latest/user_guide/playbooks_reuse_roles.html)
which are selected in the [`playbook.yml`](playbook.yml) file.
You can choose from our [growing repository of roles](https://galaxy.ansible.com/marvel-nccr) or [write your own](https://github.com/marvel-nccr/cookiecutter-ansible-role).

## Publishing customized VMs

If you would like to publish a customized version of Quantum Mobile, we recommend that you

1. Fork this repository
1. Give your VM a different name to avoid confusion
1. Adapt `globalconfig.yml`, `EULA.txt` and `README.md` appropriately
1. Pull the latest changes from time to time to keep things up to date

Note: If you are developing new ansible roles for computational materials
science applications and would like to make them easier to find,
we'd be happy to host them under the marvel-nccr github organisation
- just [drop us a line](mailto:leopold.talirz@gmail.com).
Please see the [Quantum Mobile Wiki](https://github.com/marvel-nccr/quantum-mobile/wiki) on how to adapt Quantum Mobile for your course / tutorial / ....

## Contact

Expand Down
2 changes: 1 addition & 1 deletion Vagrantfile
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ Vagrant.configure(2) do |config|
#config.vm.box = "bento/ubuntu-16.04"
#config.vm.box_version = "201803.24.0"
config.vm.box = "bento/ubuntu-18.04"
config.vm.box_version = "201906.18.0"
#config.vm.box_version = "201910.21.0"
#config.vm.box = "ubuntu/xenial64"
config.vm.boot_timeout = 60

Expand Down
2 changes: 2 additions & 0 deletions ansible.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,5 @@ bin_ansible_callbacks = True
# (i.e. executes .profile)
# See https://askubuntu.com/a/376386/715125
ansible_su_flags = "- "

pipelining = True
2 changes: 2 additions & 0 deletions create_image.sh
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ vdisk_path_grep=`vboxmanage showvminfo --machinereadable "$vm_id" | grep vmdk `
[[ $vdisk_path_grep =~ ^.*=\"(.*)\"$ ]]
vdisk_path=${BASH_REMATCH[1]}
vm_vdisk_size=`du -sh "$vdisk_path" | awk '{print $1}' `
echo "### vdisk size: $vm_vdisk_size"
echo "### image size: $vm_image_size"

export fname vm_version vm_user vm_password
export vm_image_size vm_image_md5 vm_vdisk_size
Expand Down
6 changes: 4 additions & 2 deletions globalconfig.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
---
# Caution: This file is read by vagrant, ansible and bash
vm_name: "Quantum Mobile"
vm_version: "19.09.0"
vm_version: "19.12.0RC1"
vm_description: "A Virtual Machine for Computational Materials Science"
vm_url: "https://github.com/marvel-nccr/marvel-virtualmachine"
vm_author: "MARVEL NCCR and MaX CoE"
vm_author_url: "http://nccr-marvel.ch"
vm_release_notes_file: "${HOME}/Desktop/RELEASENOTES.txt"
vm_release_notes_file: "${HOME}/Desktop/release_notes.txt"
vm_readme_file: "${HOME}/Desktop/README.md"

# VM configuration
vm_hostname: "qmobile"
Expand All @@ -17,6 +18,7 @@ vm_cpus: 2
vm_vram: 128
vm_shared_folder: "/shared"
vm_codes_folder: "${HOME}/codes"
vm_data_folder: "/usr/local/share"
vm_examples_folder: "${HOME}/examples"
vm_headless: False
vm_browser: chromium-browser # 'chromium-browser' or 'firefox'
Expand Down
5 changes: 0 additions & 5 deletions host_vars/aws_aiida.yml

This file was deleted.

1 change: 0 additions & 1 deletion host_vars/aws_ubuntu.yml

This file was deleted.

2 changes: 0 additions & 2 deletions hosts
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
[vms:vars]
ansible_ssh_common_args= -F vagrant-ssh
# modify this line to switch to python2
ansible_python_interpreter=/usr/bin/python3
[vms]
default ansible_user=vagrant
2 changes: 0 additions & 2 deletions other_stuff/upload_image.txt

This file was deleted.

20 changes: 14 additions & 6 deletions playbook.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@
- name: set up the VM
hosts: default
vars:
- release_notes: True
- release_notes: true
- release_notes_vm_user: "{{ vm_user }}"
- run_tests: False
- clean: False
- run_tests: true
- clean: false
- root_user: root
- cloud_platform: virtualbox
roles:
Expand Down Expand Up @@ -60,9 +60,10 @@
qm_customizations_vm_name: "{{ vm_name }}"
qm_customizations_vm_version: "{{ vm_version }}"
qm_customizations_vm_author: "{{ vm_author }}"
qm_customizations_vm_cpus: "{{ vm_cpus }}"
qm_customizations_headless: "{{ vm_headless }}"
qm_customizations_codes_folder: "{{ vm_codes_folder }}"
qm_customizations_examples_folder: "{{ vm_examples_folder }}"
qm_customizations_data_folder: "{{ vm_data_folder }}"
- role: marvel-nccr.editors
tags: editors
vars:
Expand All @@ -75,6 +76,8 @@
slurm_memory: "{{ vm_memory }}"
- role: marvel-nccr.quantum_espresso
tags: quantum_espresso
vars:
quantum_espresso_data_folder: "{{ vm_data_folder }}"
- role: marvel-nccr.yambo
tags: yambo
- role: marvel-nccr.fleur
Expand All @@ -85,20 +88,25 @@
tags: cp2k
#vars:
# cp2k_installation_route: "apt"
- role: marvel-nccr.wannier90
tags: wannier90
# Wannier90 3.0 bundled with QE
#- role: marvel-nccr.wannier90
# tags: wannier90
#- role: marvel-nccr.bigdft
# tags: bigdft
- role: marvel-nccr.aiidalab
become: true
become_user: "{{ vm_user }}"
tags: aiidalab
vars:
aiidalab_headless: "{{ vm_headless }}"
# note: installing aiida role after aiidalab role, since aiida role has latest AiiDA version
- role: marvel-nccr.aiida
tags: aiida
become: true
become_user: "{{ vm_user }}"
vars:
aiida_code_folder: "{{ vm_codes_folder }}"
aiida_data_folder: "{{ vm_data_folder }}/aiida"
aiida_localhost_cpus: "{{ vm_cpus }}"
aiida_localhost_scheduler: "{{ vm_scheduler }}"
aiida_examples_folder: "{{ vm_examples_folder }}"
29 changes: 13 additions & 16 deletions requirements.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,34 +8,31 @@
- src: marvel-nccr.add_user
version: v0.2.1
- src: marvel-nccr.simulationbase
version: v1.0.0
version: v1.0.5
- src: marvel-nccr.ubuntu_desktop
version: v1.0.0
version: v1.0.1
- src: marvel-nccr.quantum_mobile_customizations
version: v1.0.0
version: v1.0.4
- src: marvel-nccr.editors
version: v1.0.1
- src: marvel-nccr.slurm
version: v1.0.0
- src: marvel-nccr.quantum_espresso
version: v1.0.1
version: v1.1.2
- src: marvel-nccr.yambo
version: v1.0.0
version: v1.0.2
- src: marvel-nccr.fleur
version: v1.0.0
version: v1.0.2
- src: marvel-nccr.siesta
version: v1.0.1
- src: marvel-nccr.cp2k
version: v1.0.1
- src: marvel-nccr.wannier90
version: v1.0.0
#- src: marvel-nccr.aiida
# version: v0.1.2
- src: https://github.com/marvel-nccr/ansible-role-aiida.git
version: develop
name: marvel-nccr.aiida
#- src: marvel-nccr.aiidalab
# version: v0.1.2
- src: https://github.com/marvel-nccr/ansible-role-aiidalab.git
version: develop
name: marvel-nccr.aiidalab
- src: marvel-nccr.aiida
version: v1.0.1
#- src: https://github.com/marvel-nccr/ansible-role-aiida.git
# version: develop
# name: marvel-nccr.aiida
- src: marvel-nccr.aiidalab
version: v1.0.1

0 comments on commit 45f26ff

Please sign in to comment.