]> git.openstreetmap.org Git - chef.git/blobdiff - .github/workflows/test-kitchen.yml
Merge remote-tracking branch 'github/pull/573'
[chef.git] / .github / workflows / test-kitchen.yml
index 5345c0ed3ebd9675b030e84f641fff8bfc6f9de1..2469ab522bc67dadbf4cca6e9604e29e39610bab 100644 (file)
@@ -1,11 +1,17 @@
 name: Test Kitchen
+
 on:
   - push
   - pull_request
+
+concurrency:
+  group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
+  cancel-in-progress: true
+
 jobs:
   kitchen:
     name: Test Kitchen
-    runs-on: ubuntu-latest
+    runs-on: ubuntu-22.04
     strategy:
       matrix:
         suite:
@@ -18,6 +24,7 @@ jobs:
           - blogs
           - civicrm
           - clamav
+          - community
           - db-backup
           - db-base
           - db-master
@@ -25,10 +32,19 @@ jobs:
           - devices
           - dhcpd
           - dmca
+          - dns
+          - docker
           - donate
+          - elasticsearch
           - exim
           - fail2ban
           - forum
+          - foundation-board
+          - foundation-dwg
+          - foundation-mwg
+          - foundation-owg
+          - foundation-welcome
+          - foundation-wiki
           - ftp
           - geodns
           - geoipupdate
@@ -39,8 +55,14 @@ jobs:
           - hardware
           - hot
           - incron
+          - irc
+          - kibana
           - letsencrypt
+          - logstash
+          - logstash-forwarder
+          - mail
           - mailman
+          - matomo
           - memcached
           - munin
           - munin-plugins
@@ -49,59 +71,72 @@ jobs:
           - networking
           - nginx
           - nodejs
+          - nominatim
           - ntp
           - openssh
           - osmosis
           - osqa
           - otrs
+          - overpass
           - passenger
-          - piwik
+          - php
+          - php-apache
+          - php-fpm
           - planet
           - planet-current
           - planet-dump
           - planet-notes
           - planet-replication
           - postgresql
+          - prometheus
+          - prometheus-server
           - python
           - rsyncd
           - serverinfo
+          - snmpd
           - spamassassin
-          - squid
+          - ssl
           - stateofthemap
+          - stateofthemap-container
+          - stateofthemap-wordpress
           - subversion
           - supybot
           - switch2osm
+          - sysctl
+          - sysfs
           - taginfo
           - tile
-          - tilecache
+          - tilelog
           - tools
           - trac
-          - web-backend
           - web-cgimap
           - web-frontend
           - web-rails
+          - wordpress
+          - wiki
         os:
-          - ubuntu-1804
+          - ubuntu-2204
+        include:
+          - os: ubuntu-2004
+            suite: mailman
+          - os: ubuntu-2004
+            suite: osqa
+        exclude:
+          - suite: mailman
+            os: ubuntu-2204
+          - suite: osqa
+            os: ubuntu-2204
       fail-fast: false
     steps:
     - name: Check out code
-      uses: actions/checkout@v2
+      uses: actions/checkout@v3
     - name: Setup ruby
-      uses: actions/setup-ruby@v1
-    - name: Cache gems
-      uses: actions/cache@v1
+      uses: ruby/setup-ruby@v1
       with:
-        path: vendor/bundle
-        key: bundle-${{ runner.OS }}-${{ hashFiles('Gemfile.lock') }}
-        restore-keys: |
-          bundle-${{ runner.OS }}-
-    - name: Disable apparmor for mysqld
-      run: |
-        sudo apt-get install apparmor-utils
-        sudo aa-disable /usr/sbin/mysqld
-    - name: Install gems
-      run: |
-        gem install bundler --version "~> 1.17"
-        bundle install --jobs 4 --retry 3 --deployment
+        ruby-version: 3.1
+        bundler-cache: true
     - name: Run kitchen test ${{ matrix.suite }}-${{ matrix.os }}
       run: bundle exec kitchen test ${{ matrix.suite }}-${{ matrix.os }}
+    - name: Gather journal output
+      run: bundle exec kitchen exec ${{ matrix.suite }}-${{ matrix.os }} -c journalctl --since=yesterday
+      if: ${{ failure() }}