Skip to content

Commit 4a41b57

Browse files
authored
Support Fedora Linux (#2032)
1 parent 2e63bb7 commit 4a41b57

6 files changed

Lines changed: 26 additions & 17 deletions

File tree

ath-container.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@ DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)"
55

66
# Obtain the group ID to grant to access the Docker socket
77
if [[ -z ${DOCKER_GID:-} ]]; then
8-
DOCKER_GID=$(docker run --rm -v /var/run/docker.sock:/var/run/docker.sock ubuntu:noble stat -c %g /var/run/docker.sock) || exit 1
8+
DOCKER_GID=$(docker run --rm -v /var/run/docker.sock:/var/run/docker.sock:Z ubuntu:noble stat -c %g /var/run/docker.sock) || exit 1
99
export DOCKER_GID
1010
fi
1111

1212
"${DIR}/build-image.sh" || exit 1
1313

1414
trap 'docker-compose kill && docker-compose down' EXIT
1515

16-
docker-compose run --name mvn --rm -P -v "${HOME}/.m2/repository:/home/ath-user/.m2/repository" mvn bash -c 'set-java.sh 17; bash'
16+
docker-compose run --name mvn --rm -P -v "${HOME}/.m2/repository:/home/ath-user/.m2/repository:Z" mvn bash -c 'set-java.sh 17; bash'
1717
status=$?
1818

1919
exit $status

build-image.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ fi
1616

1717
# Obtain the group ID to grant to access the Docker socket
1818
if [[ -z ${DOCKER_GID:-} ]]; then
19-
DOCKER_GID=$(docker run --rm -v /var/run/docker.sock:/var/run/docker.sock ubuntu:noble stat -c %g /var/run/docker.sock) || exit 1
19+
DOCKER_GID=$(docker run --rm -v /var/run/docker.sock:/var/run/docker.sock:Z ubuntu:noble stat -c %g /var/run/docker.sock) || exit 1
2020
export DOCKER_GID
2121
fi
2222

ci.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ jenkinsVersion="$3"
77

88
# Obtain the group ID to grant to access the Docker socket
99
if [[ -z ${DOCKER_GID:-} ]]; then
10-
DOCKER_GID=$(docker run --rm -v /var/run/docker.sock:/var/run/docker.sock ubuntu:noble stat -c %g /var/run/docker.sock) || exit 1
10+
DOCKER_GID=$(docker run --rm -v /var/run/docker.sock:/var/run/docker.sock:Z ubuntu:noble stat -c %g /var/run/docker.sock) || exit 1
1111
export DOCKER_GID
1212
fi
1313

1414
trap 'docker-compose kill && docker-compose down' EXIT
1515

16-
docker-compose run -e "MAVEN_ARGS=${MAVEN_ARGS}" --name mvn -T --rm -v "${MAVEN_SETTINGS}:${MAVEN_SETTINGS}" mvn bash -s <<-INSIDE
16+
docker-compose run -e "MAVEN_ARGS=${MAVEN_ARGS}" --name mvn -T --rm -v "${MAVEN_SETTINGS}:${MAVEN_SETTINGS}:Z" mvn bash -s <<-INSIDE
1717
set-java.sh ${jdk}
1818
1919
# Ensure that Jenkins node setup does not influence the container Java setup

