Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a26beefb08 | |||
| 833e2de2d6 | |||
| 8c44d52b69 | |||
| 99b8ed1996 | |||
| 18868a47fc | |||
| cb5bd01a93 | |||
| 72ebde31ce | |||
| 7c79bf066a | |||
| 394ada14f3 |
@@ -110,6 +110,7 @@ jobs:
|
|||||||
push: ${{ github.event_name != 'pull_request' }}
|
push: ${{ github.event_name != 'pull_request' }}
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
|
pull: true # Always pull fresh base images to get latest security patches
|
||||||
cache-from: type=gha
|
cache-from: type=gha
|
||||||
cache-to: type=gha,mode=max
|
cache-to: type=gha,mode=max
|
||||||
build-args: |
|
build-args: |
|
||||||
|
|||||||
@@ -114,6 +114,8 @@ jobs:
|
|||||||
push: ${{ github.event_name != 'pull_request' }}
|
push: ${{ github.event_name != 'pull_request' }}
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
|
# Always pull fresh base images to get latest security patches
|
||||||
|
pull: true
|
||||||
cache-from: type=gha
|
cache-from: type=gha
|
||||||
cache-to: type=gha,mode=max
|
cache-to: type=gha,mode=max
|
||||||
build-args: |
|
build-args: |
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ jobs:
|
|||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
no-cache: ${{ github.event_name == 'schedule' || inputs.force_rebuild }}
|
no-cache: ${{ github.event_name == 'schedule' || inputs.force_rebuild }}
|
||||||
|
pull: true # Always pull fresh base images to get latest security patches
|
||||||
build-args: |
|
build-args: |
|
||||||
VERSION=security-scan
|
VERSION=security-scan
|
||||||
BUILD_DATE=${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.created'] }}
|
BUILD_DATE=${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.created'] }}
|
||||||
@@ -121,8 +122,8 @@ jobs:
|
|||||||
echo "" >> $GITHUB_STEP_SUMMARY
|
echo "" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "Checking key security packages:" >> $GITHUB_STEP_SUMMARY
|
echo "Checking key security packages:" >> $GITHUB_STEP_SUMMARY
|
||||||
echo '```' >> $GITHUB_STEP_SUMMARY
|
echo '```' >> $GITHUB_STEP_SUMMARY
|
||||||
docker run --rm ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}@${{ steps.build.outputs.digest }} \
|
docker run --rm --entrypoint "" ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}@${{ steps.build.outputs.digest }} \
|
||||||
sh -c "apk info c-ares curl libcurl openssl" >> $GITHUB_STEP_SUMMARY
|
sh -c "apk update >/dev/null 2>&1 && apk info c-ares curl libcurl openssl" >> $GITHUB_STEP_SUMMARY
|
||||||
echo '```' >> $GITHUB_STEP_SUMMARY
|
echo '```' >> $GITHUB_STEP_SUMMARY
|
||||||
|
|
||||||
- name: Create security scan summary
|
- name: Create security scan summary
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ ARG CADDY_VERSION=2.10.2
|
|||||||
## plain Alpine base image and overwrite its caddy binary with our
|
## plain Alpine base image and overwrite its caddy binary with our
|
||||||
## xcaddy-built binary in the later COPY step. This avoids relying on
|
## xcaddy-built binary in the later COPY step. This avoids relying on
|
||||||
## upstream caddy image tags while still shipping a pinned caddy binary.
|
## upstream caddy image tags while still shipping a pinned caddy binary.
|
||||||
|
# renovate: datasource=docker depName=alpine
|
||||||
ARG CADDY_IMAGE=alpine:3.23
|
ARG CADDY_IMAGE=alpine:3.23
|
||||||
|
|
||||||
# ---- Cross-Compilation Helpers ----
|
# ---- Cross-Compilation Helpers ----
|
||||||
@@ -203,6 +204,7 @@ RUN mkdir -p /crowdsec-out/config && \
|
|||||||
cp -r config/* /crowdsec-out/config/ || true
|
cp -r config/* /crowdsec-out/config/ || true
|
||||||
|
|
||||||
# ---- CrowdSec Fallback (for architectures where build fails) ----
|
# ---- CrowdSec Fallback (for architectures where build fails) ----
|
||||||
|
# renovate: datasource=docker depName=alpine
|
||||||
FROM alpine:3.23 AS crowdsec-fallback
|
FROM alpine:3.23 AS crowdsec-fallback
|
||||||
|
|
||||||
WORKDIR /tmp/crowdsec
|
WORKDIR /tmp/crowdsec
|
||||||
|
|||||||
@@ -406,7 +406,7 @@ describe('LiveLogViewer', () => {
|
|||||||
// Use findBy queries (built-in waiting) instead of single waitFor with multiple assertions
|
// Use findBy queries (built-in waiting) instead of single waitFor with multiple assertions
|
||||||
// This avoids race conditions where one failing assertion causes the entire block to retry
|
// This avoids race conditions where one failing assertion causes the entire block to retry
|
||||||
await screen.findByText('10.0.0.1');
|
await screen.findByText('10.0.0.1');
|
||||||
await screen.findByText(/BLOCKED: SQL injection detected/);
|
await screen.findByText(/🚫 BLOCKED: SQL injection detected/);
|
||||||
await screen.findByText(/\[SQL injection detected\]/);
|
await screen.findByText(/\[SQL injection detected\]/);
|
||||||
|
|
||||||
// For getAllByText, keep in waitFor but separate from other assertions
|
// For getAllByText, keep in waitFor but separate from other assertions
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyua
|
|||||||
github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
|
github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
|
||||||
github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f h1:KUppIJq7/+SVif2QVs3tOP0zanoHgBEVAwHxUSIzRqU=
|
github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f h1:KUppIJq7/+SVif2QVs3tOP0zanoHgBEVAwHxUSIzRqU=
|
||||||
github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
|
github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
|
||||||
|
github.com/oschwald/maxminddb-golang/v2 v2.1.1/go.mod h1:PLdx6PR+siSIoXqqy7C7r3SB3KZnhxWr1Dp6g0Hacl8=
|
||||||
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
|
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
|
||||||
github.com/prometheus/client_golang v1.20.4/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE=
|
github.com/prometheus/client_golang v1.20.4/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE=
|
||||||
github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk=
|
github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk=
|
||||||
|
|||||||
Reference in New Issue
Block a user