Skip to content

Commit

Permalink
feat: add support for ubuntu 22.04 (#685)
Browse files Browse the repository at this point in the history
* feat: add support for ubuntu 22.04

* docs: update changelog

* docs: update link in readme

* fix: corrected name for supports

* feat: add ubuntu 22.04 integration

* Fix Changelog

Signed-off-by: Lance Albertson <[email protected]>

---------

Signed-off-by: Lance Albertson <[email protected]>
Co-authored-by: Jason Field <[email protected]>
Co-authored-by: Lance Albertson <[email protected]>
  • Loading branch information
3 people authored Aug 23, 2023
1 parent 374c76e commit 8c1678a
Show file tree
Hide file tree
Showing 6 changed files with 90 additions and 2 deletions.
7 changes: 7 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ jobs:
- "rockylinux-8"
- "ubuntu-1804"
- "ubuntu-2004"
- "ubuntu-2204"
suite:
- "client-install-57"
- "client-install-80"
Expand Down Expand Up @@ -61,6 +62,12 @@ jobs:
suite: smoke57
- os: ubuntu-2004
suite: resources-57
- os: ubuntu-2204
suite: client-install-57
- os: ubuntu-2204
suite: smoke57
- os: ubuntu-2204
suite: resources-57
- os: rockylinux-8
suite: client-install-57
- os: rockylinux-8
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,16 @@ All notable changes to this project will be documented in this file.

## Unreleased

- feat: add support for ubuntu 22.04

## 11.0.15 - *2023-07-10*

- Update sous-chefs/.github action to v2.0.5

## 11.0.14 - *2023-05-17*

- Update sous-chefs/.github action to v2.0.4

## 11.0.13 - *2023-04-04*

Standardise files with files in sous-chefs/repo-management
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ The following platforms have been tested with Test Kitchen:
| openSUSE Leap | X | | |
| ubuntu-18.04 | | X | |
| ubuntu-20.04 | | | X |
| ubuntu-22.04 | | | X |

## Cookbook Dependencies

Expand Down Expand Up @@ -199,7 +200,7 @@ end

Use multiple `mysql_service` instances to test a replication setup. This particular example serves as a smoke test in Test Kitchen because it exercises different resources and requires service restarts.

<https://github.com/chef-cookbooks/mysql/blob/master/test/fixtures/cookbooks/mysql_replication_test/recipes/default.rb>
<https://github.com/sous-chefs/mysql/blob/main/test/cookbooks/test/recipes/service_multi.rb>

## Frequently Asked Questions

Expand Down
6 changes: 6 additions & 0 deletions libraries/helpers.rb
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,11 @@ def focal?
false
end

def jammy?
return true if platform?('ubuntu') && node['platform_version'] == '22.04'
false
end

def defaults_file
"#{etc_dir}/my.cnf"
end
Expand Down Expand Up @@ -79,6 +84,7 @@ def default_major_version
return '5.7' if xenial?
return '5.7' if bionic?
return '8.0' if focal?
return '8.0' if jammy?

# misc
return '5.6' if platform?('freebsd')
Expand Down
2 changes: 1 addition & 1 deletion metadata.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

depends 'apparmor'

suppots 'redhat', '>= 7.0'
supports 'redhat', '>= 7.0'
supports 'centos', '>= 7.0'
supports 'scientific', '>= 7.0'
supports 'oracle', '>= 7.0'
Expand Down
68 changes: 68 additions & 0 deletions templates/default/apparmor/ubuntu-22.04/usr.sbin.mysqld.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# vim:syntax=apparmor
# Last Modified: Tue Feb 09 15:28:30 2016
#include <tunables/global>

/usr/sbin/mysqld {
#include <abstractions/base>
#include <abstractions/nameservice>
#include <abstractions/user-tmp>
#include <abstractions/mysql>
#include <abstractions/winbind>

# Allow system resource access
/sys/devices/system/cpu/ r,
capability sys_resource,
capability dac_override,
capability setuid,
capability setgid,

# Allow network access
network tcp,

/etc/hosts.allow r,
/etc/hosts.deny r,

# Allow config access
/etc/mysql/** r,

# Allow pid, socket, socket lock file access
/var/run/mysqld/mysqld.pid rw,
/var/run/mysqld/mysqld.sock rw,
/var/run/mysqld/mysqld.sock.lock rw,
/run/mysqld/mysqld.pid rw,
/run/mysqld/mysqld.sock rw,
/run/mysqld/mysqld.sock.lock rw,

# Allow execution of server binary
/usr/sbin/mysqld mr,
/usr/sbin/mysqld-debug mr,

# Allow plugin access
/usr/lib/mysql/plugin/ r,
/usr/lib/mysql/plugin/*.so* mr,

# Allow error msg and charset access
/usr/share/mysql/ r,
/usr/share/mysql/** r,

# Allow data dir access
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,

# Allow data files dir access
/var/lib/mysql-files/ r,
/var/lib/mysql-files/** rwk,

# Allow keyring dir access
/var/lib/mysql-keyring/ r,
/var/lib/mysql-keyring/** rwk,

# Allow log file access
/var/log/mysql.err rw,
/var/log/mysql.log rw,
/var/log/mysql/ r,
/var/log/mysql/** rw,

# Site-specific additions and overrides. See local/README for details.
#include <local/usr.sbin.mysqld>
}

0 comments on commit 8c1678a

Please sign in to comment.