Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 3e5a12c827 | |||
|
7b8caa0463
|
|||
| 7a4dcc8f6d | |||
| d80dfa13b7 |
@@ -9,7 +9,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
continue-on-error: true
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
- uses: hadolint/hadolint-action@2332a7b74a6de0dda2e2221d575162eba76ba5e5 # v3.3.0
|
||||
with:
|
||||
dockerfile: Dockerfile
|
||||
@@ -17,7 +17,7 @@ jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
- uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4
|
||||
- run: docker build -t ci-image:${{ github.sha }} .
|
||||
- run: bash tests/test.sh ci-image:${{ github.sha }}
|
||||
@@ -26,7 +26,7 @@ jobs:
|
||||
needs: [test]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4
|
||||
|
||||
@@ -9,7 +9,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
continue-on-error: true
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
- uses: hadolint/hadolint-action@2332a7b74a6de0dda2e2221d575162eba76ba5e5 # v3.3.0
|
||||
with:
|
||||
dockerfile: Dockerfile
|
||||
@@ -17,7 +17,7 @@ jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
- uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4
|
||||
- run: docker build -t ci-image:${{ github.sha }} .
|
||||
- run: bash tests/test.sh ci-image:${{ github.sha }}
|
||||
@@ -26,7 +26,7 @@ jobs:
|
||||
needs: [test]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
- uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4
|
||||
- run: docker build -t jcabillot/cv:${{ github.sha }} .
|
||||
|
||||
@@ -34,7 +34,7 @@ jobs:
|
||||
needs: [build]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Configure git auth
|
||||
|
||||
@@ -8,7 +8,7 @@ jobs:
|
||||
hadolint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
- uses: hadolint/hadolint-action@2332a7b74a6de0dda2e2221d575162eba76ba5e5 # v3.3.0
|
||||
with:
|
||||
dockerfile: Dockerfile
|
||||
@@ -16,7 +16,7 @@ jobs:
|
||||
build-test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
- uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4
|
||||
- run: docker build -t ci-image:${{ github.sha }} .
|
||||
- run: bash tests/test.sh ci-image:${{ github.sha }}
|
||||
|
||||
@@ -9,7 +9,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
continue-on-error: true
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
- uses: hadolint/hadolint-action@2332a7b74a6de0dda2e2221d575162eba76ba5e5 # v3.3.0
|
||||
with:
|
||||
dockerfile: Dockerfile
|
||||
@@ -17,7 +17,7 @@ jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
- uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4
|
||||
- run: docker build -t ci-image:${{ github.sha }} .
|
||||
- run: bash tests/test.sh ci-image:${{ github.sha }}
|
||||
@@ -26,7 +26,7 @@ jobs:
|
||||
needs: [test]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
|
||||
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
||||
- uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4
|
||||
- uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4
|
||||
with:
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
auto_https off
|
||||
frankenphp
|
||||
}
|
||||
|
||||
:8080 {
|
||||
root * /app/public
|
||||
encode zstd br gzip
|
||||
file_server
|
||||
}
|
||||
+7
-3
@@ -1,5 +1,9 @@
|
||||
ARG VERSION="latest"
|
||||
FROM "jcabillot/phpapache:${VERSION}"
|
||||
FROM dunglas/frankenphp:1-php8.5-alpine
|
||||
LABEL maintainer="Julien Cabillot <dockerimages@cabillot.eu>"
|
||||
|
||||
COPY "root" "/var/www/html"
|
||||
WORKDIR /app
|
||||
|
||||
COPY Caddyfile /etc/frankenphp/Caddyfile
|
||||
COPY --chown=www-data:www-data root /app/public
|
||||
|
||||
USER www-data
|
||||
|
||||
+11
-4
@@ -58,10 +58,17 @@ done
|
||||
|
||||
echo ""
|
||||
echo "Test: GET / (HTML redirect)"
|
||||
RESPONSE=$(curl -sf -D - "$BASE_URL/")
|
||||
STATUS=$(echo "$RESPONSE" | head -1 | grep -oP '\d{3}')
|
||||
CONTENT_TYPE=$(echo "$RESPONSE" | grep -i 'content-type' | tr -d '\r' | cut -d: -f2- | xargs)
|
||||
BODY=$(echo "$RESPONSE" | sed -n '/^\r$/,$p' | tail -n +2)
|
||||
# Use temp file to avoid pipefail/SIGPIPE issues
|
||||
TMPDIR=$(mktemp -d)
|
||||
cleanup() {
|
||||
docker rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true
|
||||
rm -rf "$TMPDIR"
|
||||
}
|
||||
curl -sf -o "$TMPDIR/body" -D "$TMPDIR/headers" "$BASE_URL/"
|
||||
STATUS=$(head -1 "$TMPDIR/headers" | grep -oP '\d{3}')
|
||||
CONTENT_TYPE=$(grep -i 'content-type' "$TMPDIR/headers" | tr -d '\r' | cut -d: -f2- | xargs)
|
||||
BODY=$(cat "$TMPDIR/body")
|
||||
trap cleanup EXIT
|
||||
|
||||
assert "HTTP status is 200" "200" "$STATUS"
|
||||
assert_match "Content-Type is text/html" "text/html" "$CONTENT_TYPE"
|
||||
|
||||
Reference in New Issue
Block a user