Skip to content

Commit

Permalink
Merge pull request #100 from marvel-nccr/develop
Browse files Browse the repository at this point in the history
merge release 19.09
  • Loading branch information
ltalirz authored Sep 1, 2019
2 parents c8f1923 + dc91983 commit e1afa84
Show file tree
Hide file tree
Showing 44 changed files with 98 additions and 1,901 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,4 @@ other_stuff/*/*.png

# roles & dependencies
roles/marvel-nccr*
roles/gantsign*
29 changes: 29 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,34 @@
# Changelog

## Quantum Mobile v19.09.0

### Improvements
* first official Quantum Mobile release with AiiDA 1.0
* python environment switched from 2.7 to 3.6

### Software updates
* aiida-core v1.0.0b6
* aiida-quantumespresso v3.0.0a4
* aiidalab v19.08.0a1

## Quantum Mobile v19.07.0

### Improvements
* now installing fixed versions of ansible roles for improved reproducibility
and tracking of changes between Quantum Mobile releases
* now installing codes system-wide for better reuse in servers
+ following ansible conventions

### Software updates
* aiidalab v19.05.3

### Build process
* ansible 2.7.10
* Vagrant v2.2.5
* vbguest v0.19.0
* bento/ubuntu-18.04 v201906.18.0
* Virtualbox v6.0.10

## Quantum Mobile v19.03.0

### Improvements
Expand Down
6 changes: 4 additions & 2 deletions Vagrantfile
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ Vagrant.configure(2) do |config|
vb.customize ["modifyvm", :id, "--vram", gconfig['vm_vram']]
# makes mouse/typing more responsive
vb.customize ["modifyvm", :id, "--accelerate3d", "on"]
# see https://github.com/marvel-nccr/quantum-mobile/issues/99
vb.customize ["modifyvm", :id, "--graphicscontroller", "vboxsvga"]
vb.customize ["modifyvm", :id, "--clipboard", "bidirectional"]
vb.customize ["modifyvm", :id, "--draganddrop", "bidirectional"]
# turn off remote display (requires Virtualbox Extension pack)
Expand All @@ -51,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 = "201812.27.0"
config.vm.box_version = "201906.18.0"
#config.vm.box = "ubuntu/xenial64"
config.vm.boot_timeout = 60

Expand All @@ -74,7 +76,7 @@ Vagrant.configure(2) do |config|
ansible.verbose = "v"
ansible.playbook = "playbook.yml"
ansible.extra_vars = {
ansible_python_interpreter: "/usr/bin/python2.7",
ansible_python_interpreter: "/usr/bin/python3",
}
ansible.raw_arguments = Shellwords.shellsplit(ENV['ANSIBLE_ARGS']) if ENV['ANSIBLE_ARGS']
end
Expand Down
4 changes: 2 additions & 2 deletions globalconfig.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
# Caution: This file is read by vagrant, ansible and bash
vm_version: "19.03.0"
vm_name: "Quantum Mobile"
vm_version: "19.09.0"
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"
Expand All @@ -20,4 +20,4 @@ vm_codes_folder: "${HOME}/codes"
vm_examples_folder: "${HOME}/examples"
vm_headless: False
vm_browser: chromium-browser # 'chromium-browser' or 'firefox'
vm_scheduler: slurm # 'slurm' or 'torque'
vm_scheduler: slurm # 'slurm' or 'direct'
2 changes: 2 additions & 0 deletions hosts
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
[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
6 changes: 4 additions & 2 deletions other_stuff/reconnect_vagrant.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
In order to connect vagrant to a new VM in Virtualbox:
In order to connect vagrant to a new VM in Virtualbox, use ./reconnect_vagrant.sh

### Old instructions

1. Get uuid of machine from: vboxmanage list vms
2. echo "<the-uuid>" > .vagrant/machines/default/virtualbox/id
Expand All @@ -10,7 +12,7 @@ folder which contains, amongst other things, the private key.

3. cp ~/.vagrant.d/insecure_private_key .vagrant/machines/default/virtualbox/
4. Generate the corresponding public key
ssh-keygen -y -f ~/.vagrant.d/insecure_private_key
ssh-keygen -y -f ~/.vagrant.d/private_key
5. Use the Virtualbox GUI to paste the public key inside the VM:
mkdir -p ~/.ssh
vim ~/.ssh/authorized_keys
Expand Down
68 changes: 25 additions & 43 deletions playbook.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
---
- name: Install ansible prerequisites
hosts: default
gather_facts: no
roles:
- marvel-nccr.ansible_prerequisites

- name: Add vm user
hosts: default
gather_facts: no
pre_tasks:
Expand All @@ -20,38 +14,35 @@
debug:
msg: Connecting to host '{{ inventory_hostname }}' as user '{{ ansible_user }}'
roles:
- name: add user {{ vm_user }} with key
role: marvel-nccr.add_user
vars:
add_user_name: "{{ vm_user }}"
add_user_password: "{{ vm_password }}"
add_user_sudo: True

# Note: it is important to pass variables to roles using the 'vars' dictionary.
- role: marvel-nccr.ansible_prerequisites

# Note: Pass variables to roles using the 'vars' dictionary!
# If variables are passed on the same indentation level as the role, the variable is
# set correctly inside the role, but following roles will read the *default*
# value of the variable (as defined inside the role).
- name: set up the VM
hosts: default
become: True
become_user: "{{ vm_user }}"
pre_tasks:
- name: import global variables
tags: always
include_vars:
file: globalconfig.yml
vars:
- release_notes: True
- release_notes_vm_user: "{{ vm_user }}"
- run_tests: False
- clean: False
- root_user: root
- cloud_platform: virtualbox
roles:
- name: add user {{ vm_user }} with key
role: marvel-nccr.add_user
vars:
add_user_name: "{{ vm_user }}"
add_user_password: "{{ vm_password }}"
add_user_groups:
- "{{ vm_user }}"
- sudo
add_user_passwordless_sudo: true
- role: marvel-nccr.simulationbase
tags: simulationbase
vars:
simulationbase_vm_user: "{{ vm_user }}"
simulationbase_vm_user_public_key: "{{ lookup('file', './keys/aiida_tutorial_aiidaaccount.pub') }}"
simulationbase_hostname: "{{ vm_hostname }}"
simulationbase_codes_folder: "{{ vm_codes_folder }}"
- role: marvel-nccr.ubuntu_desktop
Expand All @@ -74,49 +65,40 @@
qm_customizations_examples_folder: "{{ vm_examples_folder }}"
- role: marvel-nccr.editors
tags: editors
vars:
editors_vm_user: "{{ vm_user }}"
- role: marvel-nccr.slurm
tags: slurm
vars:
slurm_hostname: "{{ vm_hostname }}"
slurm_cpus: "{{ vm_cpus }}"
slurm_memory: "{{ vm_memory }}"
# - role: marvel-nccr.torque
# tags: torque
# vars:
# torque_hostname: "{{ vm_hostname }}"
# torque_cpus: "{{ vm_cpus }}"
- role: marvel-nccr.quantum_espresso
tags: quantum_espresso
vars:
quantum_espresso_code_folder: "{{ vm_codes_folder }}"
- role: marvel-nccr.yambo
tags: yambo
vars:
yambo_code_folder: "{{ vm_codes_folder }}"
- role: marvel-nccr.fleur
tags: fleur
vars:
fleur_code_folder: "{{ vm_codes_folder }}"
- role: marvel-nccr.siesta
tags: siesta
vars:
siesta_code_folder: "{{ vm_codes_folder }}"
- role: marvel-nccr.cp2k
tags: cp2k
vars:
cp2k_code_folder: "{{ vm_codes_folder }}"
#vars:
# cp2k_installation_route: "apt"
- role: marvel-nccr.wannier90
tags: wannier90
vars:
wannier90_code_folder: "{{ vm_codes_folder }}"
- role: marvel-nccr.aiidalab
become: true
become_user: "{{ vm_user }}"
tags: aiidalab
vars:
aiidalab_headless: "{{ vm_headless }}"
- role: marvel-nccr.aiida
tags: aiida
become: true
become_user: "{{ vm_user }}"
vars:
aiida_code_folder: "{{ vm_codes_folder }}"
aiida_localhost_cpus: "{{ vm_cpus }}"
aiida_localhost_scheduler: "{{ vm_scheduler }}"
aiida_examples_folder: "{{ vm_examples_folder }}"
- role: marvel-nccr.aiidalab
tags: aiidalab
vars:
aiidalab_headless: "{{ vm_headless }}"
48 changes: 26 additions & 22 deletions requirements.yml
Original file line number Diff line number Diff line change
@@ -1,37 +1,41 @@
---
# Needed to modify this role for become_user
# See https://github.com/marvel-nccr/quantum-mobile/issues/67
#- src: gantsign.default-web-browser
# version: 3.1.0
- src: gantsign.default-web-browser
version: 3.2.0
- src: marvel-nccr.ansible_prerequisites
version: master
version: v0.1.0
- src: marvel-nccr.current_user
version: master
version: v0.1.0
- src: marvel-nccr.add_user
version: master
version: v0.2.1
- src: marvel-nccr.simulationbase
version: master
version: v1.0.0
- src: marvel-nccr.ubuntu_desktop
version: master
version: v1.0.0
- src: marvel-nccr.quantum_mobile_customizations
version: master
version: v1.0.0
- src: marvel-nccr.editors
version: master
version: v1.0.1
- src: marvel-nccr.slurm
version: master
version: v1.0.0
- src: marvel-nccr.quantum_espresso
version: master
version: v1.0.1
- src: marvel-nccr.yambo
version: master
version: v1.0.0
- src: marvel-nccr.fleur
version: master
version: v1.0.0
- src: marvel-nccr.siesta
version: master
version: v1.0.1
- src: marvel-nccr.cp2k
version: master
version: v1.0.1
- src: marvel-nccr.wannier90
version: master
- src: marvel-nccr.aiida
version: master
- src: marvel-nccr.aiidalab
version: master
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
19 changes: 0 additions & 19 deletions roles/gantsign.default-web-browser/.editorconfig

This file was deleted.

43 changes: 0 additions & 43 deletions roles/gantsign.default-web-browser/.gitattributes

This file was deleted.

Loading

0 comments on commit e1afa84

Please sign in to comment.