diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 45a7d9a..d3792e0 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -25,7 +25,7 @@ jobs: strategy: fail-fast: true matrix: - os: [ 'el7', 'el8', 'ol8', 'el9', 'd11', 'd12', 'u18', 'u20', 'u22' ] + os: [ 'el7', 'el8', 'ol8', 'el9', 'd11', 'd12', 'u18', 'u20', 'u22', 'u24' ] runs-on: ubuntu-latest permissions: @@ -86,7 +86,7 @@ jobs: # https://github.com/docker/build-push-action - name: Build and push Docker multiarch images id: build-and-push-multiarch - if: ${{ matrix.os == 'd11' || matrix.os == 'd12' || matrix.os == 'u18' || matrix.os == 'u20' || matrix.os == 'u22' }} + if: ${{ matrix.os == 'd11' || matrix.os == 'd12' || matrix.os == 'u18' || matrix.os == 'u20' || matrix.os == 'u22' || matrix.os == 'u24' }} uses: docker/build-push-action@v3 with: context: . diff --git a/docker-envs/Dockerfile-u24 b/docker-envs/Dockerfile-u24 new file mode 100644 index 0000000..65536bf --- /dev/null +++ b/docker-envs/Dockerfile-u24 @@ -0,0 +1,18 @@ +FROM ubuntu:24.04 AS unibuild-image + +# Install pre-requisites for building packages +RUN DEBIAN_FRONTEND=noninteractive apt-get update -y && \ + DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y sudo apt-utils curl emacs-nox gnupg htop m4 make pylint rsync screen tree vim + +# Copy unibuild source +COPY . /usr/share/unibuild/ + +# Install unibuild +WORKDIR /usr/share/unibuild +RUN make RELEASE=1 +RUN /usr/share/unibuild/libexec/prep/prep + +# Shared volume for code to build +VOLUME /app +WORKDIR /app diff --git a/docker-envs/build-dev-images b/docker-envs/build-dev-images index dfc0777..73278c7 100755 --- a/docker-envs/build-dev-images +++ b/docker-envs/build-dev-images @@ -35,7 +35,7 @@ clear_cache=false verbose=false build_type= registry= -declare -a OSimages=("d10" "d11" "d12" "u18" "u20" "u22") +declare -a OSimages=("d10" "d11" "d12" "u18" "u20" "u22" "u24") while getopts "chr:v" OPT; do case $OPT in diff --git a/docker-envs/docker-compose.yml b/docker-envs/docker-compose.yml index 4f16fba..f61e192 100644 --- a/docker-envs/docker-compose.yml +++ b/docker-envs/docker-compose.yml @@ -129,3 +129,4 @@ services: platform: "linux/ppc64le" image: ghcr.io/perfsonar/unibuild/u22:latest@sha256:91d5ba272ca73f62d18758d2a2cbad7e85ca9f5830680d44da90447006999046 volumes: *default-volumes + # TODO: Add u24_* diff --git a/docker-envs/update-sha256-images b/docker-envs/update-sha256-images index 17b9459..3c27840 100755 --- a/docker-envs/update-sha256-images +++ b/docker-envs/update-sha256-images @@ -9,7 +9,7 @@ my $filename = 'docker-compose.yml'; my $registry_path = 'ghcr.io/perfsonar/unibuild/'; my $registry_path_esc = $registry_path =~ s/\//\\\//gr; -my @OSimages = ('d10:latest', 'd11:latest', 'd12:latest', 'u18:latest', 'u20:latest', 'u22:latest'); +my @OSimages = ('d10:latest', 'd11:latest', 'd12:latest', 'u18:latest', 'u20:latest', 'u22:latest', "u24:latest'); my $file, $newsha, $count=0; # Announce what we'll do