48 lines
1.7 KiB
YAML
48 lines
1.7 KiB
YAML
name: E2E probe
|
|
# Branche jetable ci/e2e-probe : diagnostic de l'environnement de job pour decider
|
|
# comment porter tests/e2e/run.sh en CI (socket Docker propagee ? chemin du checkout
|
|
# aligne cote hote pour les bind-mounts des conteneurs freres ?). A supprimer ensuite.
|
|
on:
|
|
push:
|
|
branches: ['ci/e2e-probe']
|
|
|
|
jobs:
|
|
probe:
|
|
runs-on: docker
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Contexte du job (chemins + socket)
|
|
run: |
|
|
echo "PWD=$(pwd)"
|
|
echo "GITHUB_WORKSPACE=$GITHUB_WORKSPACE"
|
|
echo "DOCKER_HOST=${DOCKER_HOST:-<vide>}"
|
|
echo "--- socket presente dans le job ? ---"
|
|
ls -la /var/run/docker.sock || echo "PAS_DE_SOCKET"
|
|
echo "--- mountinfo (workspace) ---"
|
|
grep -iE 'work' /proc/self/mountinfo || true
|
|
|
|
- name: CLI docker + acces au demon
|
|
run: |
|
|
set -e
|
|
curl -fsSL https://download.docker.com/linux/static/stable/x86_64/docker-27.3.1.tgz -o /tmp/d.tgz
|
|
tar -xzf /tmp/d.tgz -C /usr/local/bin --strip-components=1 docker/docker
|
|
docker --version
|
|
if docker info --format 'Server={{.ServerVersion}} Containers={{.Containers}}'; then
|
|
echo "SOCKET_OK"
|
|
else
|
|
echo "SOCKET_KO"
|
|
exit 1
|
|
fi
|
|
|
|
- name: Test de translation de chemin (bind-mount frere)
|
|
run: |
|
|
set -e
|
|
MARK="probe_$(cat /proc/sys/kernel/random/uuid)"
|
|
echo "$MARK" > "$GITHUB_WORKSPACE/__probe_marker"
|
|
echo "marqueur ecrit dans le workspace du job : $MARK"
|
|
if docker run --rm -v "$GITHUB_WORKSPACE:/x" alpine sh -c 'cat /x/__probe_marker 2>/dev/null'; then
|
|
echo "PATH_ALIGNED"
|
|
else
|
|
echo "PATH_NOT_ALIGNED"
|
|
fi
|