----\r
-# file: roles/common/tasks/main.yaml\r
-\r
-- name: Ubuntu specific\r
- import_tasks: ubuntu_x86_64.yaml\r
- when: ansible_distribution|lower == 'ubuntu' and ansible_machine == 'x86_64'\r
-\r
-- name: Set hostname\r
- hostname:\r
- name: '{{ hostname }}'\r
- tags: set-hostname\r
-\r
-- name: Ensure hostname is in /etc/hosts\r
- lineinfile:\r
- path: '/etc/hosts'\r
- regexp: '^{{ ansible_default_ipv4.address }}.+$'\r
- line: '{{ ansible_default_ipv4.address }} {{ hostname }}.linuxfoundation.org'\r
- tags: set-hostname\r
-\r
-- name: Set sudoers\r
- lineinfile:\r
- path: '/etc/sudoers'\r
- state: 'present'\r
- regexp: '^%admin ALL='\r
- line: '%admin ALL=(ALL) ALL'\r
- validate: '/usr/sbin/visudo -cf %s'\r
- tags: set-sudoers\r
-\r
-- name: Set sudoers\r
- lineinfile:\r
- path: '/etc/sudoers'\r
- state: 'present'\r
- regexp: '^%sudo'\r
- line: '%sudo ALL=(ALL:ALL) NOPASSWD: ALL'\r
- validate: '/usr/sbin/visudo -cf %s'\r
- tags: set-sudoers\r
-\r
-- name: Copy grub file\r
- template:\r
- src: 'files/grub'\r
- dest: '/etc/default/grub'\r
- owner: 'root'\r
- group: 'root'\r
- mode: '644'\r
- notify: ['Update GRUB']\r
- tags: copy-grub\r
+---
+# file: roles/common/tasks/main.yaml
+
+- name: Add permanent proxy settings
+ lineinfile:
+ path: "/etc/environment"
+ state: "present"
+ line: "{{ item.key }}={{ item.value }}"
+ with_dict: "{{ proxy_env }}"
+ when: proxy_env is defined
+ tags:
+ - set-proxy
+
+- name: Inst - Update package cache (apt)
+ apt:
+ update_cache: yes
+ cache_valid_time: 3600
+ when:
+ - ansible_distribution|lower == 'ubuntu'
+ tags:
+ - common-inst-prerequisites
+
+- name: Inst - Prerequisites
+ package:
+ name: "{{ packages | flatten(levels=1) }}"
+ state: latest
+ tags:
+ - common-inst-prerequisites
+
+- name: Install CSIT PIP requirements
+ pip:
+ name:
+ - "ecdsa==0.13.3"
+ - "paramiko==2.6.0"
+ - "pycrypto==2.6.1"
+ - "pypcap==1.2.3"
+ - "PyYAML==5.1.1"
+ - "requests==2.22.0"
+ - "robotframework==3.1.2"
+ - "scapy==2.4.3"
+ - "scp==0.13.2"
+ - "ansible==2.7.8"
+ - "dill==0.2.8.2"
+ - "numpy==1.17.3"
+ - "hdrhistogram==0.6.1"
+ - "plotly==4.1.1"
+ - "PTable==0.9.2"
+ - "Sphinx==2.2.1"
+ - "sphinx-rtd-theme==0.4.0"
+ - "sphinxcontrib-programoutput==0.15"
+ - "sphinxcontrib-robotdoc==0.11.0"
+ - "alabaster==0.7.12"
+ - "Babel==2.7.0"
+ - "bcrypt==3.1.7"
+ - "certifi==2019.9.11"
+ - "cffi==1.13.2"
+ - "chardet==3.0.4"
+ - "cryptography==2.8"
+ - "docutils==0.15.2"
+ - "future==0.18.2"
+ - "idna==2.8"
+ - "imagesize==1.1.0"
+ - "Jinja2==2.10.3"
+ - "MarkupSafe==1.1.1"
+ - "packaging==19.2"
+ - "pbr==5.4.3"
+ - "pycparser==2.19"
+ - "Pygments==2.4.2"
+ - "PyNaCl==1.3.0"
+ - "pyparsing==2.4.4"
+ - "python-dateutil==2.8.1"
+ - "pytz==2019.3"
+ - "retrying==1.3.3"
+ - "six==1.13.0"
+ - "snowballstemmer==2.0.0"
+ - "sphinxcontrib-applehelp==1.0.1"
+ - "sphinxcontrib-devhelp==1.0.1"
+ - "sphinxcontrib-htmlhelp==1.0.2"
+ - "sphinxcontrib-jsmath==1.0.1"
+ - "sphinxcontrib-qthelp==1.0.2"
+ - "sphinxcontrib-serializinghtml==1.1.3"
+ - "urllib3==1.25.6"
+ tags:
+ - install-pip
+
+- name: Install CSIT PIP requirements - Pandas and SciPy workaround
+ pip:
+ name:
+ - "pandas==0.25.3"
+ - "scipy==1.1.0"
+ tags:
+ - install-pip
+
+- name: Install Meson (repository version is too old)
+ pip:
+ name:
+ - "meson==0.47.1"
+ tags:
+ - install-meson
+
+- name: Set sudoers admin
+ lineinfile:
+ path: "/etc/sudoers"
+ state: "present"
+ regexp: "^%admin ALL="
+ line: "%admin ALL=(ALL) ALL"
+ validate: "/usr/sbin/visudo -cf %s"
+ tags:
+ - set-sudoers
+
+- name: Set sudoers sudo
+ lineinfile:
+ path: "/etc/sudoers"
+ state: "present"
+ regexp: "^%sudo"
+ line: "%sudo ALL=(ALL:ALL) NOPASSWD: ALL"
+ validate: "/usr/sbin/visudo -cf %s"
+ tags:
+ - set-sudoers
+
+- meta: flush_handlers