aboutsummaryrefslogtreecommitdiff
path: root/tests/playbooks/post.yml
blob: 7245b7ba8d4f6c07e9204049242607af115e7175 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
---
- hosts: all
  tasks:
    - name: Dump host info to logs
      command: "{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/tools/dump_info.sh"
      args:
        chdir: "{{ kolla_logs_dir }}"

    - name: Collect various info to logs
      shell:
        cmd: |
          set +o errexit
          set -o xtrace

          container_engine={{ container_engine }}

          # copy system log
          sudo cp -r /var/log system_log

          if which journalctl ; then
              # the journal gives us syslog() and kernel output, so is like
              # a concatenation of the above.
              sudo journalctl --no-pager > syslog.txt
              sudo journalctl --no-pager -u {{ container_engine }}.service > {{ container_engine }}.log
          else
              # assume rsyslog
              sudo cp /var/log/syslog syslog.txt
              sudo cp /var/log/kern.log kern_log.txt
              sudo cp /var/log/upstart/{{ container_engine }}.log {{ container_engine }}.log
          fi

          if [ "${container_engine}" == "docker" ]; then
              if sudo test -d /var/lib/docker/volumes/kolla_logs/_data; then
                  sudo cp -r /var/lib/docker/volumes/kolla_logs/_data kolla_logs
              fi
          else
              if sudo test -d /var/lib/containers/storage/volumes/kolla_logs/_data; then
                  sudo cp -r /var/lib/containers/storage/volumes/kolla_logs/_data kolla_logs
              fi
          fi
          if sudo test -d /etc/containers; then
              sudo cp -r /etc/containers etc_containers
          fi

          # sudo config
          sudo cp -r /etc/sudoers.d ./
          sudo cp /etc/sudoers sudoers.txt

          df -h > df.txt
          free  > free.txt
          sudo parted -l > parted-l.txt
          mount > mount.txt
          env > env.txt

          if [ `command -v dpkg` ]; then
              dpkg -l > dpkg-l.txt
          fi
          if [ `command -v rpm` ]; then
              rpm -qa > rpm-qa.txt
          fi

          # final memory usage and process list
          ps -eo user,pid,ppid,lwp,%cpu,%mem,size,rss,cmd > ps.txt

          # docker related information
          (sudo {{ container_engine }} info && sudo {{ container_engine }} system df && sudo {{ container_engine }} system df -v) > {{ container_engine }}-info.txt

          sudo cp -r /etc/kolla kolla_configs

          # last sudo to own all files
          sudo chown -R {{ ansible_user_id }}: .

          # Parse build logs and extract pkg install info
          {{ ansible_user_dir }}/{{ zuul.project.src_dir }}/tests/files/process_build_logs.py -l build -b {{ base_distro }} > packages-info.txt
        executable: /bin/bash
        chdir: "{{ kolla_logs_dir }}"