Skip to content

Commit 6eab879

Browse files
authored
Merge pull request #344 from killbill/jruby10-tomcat-upgrade
Bump Tomcat to 11.0.x and base Docker image to JDK 21
2 parents 497e31b + 77afdaa commit 6eab879

7 files changed

Lines changed: 17 additions & 14 deletions

File tree

‎.github/workflows/kpm_release.yml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252
uses: actions/setup-java@v3.3.0
5353
if: github.event.inputs.snapshot_only == 'false'
5454
with:
55-
java-version: 11
55+
java-version: 21
5656
distribution: temurin
5757
server-id: central
5858
server-username: MAVEN_USERNAME
@@ -63,7 +63,7 @@ jobs:
6363
uses: actions/setup-java@v3.3.0
6464
if: github.event.inputs.snapshot_only == 'true'
6565
with:
66-
java-version: 11
66+
java-version: 21
6767
distribution: temurin
6868
server-id: sonatype-nexus-snapshots
6969
server-username: MAVEN_USERNAME

‎ansible/README.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ The roles can now be referenced in your playbooks via `killbill-cloud/ansible/ro
3131

3232
Requirements:
3333

34-
* Java must be pre-installed on the target hosts (e.g. install the openjdk-11-jdk-headless package on Ubuntu). In the rest of this documentation, we will assume `$TARGET_JAVA_HOME` points to the Java home installation on the *target* hosts (e.g. `/usr/lib/jvm/java-11-openjdk-amd64`).
34+
* Java must be pre-installed on the target hosts (e.g. install the openjdk-21-jdk-headless package on Ubuntu). In the rest of this documentation, we will assume `$TARGET_JAVA_HOME` points to the Java home installation on the *target* hosts (e.g. `/usr/lib/jvm/java-21-openjdk-amd64`).
3535
* Before installing Kill Bill and/or Kaui, KPM must be installed via the kpm.yml playbook.
3636

3737

‎ansible/roles/tomcat/tasks/main.yml‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,9 @@
2727
mode: "{{ item.mode }}"
2828
owner: "{{ tomcat_owner }}"
2929
group: "{{ tomcat_group }}"
30-
# If the files already exist, don't clobber them
31-
force: false
30+
# Preserve existing user-managed files, except setenv.sh: its JVM
31+
# hostname must be refreshed when the inventory/configuration changes.
32+
force: "{{ item.force | default(false) }}"
3233
with_items:
3334
- src: tomcat/conf
3435
name: context.xml
@@ -42,6 +43,7 @@
4243
name: setenv.sh
4344
mode: u=rwx,g=rx,o=rx
4445
dest: "{{ catalina_base }}/bin"
46+
force: true
4547
- src: tomcat/conf
4648
name: web.xml
4749
mode: u=rw,g=r,o=r

‎ansible/templates/tomcat/conf/web.xml.j2‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<?xml version="1.0" encoding="ISO-8859-1"?>
2-
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
2+
<web-app xmlns="https://jakarta.ee/xml/ns/jakartaee"
33
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4-
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
5-
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
6-
version="3.0">
4+
xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee
5+
https://jakarta.ee/xml/ns/jakartaee/web-app_6_1.xsd"
6+
version="6.1">
77
<!-- ================== Built In Servlet Definitions ==================== -->
88
<servlet>
99
<servlet-name>default</servlet-name>

‎docker/README.adoc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ toc::[]
1010
[[available-images]]
1111
## Available images
1212

13-
* `killbill/base:latest`: Shared base image with Tomcat and KPM inside Ubuntu 20.04 LTS. It also contains Ansible and our playbooks from https://github.com/killbill/killbill-cloud. It starts Tomcat on startup.
13+
* `killbill/base:latest`: Shared base image with Tomcat and KPM inside Ubuntu 24.04 LTS. It also contains Ansible and our playbooks from https://github.com/killbill/killbill-cloud. It starts Tomcat on startup.
1414
* `killbill/killbill:latest`: Empty base Kill Bill image. Includes the `killbill-flyway` utility. It runs `kpm install` on startup. If no custom `kpm.yml` file is specified, the latest version of Kill Bill is downloaded.
1515
* `killbill/killbill:0.X.Y`: Image with a specific version of Kill Bill installed.
1616
* `killbill/kaui:latest`: Empty base Kaui image. It runs `kpm install` on startup. If no custom `kpm.yml` file is specified, the latest version of Kaui is downloaded.

‎docker/templates/base/latest/Dockerfile‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ ENV PYTHONIOENCODING=utf8
1111
# https://github.com/moby/moby/issues/4032
1212
ARG DEBIAN_FRONTEND=noninteractive
1313
RUN apt-get update && \
14+
apt-get upgrade -y && \
1415
apt-get install --no-install-recommends -y \
1516
ansible \
1617
# https://github.com/tianon/docker-brew-ubuntu-core/issues/59

‎docker/templates/build/Dockerfile‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM ubuntu:20.04
1+
FROM ubuntu:24.04
22
LABEL maintainer="killbilling-users@googlegroups.com"
33

44
USER root
@@ -29,7 +29,7 @@ RUN apt-get update && \
2929
maven \
3030
mysql-client \
3131
net-tools \
32-
openjdk-11-jdk-headless \
32+
openjdk-21-jdk-headless \
3333
postgresql-client \
3434
python3-lxml \
3535
software-properties-common \
@@ -41,8 +41,8 @@ RUN apt-get update && \
4141
rm -rf /var/lib/apt/lists/*
4242

4343
# Configure default JAVA_HOME path
44-
RUN update-java-alternatives -s java-1.11.0-openjdk-$(dpkg --print-architecture)
45-
RUN rm -f /usr/lib/jvm/default-java && ln -s java-11-openjdk-$(dpkg --print-architecture) /usr/lib/jvm/default-java
44+
RUN update-java-alternatives -s java-1.21.0-openjdk-$(dpkg --print-architecture)
45+
RUN rm -f /usr/lib/jvm/default-java && ln -s java-21-openjdk-$(dpkg --print-architecture) /usr/lib/jvm/default-java
4646
ENV JAVA_HOME=/usr/lib/jvm/default-java
4747
ENV JSSE_HOME=$JAVA_HOME/jre/
4848

0 commit comments

Comments
 (0)