docker-compose.yml

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
---
22
services:
33
init_video:
4+
container_name: init_video
45
image: ubuntu:noble
56
command: >
6-
sh -c "mkdir -p /tmp/videos && chmod 0777 /tmp/videos"
7+
sh -c 'chown 1000:1000 /videos && chmod 0777 /videos'
8+
user: root
79
volumes:
8-
- shared_tmp:/tmp
10+
- videos:/videos:z
911
firefox:
1012
container_name: firefox
1113
environment:
@@ -23,7 +25,7 @@ services:
2325
- 5900:5900 # VNC port
2426
shm_size: 2g
2527
volumes:
26-
- shared_tmp:/tmp
28+
- videos:/videos:z
2729
video:
2830
container_name: video
2931
depends_on:
@@ -36,12 +38,12 @@ services:
3638
- SE_VIDEO_FILE_NAME=auto
3739
- SE_VIDEO_FILE_NAME_SUFFIX=false
3840
- SE_VIDEO_RECORD_STANDALONE=true
39-
- VIDEO_FOLDER=/tmp2/videos
41+
- VIDEO_FOLDER=/videos
4042
image: selenium/video:ffmpeg-7.1-20250515@sha256:5e283b26b1bb14cabb03b31aaf7d88348e93e92d82b0e1704780611bef129964
4143
networks:
4244
- ath-network
4345
volumes:
44-
- shared_tmp:/tmp2 # Avoid conflict with supervisord
46+
- videos:/videos:z
4547
mvn:
4648
build:
4749
context: src/main/resources/ath-container
@@ -60,7 +62,7 @@ services:
6062
- SELENIUM_PROXY_HOSTNAME=mvn
6163
- SHARED_DOCKER_SERVICE=true
6264
- TESTCONTAINERS_HOST_OVERRIDE=host.docker.internal
63-
- VIDEO_FOLDER=/tmp/videos
65+
- VIDEO_FOLDER=/videos
6466
extra_hosts:
6567
- host.docker.internal:host-gateway
6668
group_add:
@@ -73,16 +75,16 @@ services:
7375
shm_size: 2g
7476
user: ath-user
7577
volumes:
76-
- ${PWD}:/home/ath-user/sources
77-
- shared_tmp:/tmp
78-
- /var/run/docker.sock:/var/run/docker.sock
78+
- ${PWD}:/home/ath-user/sources:Z
79+
- videos:/videos:z
80+
- /var/run/docker.sock:/var/run/docker.sock:Z
7981
working_dir: /home/ath-user/sources
8082
networks:
8183
ath-network:
8284
name: ath-network
8385
attachable: true
8486
volumes:
85-
shared_tmp:
87+
videos:
8688
driver: local
8789
driver_opts:
8890
type: tmpfs

src/main/java/org/jenkinsci/test/acceptance/plugins/logparser/LogParserPublisher.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import org.jenkinsci.test.acceptance.po.Describable;
77
import org.jenkinsci.test.acceptance.po.Job;
88
import org.jenkinsci.test.acceptance.po.PostBuildStep;
9+
import org.jenkinsci.test.acceptance.selenium.UselessFileDetectorReplacement;
910

1011
/**
1112
* Helperclass for configuring the logparser plugin.
@@ -97,6 +98,8 @@ public void setRule(RuleType type, String rule) {
9798
* @param resource The {@link Resource} object of a rule file.
9899
*/
99100
public void setRule(Resource resource) {
100-
setRule(RuleType.PROJECT, resource.url.getPath());
101+
try (UselessFileDetectorReplacement ufd = new UselessFileDetectorReplacement(driver)) {
102+
setRule(RuleType.PROJECT, resource.url.getPath());
103+
}
101104
}
102105
}

src/test/java/plugins/ConfigurationAsCodeTest.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
import org.jenkinsci.test.acceptance.junit.WithPlugins;
3232
import org.jenkinsci.test.acceptance.plugins.configuration_as_code.JcascManage;
3333
import org.jenkinsci.test.acceptance.po.JenkinsConfig;
34+
import org.jenkinsci.test.acceptance.selenium.UselessFileDetectorReplacement;
3435
import org.junit.Test;
3536

3637
@WithPlugins("configuration-as-code")
@@ -41,7 +42,10 @@ public void loadAndReload() {
4142

4243
JcascManage jm = new JcascManage(jenkins);
4344
jm.open();
44-
jm.configure(resource("/configuration_as_code/trivial.yaml").asFile().getAbsolutePath());
45+
try (UselessFileDetectorReplacement ufd = new UselessFileDetectorReplacement(driver)) {
46+
jm.configure(
47+
resource("/configuration_as_code/trivial.yaml").asFile().getAbsolutePath());
48+
}
4549

4650
assertThat(jenkins.open(), hasContent(EXPECTED_DESC));
4751

0 commit comments

Comments
 (0)