Skip to content

Commit bcab473

Browse files
committed
test cov: still trying to remove download in dockerfile
1 parent c9518ab commit bcab473

2 files changed

Lines changed: 118 additions & 14 deletions

File tree

.gitlab-ci.yml

Lines changed: 113 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ stages:
4242
# clean k8s namespace, collect logs
4343
- testenv_post
4444
# on release, upload rpm, deb, tar, container
45+
- upload
4546

4647
variables:
4748
MAVEN_CLI_OPTS: "--batch-mode --errors --fail-at-end --show-version -DinstallAtEnd=true -DdeployAtEnd=true -Dmaven.repo.local=.m2/repository"
@@ -74,7 +75,7 @@ default:
7475
- runner_system_failure
7576
- api_failure
7677
#
77-
# default tags and image for testing stages/kubernetes/helm
78+
# default tags and image for testing stages/kubernetes/helm
7879
#
7980
.kubernetes_tags:
8081
tags:
@@ -225,11 +226,8 @@ container:
225226
image: ghcr.io/kaniko-build/dist/chainguard-dev-kaniko/executor:latest-debug
226227
needs:
227228
- tar
228-
- job: get_jacoco_cli
229-
optional: true
230229
dependencies:
231230
- tar
232-
- get_jacoco_cli
233231
script:
234232
- |-
235233
tag=$CI_COMMIT_SHORT_SHA
@@ -238,7 +236,6 @@ container:
238236
tag=$CI_COMMIT_TAG
239237
jacoco_enabled=false
240238
fi
241-
- mkdir -p "jacoco-${JACOCO_VERSION}/lib"
242239
- mkdir maven
243240
- tar -C maven --strip-components=1 -xzvf packages/tar/target/dcache-*.tar.gz
244241
- cp $CI_PROJECT_DIR/packages/tar/src/main/container/* .
@@ -319,10 +316,121 @@ RPM test install on EL9:
319316
# - apt-get update
320317
# - DEBIAN_FRONTEND=noninteractive apt install -y -f ./packages/fhs/target/dcache_*.deb
321318

319+
upload_rpm:
320+
stage: upload
321+
image: almalinux:10-minimal
322+
dependencies:
323+
- sign_rpm
324+
extends: .upload_rules
325+
script:
326+
- RPM_NAME=`ls packages/fhs/target/rpmbuild/RPMS/noarch/ | grep dcache`
327+
- VERSION=`echo $RPM_NAME | cut -d'-' -f 2 | cut -d'.' -f 1,2`
328+
- curl $PKG_UPLOAD_OPTIONS -u $PKG_UPLOAD_USER:$PKG_UPLOAD_PASS --upload-file packages/fhs/target/rpmbuild/RPMS/noarch/$RPM_NAME "$PKG_UPLOAD_URL/$VERSION/$RPM_NAME"
329+
330+
upload_deb:
331+
stage: upload
332+
image: almalinux:10-minimal
333+
dependencies:
334+
- sign_deb
335+
extends: .upload_rules
336+
script:
337+
- DEB_NAME=`ls packages/fhs/target/ | grep dcache`
338+
- VERSION=`echo $DEB_NAME | cut -d'_' -f 2 | cut -d'.' -f 1,2`
339+
- curl $PKG_UPLOAD_OPTIONS -u $PKG_UPLOAD_USER:$PKG_UPLOAD_PASS --upload-file packages/fhs/target/$DEB_NAME "$PKG_UPLOAD_URL/$VERSION/$DEB_NAME"
340+
341+
upload_tar:
342+
stage: upload
343+
image: almalinux:10-minimal
344+
dependencies:
345+
- tar
346+
extends: .upload_rules
347+
script:
348+
- TAR_NAME=`ls packages/tar/target/ | grep dcache`
349+
- VERSION=`echo $TAR_NAME | cut -d'-' -f 2 | cut -d'.' -f 1,2`
350+
- curl $PKG_UPLOAD_OPTIONS -u $PKG_UPLOAD_USER:$PKG_UPLOAD_PASS --upload-file packages/tar/target/$TAR_NAME "$PKG_UPLOAD_URL/$VERSION/$TAR_NAME"
351+
352+
353+
upload_container:
354+
stage: upload
355+
# Cache downloaded dependencies and plugins between builds.
356+
# To keep cache across branches add 'key: "$CI_JOB_NAME"'
357+
# For latest releases see https://github.com/GoogleContainerTools/kaniko/releases
358+
# Only debug/*-debug versions of the Kaniko image are known to work within Gitlab CI
359+
image: ghcr.io/kaniko-build/dist/chainguard-dev-kaniko/executor:latest-debug
360+
dependencies:
361+
- tar
362+
extends: .upload_rules
363+
script:
364+
- |-
365+
tag=$CI_COMMIT_TAG
366+
branch_latest=`echo $CI_COMMIT_TAG | cut -d '.' -f 1,2`
367+
368+
- mkdir maven
369+
- tar -C maven --strip-components=1 -xzvf packages/tar/target/dcache-*.tar.gz
370+
- cp $CI_PROJECT_DIR/packages/tar/src/main/container/* .
371+
- mkdir -p /kaniko/.docker
372+
- echo "{\"auths\":{\"https://index.docker.io/v1/\":{\"username\":\"$DOCKER_HUB_USER\",\"password\":\"$DOCKER_HUB_ACCESS_KEY\"}}}" > /kaniko/.docker/config.json
373+
- >
374+
/kaniko/executor
375+
--label dcache.build=GA
376+
--context $CI_PROJECT_DIR
377+
--dockerfile $CI_PROJECT_DIR/Dockerfile
378+
--destination dcache/dcache:$tag --destination dcache/dcache:$branch_latest
379+
380+
#
322381
# This jobs needs that the number of changes to fetch from GitLab when cloning a repository is high enough to generate
323382
# the changelog.
383+
AI Generated Release Notes:
384+
image: almalinux:10-minimal
385+
stage: upload
386+
extends: .upload_rules
387+
allow_failure: true
388+
dependencies:
389+
- sign_deb
390+
- sign_rpm
391+
- tar
392+
script:
393+
- microdnf install -y git-core
394+
- git fetch --refetch --all --tags
395+
- .ci/generate-changelog.sh >> release-$CI_COMMIT_TAG.md
396+
- curl -L -o chatgpt https://github.com/kardolus/chatgpt-cli/releases/latest/download/chatgpt-linux-amd64 && chmod +x chatgpt
397+
- LAST_TAG=$(.ci/get-git-version.sh $CI_COMMIT_TAG)
398+
- |-
399+
git log --grep=maven-release-plugin --invert-grep $LAST_TAG..$CI_COMMIT_TAG | \
400+
OPENAI_API_KEY=$LLM_API_KEY \
401+
OPENAI_URL=$LLM_API_ENDPOINT \
402+
OPENAI_MODEL=$LLM_MODEL \
403+
OPENAI_COMPLETIONS_PATH=$LLM_COMPLETIONS_PATH \
404+
OPENAI_ROLE="You are a helpful tech writer working on release notes of the dCache project, ignoring commits with messages starting with '[maven-release-plugin]'." \
405+
./chatgpt "$LLM_PROMPT" | \
406+
tee -a release-$CI_COMMIT_TAG.md
407+
artifacts:
408+
paths:
409+
- release-*.md
324410

325411

412+
#
413+
# Prepare releases download table in html format
414+
#
415+
Release Notes Table:
416+
image: almalinux:10-minimal
417+
stage: upload
418+
extends: .upload_rules
419+
allow_failure: true
420+
dependencies:
421+
- sign_deb
422+
- sign_rpm
423+
- tar
424+
script:
425+
- microdnf install -y git-core
426+
- git fetch --refetch --all --tags
427+
- .ci/generate-releases-xml.sh >> release-$CI_COMMIT_TAG.xml
428+
429+
#tee -a release-$CI_COMMIT_TAG.md
430+
artifacts:
431+
paths:
432+
- release1-*.md
433+
326434
#
327435
# prepare kubernetes env for the build
328436
#

packages/tar/src/main/container/Dockerfile

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,11 @@ RUN microdnf -y install java-21-openjdk-devel java-21-openjdk-jmods binutils
88
RUN jlink --compress=zip-6 --strip-debug --no-header-files --no-man-pages --add-modules java.base,java.compiler,java.instrument,java.logging,java.management,java.naming,java.security.jgss,java.transaction.xa,java.xml,jdk.jfr,jdk.security.auth,jdk.unsupported,java.desktop,java.sql,jdk.naming.dns,java.rmi,jdk.crypto.cryptoki --output /jlink-runtime
99
ARG JACOCO_VERSION
1010
ARG JACOCO_ENABLED=false
11-
RUN if [ "$JACOCO_ENABLED" = "true" ]; then \
12-
microdnf -y install wget unzip && \
13-
wget -q "https://github.com/jacoco/jacoco/releases/download/v${JACOCO_VERSION}/jacoco-${JACOCO_VERSION}.zip" \
14-
-O /tmp/jacoco.zip && \
15-
unzip -q /tmp/jacoco.zip -d /tmp/jacoco; \
16-
else \
17-
mkdir -p /tmp/jacoco/lib && \
18-
touch /tmp/jacoco/lib/jacocoagent.jar /tmp/jacoco/lib/jacococli.jar; \
19-
fi
11+
RUN mkdir -p /tmp/jacoco/lib
12+
COPY jacoco-${JACOCO_VERSION}/lib/jacocoagent.jar* /tmp/jacoco/lib/
13+
COPY jacoco-${JACOCO_VERSION}/lib/jacococli.jar* /tmp/jacoco/lib/
14+
RUN ls /tmp/jacoco/lib/jacocoagent.jar 2>/dev/null || touch /tmp/jacoco/lib/jacocoagent.jar
15+
RUN ls /tmp/jacoco/lib/jacococli.jar 2>/dev/null || touch /tmp/jacoco/lib/jacococli.jar
2016

2117
# Minimalistic Java image
2218
FROM almalinux:10-minimal

0 commit comments

Comments
 (0)