]> git.openstreetmap.org Git - chef.git/blob - .github/workflows/test-kitchen.yml
432d7a28e33658945f97422aebcad983f96679a6
[chef.git] / .github / workflows / test-kitchen.yml
1 name: Test Kitchen
2 on:
3   - push
4   - pull_request
5 jobs:
6   kitchen:
7     name: Test Kitchen
8     runs-on: ubuntu-latest
9     strategy:
10       matrix:
11         suite:
12           - accounts
13           - apache
14           - apt
15           - backup
16           - bind
17           - blog
18           - blogs
19           - civicrm
20           - clamav
21           - db-backup
22           - db-base
23           - db-master
24           - db-slave
25           - devices
26           - dhcpd
27           - dmca
28           - dns
29           - docker
30           - donate
31           - elasticsearch
32           - exim
33           - fail2ban
34           - forum
35           - ftp
36           - geodns
37           - geoipupdate
38           - git
39           - git-server
40           - git-web
41           - gps-tile
42           - hardware
43           - hot
44           - incron
45           - irc
46           - kibana
47           - letsencrypt
48           - logstash
49           - logstash-forwarder
50           - mail
51           - mailman
52           - memcached
53           - munin
54           - munin-plugins
55           - munin-server
56           - mysql
57           - networking
58           - nginx
59           - nodejs
60           - nominatim
61           - ntp
62           - openssh
63           - osmosis
64           - osqa
65           - otrs
66           - passenger
67           - php
68           - php-apache
69           - php-fpm
70           - piwik
71           - planet
72           - planet-current
73           - planet-dump
74           - planet-notes
75           - planet-replication
76           - postgresql
77           - prometheus
78           - prometheus-server
79           - python
80           - rsyncd
81           - serverinfo
82           - snmpd
83           - spamassassin
84           - squid
85           - ssl
86           - stateofthemap
87           - subversion
88           - supybot
89           - switch2osm
90           - sysctl
91           - sysfs
92           - taginfo
93           - tile
94           - tilecache
95           - tilelog
96           - tools
97           - trac
98           - web-backend
99           - web-cgimap
100           - web-frontend
101           - web-rails
102           - wordpress
103           - wiki
104         os:
105           - ubuntu-2004
106         include:
107           - suite: trac
108             os: ubuntu-1804
109         exclude:
110           - suite: trac
111             os: ubuntu-2004
112       fail-fast: false
113     steps:
114     - name: Check out code
115       uses: actions/checkout@v2
116     - name: Setup ruby
117       uses: actions/setup-ruby@v1.1.2
118     - name: Cache gems
119       uses: actions/cache@v2.1.4
120       with:
121         path: vendor/bundle
122         key: bundle-${{ runner.OS }}-${{ hashFiles('Gemfile.lock') }}
123         restore-keys: |
124           bundle-${{ runner.OS }}-
125     - name: Disable apparmor for mysqld
126       run: |
127         sudo apt-get install apparmor-utils
128         sudo aa-disable /usr/sbin/mysqld
129     - name: Install gems
130       run: |
131         gem install bundler
132         bundle config set deployment true
133         bundle install --jobs 4 --retry 3
134     - name: Run kitchen test ${{ matrix.suite }}-${{ matrix.os }}
135       run: bundle exec kitchen test ${{ matrix.suite }}-${{ matrix.os }}