...
 
Commits (385)
local
*.retry
host_vars/127.0.0.1
ansible2.5/
get_ipa_users.py
missing_dnf.py
Calling host: lasXXX.las.kit.edu (Fedora XX)
Failing nodes: lasXXX, lasXXX
Summary
-------
(Summarize the bug encountered concisely)
Steps to reproduce
------------------
(How one can reproduce the issue - this is very important)
What is the current bug behavior?
---------------------------------
(What actually happens)
What is the expected correct behaviour?
---------------------------------------
(What you should see instead)
Relevant logs and/or screenshots
--------------------------------
```
(Paste any relevant logs - please use code blocks (```) to format console output,
logs, and code as it's very hard to read otherwise.)
```
Possible fixes
--------------
(If you can, link to the line of code that might be responsible for the problem)
/label ~bug
/cc @gethmann
Host: lasXXX.las.kit.edu
OS: Fedora XX
Software name:
--------------
Software installation instruction if not in repos:
--------------------------------------------------
Possibly also interesting for:
-------------------------------
/label ~softwarerequest ~suggestion
/cc @project-manager
repos:
- repo: https://github.com/willthames/ansible-lint.git
sha: v3.4.16
hooks:
- id: ansible-lint
files: \.(yaml|yml)$
- repo: https://github.com/pre-commit/pre-commit-hooks.git
sha: v1.1.1
hooks:
- id: trailing-whitespace
- id: check-added-large-files
MIT License
Copyright (c) 2018 Julian Gethmann
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
# [Ansible](https://docs.ansible.com/ansible/index.html) repository for LAS/CS NSQ computer
You need to have access to this repository (you need to add your public ssh-key (`ssh-keygen`) to your profile here).
Then you can clone the git repository to work on in locally.
`git clone git@git.scc.kit.edu:las/ansible.git`
Add your computer to the `hosts` file or if you are just testing add it to the local file.
Add your ``hostname`` under each role name (the name in the square brackets) you want to be run on your computer.
Also create a new file which is named
after your [fully-qualified-domain-name](https://de.wikipedia.org/wiki/Domain_(Internet)#Fully_Qualified_Domain_Name_.28FQDN.29}) (FQDN) in the `host_vars` directory including a [yaml](https://docs.ansible.com/ansible/YAMLSyntax.html) list with some host specific configuration variables, e. g. copy another similar host and adjust it.
These files do not have the `.yml` extension and do not start with `---` as most of the other yaml files do.
Then create a file named after your FQDN with the extension ``.yml`` in the main directory of ansible which includes all the roles one want to run. This step needs root privileges and therefore makes only sense for the first installation of a computer.
Install ansible and some dependencies:
```
dnf install ansible git python3-dnf libselinux-python python3-netaddr
```
Run
``` bash
git clone git@git.scc.kit.edu:las-it-organisation/32-0-IT-InstructionsAndRules/ansible.git
cd ansible
sudo ansible-playbook --limit $(hostname -f) --vault-id @prompt sites.yml
```
* If you only want some parts of the roles to be run, you can use the option `-t TAGNAME` to run only those tasks with the given tag.
* The vault-password is known to the usual suspects.
Unfortunately you need to know the vault password to let ansible run.
If you have got root access to obelix, then you should try to run ansible from that host.
The repository is located at `/root/ansible` and you should pull before running ansible. The advantage is, that it is tested.
There might be a tmux running for that purpose anyway.
### Ask for new software
Open an issue in the GitLab issue tracker and use the template for softwarerequests.
If the software is in the Fedora repositories and you think it makes sense to
install this software only on your computer, you can also provide a merge/pull
requst by adding the software name to the list of `extra_software` in the
`host_vars` file for your computer.
## How to get new software on your computer
## Available roles
* common.yml: basic configuration for all LAS/NSQ computers
* clients.yml: all computers not acting as a server (only) ^1
* desktop.yml: all desktop computers including laptops (having X11/Wayland)
* graphics.yml: fundamental graphics software (Inkscape, Gimp)
* python.yml: basic python_stack for scientific Python usage (including fitting) ^1
* ipynb.yml: IPython/Jupyter notebook ^1
* nfs.yml:
* nfs-server: export /las-archiv1 to our network
* lasarchiv: client side mount las126/las-archiv1
* admin.yml: tools for administrators
* chrome.yml: Google Chrome for Fedora (for Adobe Connect usage)
* dhcpd.yml: DHCPd primary and secondary server on Fedora
* elegant.yml: elegant (no Pelegant, yet)
* inovesa.yml: [Inovesa](https://github.com/Inovesa/Inovesa)
* kdev.yml: KDevelope (with Python PlugIn) ^1
* latex.yml: basic LaTeX installation (Arial not yet) ^1
* opera.yml: Cobham's Opera3d (client) ^2 ^3
* pycharm.yml: Cross platform Python IDE: [PyCharm](https://www.jetbrains.com/pycharm/) IDE
* remmina.yml: remmina a Remote Desktop Protocol (Windows remote) client for e. g. [rds.scc.kit.edu](https://rds.scc.kit.edu)
* ripgrep.yml: ripgrep the better grep
* undulator_control.yml: Install the software stack that is necessary to develop the control system for the JENA TGU experiment
* zotero.yml: A citation management software
* lab.yml: Lab infrastructure (DHCPd)
^1: (also put your FQDN to the \[common\] section in the hosts file as it depends hereon)
^3: (also put your FQDN to the \[lasarchiv\] section in the hosts file as it depends hereon)
### ^2 Opera
After installing Opera via ansible you must confirm the license agreement at first start and go to "Licensing -> Set License Path" and switch to `Other computer(s)` and fill in `@opera.las.kit.edu`.
# Develop new roles, extend or modify existing ones and update roles for new software
## Branches
All roles in the master branch should work and should not brake on any of our systems (desktop, server, simulation, notebooks). The `site.yml` should always be runnable and include all roles that are stable and not explicitly for setup purposes only.
For development and testing you should use development branches like `dev-latex`.
You can check the syntax of the files by running `ansible-playbook --check-syntax filename.yml` (or by using the pre-commit-hook from the Snipplets.
If you just want to install one or many packages you can use `kdev.yml` as a basis or if it is not interesting for others you might want to add it to your host file instead.
Be aware that the development branches here are not save and the owner might force push to them!
# Run as admin
## Bootstraping
In this example the client to bootstrap may be `lasXXX` and the installation takes place from the server `obelix`.
The prompts `#` show that you are working at root.
* Enable SSH on the new host (`lasXXX$ sudo systemctl start sshd && sudo systemctl enable sshd`)
* Connect to the ansible server (`lasXXX$ ssh nie@obelix.las.kit.edu`)
* Become root (`obelix$ sudo -s`)
* Add your SSH-key to the host `obelix# ssh-copy-id lasXXX.las.kit.edu`
* In case it does not work, you have to copy it by hand (copy the content of your key e.g. `~/.ssh/id_rsa.pub` to the new computer root's `~/.ssh/authorized_keys` file and set the access rights to 600)
* and enable Key-based root login. (in `/etc/ssh/sshd_config` write `PermitRootLogin without-password`)
* Open a new terminal, install ansible dependencies on the new host: `lasXXX$ sudo dnf install sudo ansible git python3-dnf python3-netaddr python3-libselinux`
* Go to our ansible repository, open `hosts`, to edit the `hosts` file for entries of `lasXXX.las.kit.edu`
* Go to our ansible repository, open `host_vars`, to create a file ``lasXXX.las.kit.edu`` with similar contents as others
* Open a new terminal, Go to obelix, become root, by `ssh nie@obelix.las.kit.edu` and `sudo -s`
* Go to ansible, by `cd /root/ansible`
* Synchronise our ansible git repository to obelix, by `git pull`
* Run `ansible-playbook --vault-id @prompt sites.yml --limit lasXXX.las.kit.edu`
### Bootstrap IPA hosts
**Warning** Please run the following commands just once! In case anything went wrong, follow the instructions of [Decommission/Uninstall a host](#decommissionuninstall-a-host)
* Get a Kerberos ticket (``obelix# kinit -f admin@LAS.KIT.EDU``)
* Go to ansible, by `cd /root/ansible`
* Run `ansible-playbook -l lasXXX.las.kit.edu add_ipa_host.yml --vault-id @prompt`
and provide the root password for the new host.
## Decommission/Uninstall a host
* edit the ``add_ipa_host.yml`` and uncomment the uninstall step in it.
## Edit encrypted files
* You can either use `ansible-vault edit --vault-id @prompt group_vars/all/vault.yml` to edit the file in your editor mentioned in the `$EDITOR` environment variable or
* you can decrypt the file `ansible-vault decrypt --vault-id @prompt group_vars/all/vault.yml`, edit the file and encrypt it again `ansible-vault encrypt --ask-vault-pass group_vars/all/vault.yml`
The first one is of cause the preferred one, because there is no risk to add a unencrypted file to the repo.
# Nice to know / Random tips
Sometimes it's annoying to wait for all the updates that are installed when running the common role. To skip this step you can add the option `--skip-tags="update"`.
\ No newline at end of file
---
- hosts: all
remote_user: root
vars:
ipa_host: "{{ computer_name }}.las.kit.edu"
ipa_host_ip: "129.13.238.{{ ip_suffix }}"
ipa_domain: las.kit.edu
vars_prompt:
- name: "ipa_pass"
prompt: "What is the admin@LAS.KIT.EDU password?"
private: yes
# - name: uninstall host
# become: yes
# command: ipa-client --uninstall -U
roles:
- ipa_hosts
- hosts: admin_pcs
tasks:
- dnf: name={{item}} state=latest
become: yes
with_items: admin_software
- name: install admin software
become: yes
dnf:
name: "{{ item }}"
state: present
with_items: "{{ admin_software }}"
[defaults]
inventory=hosts
inventory = hosts
roles_path = roles
fact_caching = jsonfile
fact_caching_connection = cachedir
fact_caching_timeout = 86400
[inventory]
[privilege_escalation]
[paramiko_connection]
[ssh_connection]
ssh_args = -C -o ControlMaster=auto -o ControlPersist=3600s
pipelining = True
remote_user=gethmann
roles_path=roles
become=False
become_user="root"
become_ask_pass=True
become_method="sudo"
[persistent_connection]
connection_timeout = 3600
command_timeout = 3600
[accelerate]
[selinux]
[colors]
[diff]
- hosts: chrome
roles:
- google-chrome
- hosts: all
roles:
- common
- hosts: cn
become: yes
tasks:
- hostname: name=las-bernhard.anka.kit.edu
tags:
- cn
- always
- hosts: desktop
tasks:
- dnf: name={{item}} state=latest
become: yes
when: ansible_distribution == 'Fedora'
with_items:
- desktop_software
- name: install desktop software
dnf:
name: "{{ desktop_software }}"
state: present
become: yes
when: ansible_distribution == 'Fedora'
- hosts: dhcpd
roles:
- dhcpd
- hosts: elegant
roles:
- elegant
---
- hosts: epics
roles:
- epics
- hosts: graphics
roles:
- graphics
---
# file: group_vars/all
common_software:
- git
- vim
- htop
- tmux
- iotop
- iftop
- ncdu
- dmidecode
client_software:
- gnuplot
handy_software:
- zsh
admin_software:
- ansible
- sshpass
- git
- rsync
- freeipa-admintools
- python-passlib
- nmap
- createrepo
- ansible-lint
- ansible-inventory-grapher
python_software:
- python3-scipy
- python3-matplotlib
# - anaconda3
client_software:
- kpcli
desktop_software:
- thunderbird
# - king/Clipboard
# - dagolden/Capture-Tiny
- firefox
- libreoffice
- bwSyncAndShare
ipaserver: las101.las.kit.edu
ipaserver2: las126.las.kit.edu
sudoer:
- bernhard
- gethmann
userinstall_vars:
- {name: "gethmann", password: "$6$HEmrpe9IMPI7nwxK$7VyjN.1tf/bJ2JJUeXQa.HEK3PFB1ggUVqpvMD0M/b/Ln.8QkzSMit9xukPaNhVg4caTnQBmcn1DXVwbfCmJt."}
- {name: "bernhard", password: "$6$Q9NiWWvweGVfXXUP$6jhQWNGEs1f/RZc2aeDJ4Wv7huT5eAyW/uO0hOr8Yzi.h5Sa149LDpzp6utQI2VbnKF6O7TfpZeoKHFaNKGY51"}
---
# file: group_vars/all/vars.yml
common_software:
- git
- vim
- tmux
# diagnostic for admins
- htop # processes
- iotop # disk IO
- iftop # network IO
- ncdu # nice disk usage
- dmidecode # general hardware information
- lm_sensors # cpu/gpu temperatures
- hddtemp # HDD temperatures
- policycoreutils-python-utils
client_software:
- gnuplot
- kpcli
admin_software:
- ansible
- sshpass
- git
- rsync
- freeipa-admintools
- python-passlib
- nmap
- createrepo
- ansible-lint
- ansible-inventory-grapher
- pandoc
desktop_software:
- thunderbird
- firefox
- libreoffice
- "https://download.bwsyncandshare.kit.edu/clients/bwSyncAndShare_Latest.x86_64.rpm"
- perl-Clipboard
- perl-Capture-Tiny
# this should be the IP or in the sshd_config the "UseDNS" must be set to yes
ansible_server: 129.13.238.126
# file: group_vars/all/vault.yml
sudoer: "{{ vault_sudoer }}"
userinstall_vars: "{{ vault_userinstall_vars }}"
admin_mail: "{{ vault_admin_mail }}"
rootkey: "{{ vault_rootkey }}"
# IPA
gid: "{{ vault_gid }}"
ipaserver1: "{{ vault_ipaserver1 }}"
ipaserver2: "{{ vault_ipaserver2 }}"
ipaserver3: "{{ vault_ipaserver3 }}"
ipa_users: "{{ vault_ipa_users }}"
undine_password: "{{ vault_undine_password }}"
nfs_server: 129.13.238.126
This diff is collapsed.
---
nfs_server: 129.13.238.126
texpath: /usr/share/texlive/texmf-local
kit_tikz:
- texlive-tikzpfeile
- texlive-tikz-feynman
- texlive-tikzmark
- texlive-tikzscale
- texlive-circuitikz
- texlive-tikzsymbols
- texlive-tikzinclude
- texlive-tikzposter
- texlive-tikz-palattice
- texlive-aobs-tikz
- texlive-tikz-3dplot
- texlive-tikz-timing
- texlive-hf-tikz
- texlive-tikzscale
- texlive-tikz-dependency
- texlive-pgfgantt
- texlive-venndiagram
- texlive-flowchart
- texlive-mycv
- texlive-pgf-spectra
texlivepackages:
- "texlive-scheme-small"
- kile
- texmaker
- texlive-epstopdf-bin
- texlive-quotmark
- texlive-hyphen-german
- texlive-babel-german
- texlive-pgfplots
- texlive-units
- texlive-mnsymbol
- texlive-pgfgantt
- texlive-pgf-umlcd
- texlive-pgf-umlsd
- texlive-prettyref
- texlive-faktor
- texlive-overpic
# Sphinx (Python docu)
- texlive-sidecap
- texlive-framed
- texlive-threeparttable
- texlive-wrapfig
- texlive-upquote
- texlive-capt-of
- texlive-multirow
- texlive-eqparbox
# fsphys/thesisvorlage-latex
- texlive-vmargin
- texlive-floatflt
- texlive-acronym
- texlive-mhchem
# KIT-{beamer,poster,brief}
- texlive-blindtext
# Bechleunigerphysik II Übung
- texlive-siunitx
- texlive-SIunits
- texlive-was
- texlive-commath
- texlive-ulem
# system docu
- texlive-draftwatermark
# JaCoW
- texlive-sttools
- texlive-boondox
- biber
- texlive-newtx
- texlive-newtxtt # jacow
# biber dependencies
# gdbm-devel
# libdb-devel
# perl-Business-ISMN
# perl-Business-ISSN
# perl-Data-Compare
# perl-Data-Dump
# perl-Data-OptList
# perl-Date-Simple
# perl-Devel-GlobalDestruction
# perl-Dist-CheckConflicts
# perl-Email-Date-Format
# perl-Exporter-Tiny
# perl-ExtUtils-Command
# perl-ExtUtils-Install
# perl-ExtUtils-MakeMaker
# perl-ExtUtils-Manifest
# perl-ExtUtils-ParseXS
# perl-File-Find-Rule
# perl-File-Slurp
# perl-File-Slurp-Tiny
# perl-IPC-Cmd
# perl-IPC-Run3
# perl-LWP-Protocol-https
# perl-List-AllUtils
# perl-List-MoreUtils
# perl-Locale-Maketext
# perl-Locale-Maketext-Simple
# perl-Log-Dispatch
# perl-Log-Dispatch-FileRotate
# perl-Log-Log4perl
# perl-MIME-Charset
# perl-MIME-Lite
# perl-MIME-Types
# perl-Mail-Sender
# perl-Mail-Sendmail
# perl-MailTools
# perl-Module-Implementation
# perl-Module-Load
# perl-Module-Load-Conditional
# perl-Module-Metadata
# perl-Module-Runtime
# perl-Mozilla-CA
# perl-Net-SMTP-SSL
# perl-Number-Compare
# perl-Package-Generator
# perl-Params-Check
# perl-Params-Util
# perl-Params-Validate
# perl-Readonly
# perl-Regexp-Common
# perl-Sub-Exporter
# perl-Sub-Exporter-Progressive
# perl-Sub-Install
# perl-Sub-Name
# perl-Sys-Syslog
# perl-Text-BibTeX
# perl-Text-Glob
# perl-Tie-Cycle
# perl-Try-Tiny
# perl-Unicode-LineBreak
# perl-XML-LibXML
# perl-XML-LibXML-Simple
# perl-XML-LibXSLT
# perl-XML-NamespaceSupport
# perl-XML-SAX
# perl-XML-SAX-Base
# perl-XML-Writer
# perl-autovivification
# perl-devel
# rrdtool-perl
# sombok
# systemtap-sdt-devel
# Xe(La)TeX
- texlive-xetex
- texlive-collection-xetex
- texlive-xetex-def
- texlive-xetexfontinfo
- texlive-xevlna
- texlive-euenc
- texlive-unicode-math
- texlive-mathspec
- texlive-xgreek
- texlive-xecolor
- texlive-fontspec
# Thought to be usefull
- texlive-texlive-de-doc
- texlive-texlive-common-doc
- texlive-texlive-docindex-doc
- texlive-ae
- texlive-cm
- texlive-cv
- texlive-ec
- texlive-ed
- texlive-fp
- texlive-gu
- texlive-hc
- texlive-lm
- texlive-t2
- texlive-alg
- texlive-doi
- texlive-dox
- texlive-eco
- texlive-ecv
- texlive-emp
- texlive-esk
- texlive-fbs
- texlive-fmp
- texlive-gmp
- texlive-hep
- texlive-iso
- texlive-lcg
- texlive-lfb
- texlive-msg
- texlive-nag
- texlive-nuc
- texlive-ofs
- texlive-pax
- texlive-pgf
- texlive-qcm
- texlive-sfg
- texlive-svg
- texlive-svn
- texlive-tap
- texlive-ucs
- texlive-uml
- texlive-uri
- texlive-url
- texlive-vpe
- texlive-base
- texlive-abbr
- texlive-acro
- texlive-bohr
- texlive-cals
- texlive-circ
- texlive-cite
- texlive-cmap
- texlive-cmll
- texlive-cmpj
- texlive-cmsd
- texlive-cool
- texlive-crop
- texlive-dhua
- texlive-epsf
- texlive-etoc
- texlive-euro
- texlive-exam
- texlive-feyn
- texlive-fink
- texlive-mycv
- texlive-nath
- texlive-pbox
- texlive-pdfx
- texlive-spot
- texlive-tikz-palattice
- texlive-biblatex
- texlive-enumitem
- texlive-ctablestack
- texlive-gitinfo2
- texlive-fncychap # e. g. Sphinx
- latexmk # sphinx
- texlive-tabulary
- texlive-latexdiff
# - texlive-latexdiff-bin
- texlive-a4wide
# systemdocu
- texlive-koma-script
- texlive-ctablestack
- texlive-appendix # wissdoc.cls needs this
- texlive-bigints
- texlive-glossaries-english
- texlive-glossaries
# texlive-glossaries-english
# texlive-datatool
# texlive-glossaries-bin
# texlive-mfirstuc
# texlive-substr
# texlive-supertabular
# texlive-tracklang
# texlive-xfor
- texlive-standalone
# texlive-filemod
# texlive-gincltex
# to be continued
- texlive-cleveref
- texlive-fonttable
- texlive-tcolorbox
- texlive-appendixnumberbeamer
#
- texlive-textpos
# multi line table cells
- texlive-makecell
opera_path: /usr/local/share/Opera_18R2
---
python3pkg:
- bumpversion
- ptpython3
- python3
- python3-ipython
- python3-matplotlib-qt4
# - python3-matplotlib-qt5 # does not work: https://github.com/matplotlib/matplotlib/pull/6854
- python3-numpy
- python3-pandas
- python3-pip
- python3-pylint
- python3-scipy
- python3-setuptools
- python3-sphinx
- python3-tox
- python3-pip
- pipenv
- llvm
- cmake
- python3-flake8
- python3-Cython
- nodejs
- nodejs-libs
- kf5-purpose-twitter
- npm
python2pkg: ""
pip3bin: /bin/pip3
ansible_user: root
user_account: richter
ip_suffix: 118
loc: 620
os: Fedora 29
computer_name: amnesix
ansible_user: root
user_account: gethmann
ip_suffix: 73
loc: 618
os: Fedora 30
computer_name: asterix
extra_software:
- subversion # for ANKA software
- borgbackup
- mosh # ssh alternative
# keepass compatible console client
- kpcli
- perl-Clipboard
- perl-Capture-Tiny
- ctags # vim tags
- zsh
- neovim
- ShellCheck
- inkscape-table
# - fd-find
- ripgrep
- fzf # fuzzy finder
- fd-find
- gsl-devel # Needed to compile Eva Burkhards code
- mupdf # better alternative to pdftk than pdfseparate+pdfunite
- evince # for fixing RIP errors when printing LaTeX posters
- screen
# PDL for undulator/wiggler Opera script
- perl-PDL
# Installing dependencies:
- perl-Devel-Peek
- perl-Inline
- perl-Inline-C
- perl-Pegex
- freeglut
- perl-B-Utils
- perl-Class-Load
- perl-Class-Tiny
- perl-Data-Dump-Streamer
- perl-Devel-OverloadInfo
- perl-Devel-PartialDump
- perl-Devel-REPL
- perl-Devel-REPL-Plugin-Completion
- perl-Devel-REPL-Plugin-DDS
- perl-Devel-REPL-Plugin-LexEnv
- perl-Devel-REPL-Plugin-MultiLine-PPI
- perl-File-HomeDir
- perl-File-Map
- perl-Filter-Simple
- perl-Getopt-Long-Descriptive
- perl-IPC-System-Simple
- perl-Lexical-Persistence
- perl-Module-Compile
- perl-Module-Pluggable
- perl-Moose
- perl-MooseX-Getopt
- perl-MooseX-Object-Pluggable
- perl-MooseX-Role-Parameterized
- perl-OpenGL
- perl-PPI
- perl-Parse-RecDescent
- perl-PerlIO-Layers
- perl-Pod-Parser
- perl-Prima
- perl-Text-Balanced
- perl-YAML-LibYAML
- perl-autodie
# Installing weak dependencies:
- perl-Text-Bidi
# End of PDL
- snapd
ansible_user: root
user_account: gutknecht
ip_suffix: 94
loc: 620
os: Fedora 31
computer_name: falbala
extra_software:
- zsh
ansible_user: root
user_account: blomley
loc: -119
os: Fedora 30
computer_name: faulus
extra_software:
- subversion # ANKA software
- zsh
ansible_user: root
user_account: gethmann
ip_suffix: 91
loc: 618
os: Fedora 30
computer_name: galantine
extra_software:
- zsh
ansible_user: root
user_account: blomley
loc: -119
os: Fedora 30
computer_name: gutemine
extra_software:
- subversion # ANKA software
- zsh
ansible_user: root
user_account: gethmann
ip_suffix: 92
loc: 618
os: Fedora 30
computer_name: homoeopatix
extra_software:
- zsh
ansible_user: root
user_account: damminsek
ip_suffix: 117
loc: 620
os: Fedora 27
computer_name: idefix
extra_software:
- mupdf
ansible_user: root
ansible_ssh_user: root
ansible_remote_user: gethmann
remote_user: gethmann
ip_suffix: 100
loc: 612
os: CentOS 7.4
computer_name: kantine
ansible_connection: local
ansible_user: gethmann
ansible_user: root
user_account: gethmann
ip_suffix: -gethmann
loc: 618
os: Fedora 28
extra_software:
- subversion # for ANKA software
- borgbackup
- mosh # ssh alternative
# keepass compatible console client
- kpcli
- perl-Clipboard
- perl-Capture-Tiny
- ctags # vim tags
- zsh
- neovim
- ShellCheck
- inkscape-table
- fd-find
- ripgrep
- fzf # fuzzy finder
ansible_user: root
ansible_ssh_user: root
ansible_remote_user: gethmann
remote_user: gethmann
ip_suffix: 101
loc: 612
os: Fedora 28
computer_name: Kneipix
# ansible_connection: local
ansible_user: root
user_account: petri
ip_suffix: 122
loc: 621
os: Fedora 26
computer_name: Falbala
extra_software:
- freecad
ansible_user: root
user_account: bernhard
ip_suffix: 93
loc: -119
os: ubuntu
computer_name: Taubenus
ansible_user: bernhard
user_account: bernhard
ip_suffix: 70
loc: 622
os: Fedora 29
computer_name: majestix
ansible_user: root
user_account: nathanael
ip_suffix: 97
loc: 620
os: Fedora 31
computer_name: methusalix
ansible_user: root
user_account: gethmann
ip_suffix: 126
loc: 618
os: Fedora 31
computer_name: obelix
extra_software:
- borgbackup
ansible_user: root
user_account: ning
ip_suffix: 115
loc: 619
os: Fedora 29
computer_name: pepe
extra_software:
- python-qt5
- "qt5-qttools-devel"
# ansible_connection: local
ansible_user: root
user_account: rossmanith
ip_suffix: 116
loc: 619
os: Fedora 29
computer_name: spuernix
ansible_user: root
user_account: tong
ip_suffix: 120
loc: 621
os: Fedora 28
computer_name: teefax
ansible_user: root
user_account: bernhard
loc: -119
os: Fedora 31
computer_name: titania
extra_software:
- subversion # ANKA software
- zsh
ansible_user: root
user_account: fatehi
ip_suffix: 96
loc: 619
os: Fedora 31
computer_name: troubadix
# stable
[las-archiv1]
las113.las.kit.edu
las111.las.kit.edu
las93.las.kit.edu
las-gethmann.las.kit.edu
[clients]
amnesix.las.kit.edu
asterix.las.kit.edu
falbala.las.kit.edu
faulus.las.kit.edu
galantine.las.kit.edu
gutemine.las.kit.edu
homoeopatix.las.kit.edu
idefix.las.kit.edu
lysander.las.kit.edu
majestix.las.kit.edu
methusalix.las.kit.edu
obelix.las.kit.edu
pepe.las.kit.edu
spuernix.las.kit.edu
teefax.las.kit.edu
troubadix.las.kit.edu
titania.las.kit.edu
[desktop]
amnesix.las.kit.edu
asterix.las.kit.edu
falbala.las.kit.edu
faulus.las.kit.edu
galantine.las.kit.edu
gutemine.las.kit.edu
homoeopatix.las.kit.edu
idefix.las.kit.edu
lysander.las.kit.edu
majestix.las.kit.edu
methusalix.las.kit.edu
pepe.las.kit.edu
spuernix.las.kit.edu
teefax.las.kit.edu
troubadix.las.kit.edu
titania.las.kit.edu
[graphics]
asterix.las.kit.edu
lysander.las.kit.edu
amnesix.las.kit.edu
galantine.las.kit.edu
homoeopatix.las.kit.edu
[lasarchiv]
amnesix.las.kit.edu
asterix.las.kit.edu
falbala.las.kit.edu
faulus.las.kit.edu
gutemine.las.kit.edu
homoeopatix.las.kit.edu
idefix.las.kit.edu
lysander.las.kit.edu
majestix.las.kit.edu
methusalix.las.kit.edu
obelix.las.kit.edu
pepe.las.kit.edu
teefax.las.kit.edu
troubadix.las.kit.edu
titania.las.kit.edu
[python]
amnesix.las.kit.edu
asterix.las.kit.edu
falbala.las.kit.edu
faulus.las.kit.edu
galantine.las.kit.edu
gutemine.las.kit.edu
homoeopatix.las.kit.edu
idefix.las.kit.edu
lysander.las.kit.edu
methusalix.las.kit.edu
pepe.las.kit.edu
teefax.las.kit.edu
troubadix.las.kit.edu
titania.las.kit.edu
[kdev] # KDevelope
[jabref]
[zotero]
asterix.las.kit.edu
idefix.las.kit.edu
lysander.las.kit.edu
[pynaff]
lysander.las.kit.edu
asterix.las.kit.edu
obelix.las.kit.edu
[pycharm]
lysander.las.kit.edu
asterix.las.kit.edu
pepe.las.kit.edu
idefix.las.kit.edu
[chrome]
lysander.las.kit.edu
[rdp]
amnesix.las.kit.edu
asterix.las.kit.edu
faulus.las.kit.edu
galantine.las.kit.edu
gutemine.las.kit.edu
homoeopatix.las.kit.edu
methusalix.las.kit.edu
troubadix.las.kit.edu
[latex]
amnesix.las.kit.edu
asterix.las.kit.edu
falbala.las.kit.edu
faulus.las.kit.edu
galantine.las.kit.edu
gutemine.las.kit.edu
homoeopatix.las.kit.edu
idefix.las.kit.edu
lysander.las.kit.edu
methusalix.las.kit.edu
pepe.las.kit.edu
teefax.las.kit.edu
troubadix.las.kit.edu
titania.las.kit.edu
[opera]
las113.las.kit.edu
las114.las.kit.edu
las-bernhard.anka.kit.edu
las111.las.kit.edu
las118.las.kit.edu
las117.las.kit.edu
las126.las.kit.edu
las-gethmann.las.kit.edu
amnesix.las.kit.edu
asterix.las.kit.edu
homoeopatix.las.kit.edu
idefix.las.kit.edu
majestix.las.kit.edu
methusalix.las.kit.edu
obelix.las.kit.edu
pepe.las.kit.edu
troubadix.las.kit.edu
[elegant]
las113.las.kit.edu
las117.las.kit.edu
las111.las.kit.edu
las126.las.kit.edu
las-gethmann.las.kit.edu
[mad8]
# depercated for Fedora >=26
[nfsserver]
obelix.las.kit.edu
# developement
[lab]
las93.las.kit.edu
# las93.las.kit.edu
faulus.las.kit.edu ansible_python_interpreter=/usr/bin/python3
gutemine.las.kit.edu ansible_python_interpreter=/usr/bin/python3
titania.las.kit.edu ansible_python_interpreter=/usr/bin/python3
[rpmbuild]
las113.las.kit.edu
las-gethmann.las.kit.edu
asterix.las.kit.edu
lysander.las.kit.edu
[clients]
las111.las.kit.edu
127.0.0.1
las114.las.kit.edu
las116.las.kit.edu
las118.las.kit.edu
las113.las.kit.edu
las93.las.kit.edu
las-gethmann.las.kit.edu
[elegant]
asterix.las.kit.edu ansible_python_interpreter=/usr/bin/python3
falbala.las.kit.edu ansible_python_interpreter=/usr/bin/python3
galantine.las.kit.edu ansible_python_interpreter=/usr/bin/python3
homoeopatix.las.kit.edu ansible_python_interpreter=/usr/bin/python3
idefix.las.kit.edu ansible_python_interpreter=/usr/bin/python3
lysander.las.kit.edu ansible_python_interpreter=/usr/bin/python3
majestix.las.kit.edu ansible_python_interpreter=/usr/bin/python3
methusalix.las.kit.edu ansible_python_interpreter=/usr/bin/python3
obelix.las.kit.edu ansible_python_interpreter=/usr/bin/python3
pepe.las.kit.edu ansible_python_interpreter=/usr/bin/python3
spuernix.las.kit.edu ansible_python_interpreter=/usr/bin/python3
[desktop]
las111.las.kit.edu
las113.las.kit.edu
las114.las.kit.edu
las116.las.kit.edu
las118.las.kit.edu
las-gethmann.las.kit.edu
[epics]
asterix.las.kit.edu
faulus.las.kit.edu
galantine.las.kit.edu
gutemine.las.kit.edu
homoeopatix.las.kit.edu
idefix.las.kit.edu
lysander.las.kit.edu
majestix.las.kit.edu
pepe.las.kit.edu
titania.las.kit.edu
[ripgrep]
asterix.las.kit.edu
lysander.las.kit.edu
[inovesa]
asterix.las.kit.edu
obelix.las.kit.edu # ansible_connection=local
galantine.las.kit.edu
homoeopatix.las.kit.edu
pepe.las.kit.edu
[ipynb] # Jupyter notebook
idefix.las.kit.edu
teefax.las.kit.edu
lysander.las.kit.edu
# semi stable
[scipy]
las114.las.kit.edu
las113.las.kit.edu
las111.las.kit.edu
las126.las.kit.edu
# testing
[alle]
las101.las.kit.edu
las111.las.kit.edu
las113.las.kit.edu
las114.las.kit.edu
las118.las.kit.edu
las126.las.kit.edu
las-bernhard.anka.kit.edu
[tgu]
pepe.las.kit.edu
faulus.las.kit.edu
gutemine.las.kit.edu
[local]
127.0.0.1 ansible_connection=local
[admin-pcs]
las113.las.kit.edu
[admin_pcs]
las101.las.kit.edu
las-gethmann.las.kit.edu
asterix.las.kit.edu
homoeopatix.las.kit.edu
lysander.las.kit.edu
[server]
las101.las.kit.edu
[cn]
las-bernhard.anka.kit.edu
[simulation]
las126.las.kit.edu
- hosts: inovesa
roles:
- inovesa
---
- hosts: all
vars:
vars_prompt:
- name: "ipa_admin_pass"
prompt: "What is IPA's admin password?"
private: yes
roles:
- ipa_users
- hosts: ipynb
roles:
- ipynb
- hosts: jabref
tasks:
- name: install Jabref
become: yes
dnf:
name: jabref
state: present
when: (ansible_distribution == "Fedora" and (ansible_distribution_major_version | int) <= 28)
- name: UNSUPPORTED
fail:
msg: Jabref is no longer maintained by Fedora! Use zotero instead.
- hosts: kdev
roles:
- kdev
- hosts: lab
roles:
- lab
---
- include: common.yml
- include: clients.yml
tags: client
- include: opera.yml
tags: opera
#- include: update.yml
# tags: update
- include: desktop.yml
- include: admin.yml
- include: latex.yml
tags: latex
- include: kdev.yml
- hosts: latex
roles:
- latex
- hosts: nfsserver
roles:
- nfs-server
tags: nfs-server
- hosts: lasarchiv
roles:
- lasarchiv
tags: nfs-clients
---
- hosts: opera
become: yes
roles:
- opera
tags: opera