Skip to content

Commit

Permalink
Support Ubuntu 24.04 (#3676)
Browse files Browse the repository at this point in the history
  • Loading branch information
treydock authored Jul 18, 2024
1 parent be3d660 commit 0a26b6b
Show file tree
Hide file tree
Showing 8 changed files with 87 additions and 8 deletions.
3 changes: 2 additions & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
- os: ubuntu-latest
ruby: "3.1.2"
bundler: "2.3.7"
# Test versions from Amazon Linux 2023
# Test versions from Amazon Linux 2023 and Ubuntu 24.04
- os: ubuntu-latest
ruby: "3.2.2"
bundler: "2.4.10"
Expand Down Expand Up @@ -121,6 +121,7 @@ jobs:
- amzn2023
- ubuntu-20.04
- ubuntu-22.04
- ubuntu-24.04
- debian-12
arch:
- x86_64
Expand Down
4 changes: 2 additions & 2 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ build-nightly:
- OOD_PACKAGING_DIST: [el8]
OOD_PACKAGING_ARCH: [x86_64, aarch64, ppc64le]
OOD_PACKAGING_GPG_PRIVATE_KEY: /systems/osc_certs/gpg/ondemand/ondemand.sec
- OOD_PACKAGING_DIST: [el9, debian-12]
- OOD_PACKAGING_DIST: [el9, debian-12, ubuntu-24.04]
OOD_PACKAGING_ARCH: [x86_64, aarch64, ppc64le]
# Ubuntu doesn't have way to get NodeJS 14+ on ppc64le
- OOD_PACKAGING_DIST: [ubuntu-20.04, ubuntu-22.04]
Expand Down Expand Up @@ -54,7 +54,7 @@ build:
- OOD_PACKAGING_DIST: [el8]
OOD_PACKAGING_ARCH: [x86_64, aarch64, ppc64le]
OOD_PACKAGING_GPG_PRIVATE_KEY: /systems/osc_certs/gpg/ondemand/ondemand.sec
- OOD_PACKAGING_DIST: [el9, debian-12]
- OOD_PACKAGING_DIST: [el9, debian-12, ubuntu-24.04]
OOD_PACKAGING_ARCH: [x86_64, aarch64, ppc64le]
# Ubuntu doesn't have way to get NodeJS 14+ on ppc64le
- OOD_PACKAGING_DIST: [ubuntu-20.04, ubuntu-22.04]
Expand Down
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ gem 'rake'
gem 'dotenv', '~> 2.1'

group :package do
gem 'ood_packaging', '~> 0.14.0'
gem 'ood_packaging', '~> 0.15.1'
end

group :test do
Expand Down
4 changes: 2 additions & 2 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ GEM
oga (3.3)
ast
ruby-ll (~> 2.1)
ood_packaging (0.14.1)
ood_packaging (0.15.1)
rake (~> 13.0.1)
open_uri_redirections (0.2.1)
parallel (1.21.0)
Expand Down Expand Up @@ -179,7 +179,7 @@ DEPENDENCIES
beaker-docker (~> 1.4.0)
beaker-rspec
dotenv (~> 2.1)
ood_packaging (~> 0.14.0)
ood_packaging (~> 0.15.1)
rake
rspec
rubocop
Expand Down
4 changes: 4 additions & 0 deletions packaging/deb/packaging.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,7 @@
debian-12:
extra_depends:
- npm
ubuntu-24.04:
extra_depends:
- python3-setuptools
- npm
6 changes: 4 additions & 2 deletions spec/e2e/e2e_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,8 @@ def arch

def codename
case "#{host_inventory['platform']}-#{host_inventory['platform_version']}"
when 'ubuntu-24.04'
'noble'
when 'ubuntu-22.04'
'jammy'
when 'ubuntu-20.04'
Expand Down Expand Up @@ -174,7 +176,7 @@ def install_ondemand
install_packages(['ondemand', 'ondemand-dex', 'ondemand-selinux'])
elsif apt?
install_packages(['wget'])
on hosts, "wget -O /tmp/ondemand-release.deb https://yum.osc.edu/ondemand/latest/ondemand-release-web_#{build_repo_version}.1-#{codename}_all.deb"
on hosts, "wget -O /tmp/ondemand-release.deb https://yum.osc.edu/ondemand/latest/ondemand-release-web_#{build_repo_version}.2-#{codename}_all.deb"
install_packages(['/tmp/ondemand-release.deb'])
on hosts,
"sed -i 's|ondemand/#{build_repo_version}/web|ondemand/build/#{build_repo_version}/web|g' /etc/apt/sources.list.d/ondemand-web.list"
Expand Down Expand Up @@ -226,7 +228,7 @@ def bootstrap_user
end

def bootstrap_flask
if host_inventory['platform'] == 'debian'
if host_inventory['platform'] == 'debian' || host_inventory['platform_version'] == '24.04'
install_packages(['python3', 'python3-flask'])
else
install_packages(['python3', 'python3-pip'])
Expand Down
36 changes: 36 additions & 0 deletions spec/e2e/nodesets/ubuntu-24.04-aarch64.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
HOSTS:
ubuntu2404:
roles:
- agent
platform: ubuntu-24.04-amd64
hypervisor : docker
image: arm64v8/ubuntu:24.04
docker_preserve_image: true
docker_cmd: '["/sbin/init"]'
docker_image_commands:
- "rm -f /etc/dpkg/dpkg.cfg.d/excludes"
- 'apt-get install -y wget net-tools locales apt-transport-https ca-certificates iproute2'
- 'locale-gen en_US.UTF-8'
docker_env:
- LANG=en_US.UTF-8
- LANGUAGE=en_US.UTF-8
- LC_ALL=en_US.UTF-8
- DEBIAN_FRONTEND=noninteractive
docker_container_name: 'ondemand-ubuntu2404'
docker_port_bindings:
22/tcp:
- HostPort: '2222'
HostIp: '127.0.0.1'
8080/tcp:
- HostPort: '8080'
HostIp: '0.0.0.0'
5556/tcp:
- HostPort: '5556'
HostIp: '0.0.0.0'
CONFIG:
log_level: debug
type: foss
ssh:
password: root
auth_methods: ["password"]

36 changes: 36 additions & 0 deletions spec/e2e/nodesets/ubuntu-24.04.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
HOSTS:
ubuntu2404:
roles:
- agent
platform: ubuntu-24.04-amd64
hypervisor : docker
image: ubuntu:24.04
docker_preserve_image: true
docker_cmd: '["/sbin/init"]'
docker_image_commands:
- "rm -f /etc/dpkg/dpkg.cfg.d/excludes"
- 'apt-get install -y wget net-tools locales apt-transport-https ca-certificates iproute2'
- 'locale-gen en_US.UTF-8'
docker_env:
- LANG=en_US.UTF-8
- LANGUAGE=en_US.UTF-8
- LC_ALL=en_US.UTF-8
- DEBIAN_FRONTEND=noninteractive
docker_container_name: 'ondemand-ubuntu2404'
docker_port_bindings:
22/tcp:
- HostPort: '2222'
HostIp: '127.0.0.1'
8080/tcp:
- HostPort: '8080'
HostIp: '0.0.0.0'
5556/tcp:
- HostPort: '5556'
HostIp: '0.0.0.0'
CONFIG:
log_level: debug
type: foss
ssh:
password: root
auth_methods: ["password"]

0 comments on commit 0a26b6b

Please sign in to comment.