Archived
Compare commits
125
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5583798c53 | ||
|
|
1b276c962b | ||
|
|
e9e7671644 | ||
|
|
a816a5dabd | ||
|
|
2b353f7aea | ||
|
|
576e9af13f | ||
|
|
68d32ce9a9 | ||
|
|
316ea39f93 | ||
|
|
bf8d5f95f5 | ||
|
|
d76cd40dd8 | ||
|
|
3d16144f40 | ||
|
|
0ccfd1f055 | ||
|
|
22fd88c0f6 | ||
|
|
2714cab0f7 | ||
|
|
f1002351a0 | ||
|
|
ef5680c654 | ||
|
|
187161c1d1 | ||
|
|
eacb4cd007 | ||
|
|
2d1366d10e | ||
|
|
9990ac8166 | ||
|
|
0978b153ee | ||
|
|
4077540579 | ||
|
|
df4c95fd3f | ||
|
|
180b80e649 | ||
|
|
f5362b04d4 | ||
|
|
1b929a9125 | ||
|
|
3827b615dc | ||
|
|
0c5bbaaa01 | ||
|
|
10cd973e35 | ||
|
|
76f1241761 | ||
|
|
3c293159ff | ||
|
|
ee98296e4a | ||
|
|
a24df3141e | ||
|
|
fc97869c19 | ||
|
|
41a463c81a | ||
|
|
6ddd0663c7 | ||
|
|
f49a5ec9bf | ||
|
|
6eb9a97583 | ||
|
|
583a0513d5 | ||
|
|
3267b4a2c5 | ||
|
|
e397bbfc81 | ||
|
|
94c09daa58 | ||
|
|
bd61dae4fb | ||
|
|
f14ffae65f | ||
|
|
11e27c3b3a | ||
|
|
4da16c8d70 | ||
|
|
bb263cc6f9 | ||
|
|
5ab7c7853c | ||
|
|
525009d881 | ||
|
|
312b90a66e | ||
|
|
21482c76e1 | ||
|
|
2777cb6ba8 | ||
|
|
f8fdb3cc8c | ||
|
|
6669944dd5 | ||
|
|
722f5e8f29 | ||
|
|
d3afa9df64 | ||
|
|
33146b6037 | ||
|
|
4db5a689be | ||
|
|
f0084a0f31 | ||
|
|
67880e9629 | ||
|
|
b9eac65d44 | ||
|
|
d1626a4e9e | ||
|
|
4182918b31 | ||
|
|
cef145d5c2 | ||
|
|
9521cde49a | ||
|
|
8cd346d87e | ||
|
|
6b30e62219 | ||
|
|
0547438969 | ||
|
|
dbdfda5d01 | ||
|
|
3370382ce7 | ||
|
|
32efeb4a01 | ||
|
|
120da989cc | ||
|
|
8a7b5958dc | ||
|
|
6118b57513 | ||
|
|
dd432c3268 | ||
|
|
d0095e31ea | ||
|
|
f0797716e2 | ||
|
|
f902f17573 | ||
|
|
09087ba035 | ||
|
|
dddc049a32 | ||
|
|
2e4595c193 | ||
|
|
df45d105b2 | ||
|
|
d87cfc1c9f | ||
|
|
3463b3ceb8 | ||
|
|
4629e24499 | ||
|
|
403e195d85 | ||
|
|
b9effb3e53 | ||
|
|
dcbde2f888 | ||
|
|
8d2a8c4bf6 | ||
|
|
f8a0e58999 | ||
|
|
fd547e7d5b | ||
|
|
9b0810772b | ||
|
|
2a0ff4130f | ||
|
|
a6dc57e8a8 | ||
|
|
ef69a6c598 | ||
|
|
da8e914a31 | ||
|
|
1e9f7ffd97 | ||
|
|
dc193022d8 | ||
|
|
ec3d2998c3 | ||
|
|
5689ee22b2 | ||
|
|
97b420c745 | ||
|
|
151ea34098 | ||
|
|
074424b742 | ||
|
|
494033c732 | ||
|
|
3eba3de62e | ||
|
|
6dbffa6aa3 | ||
|
|
cfcccb5df9 | ||
|
|
6925899589 | ||
|
|
dcec3adaaf | ||
|
|
737b27e76d | ||
|
|
f1a2480f0a | ||
|
|
c1614f5581 | ||
|
|
fa5cfb7d49 | ||
|
|
c474cba4a6 | ||
|
|
ef092a0be6 | ||
|
|
8dc23e0dc3 | ||
|
|
33d9d1680e | ||
|
|
f62f5a7ed5 | ||
|
|
761be4b8a7 | ||
|
|
e8a82eef01 | ||
|
|
b08bdc5941 | ||
|
|
9fc8232614 | ||
|
|
677c9c9a90 | ||
|
|
8a9f1a226a | ||
|
|
1120a7720a |
@@ -40,7 +40,35 @@ jobs:
|
|||||||
mvn -B -ntp -s .gitea/ci-settings.xml -DskipFrontend=true verify
|
mvn -B -ntp -s .gitea/ci-settings.xml -DskipFrontend=true verify
|
||||||
|
|
||||||
# Build + Trivy on every run (PRs included), so a broken Dockerfile or a new HIGH/CRITICAL CVE
|
# Build + Trivy on every run (PRs included), so a broken Dockerfile or a new HIGH/CRITICAL CVE
|
||||||
# blocks the merge. Only the push is main-only.
|
# blocks the merge.
|
||||||
|
#
|
||||||
|
# A PULL REQUEST MUST NOT TOUCH THE :latest TAG. This runner builds on the host's Docker daemon —
|
||||||
|
# the same daemon the live container runs on — so retagging :latest IS a deployment: Watchtower
|
||||||
|
# compares the running container's image against :latest, finds they differ, and recreates the
|
||||||
|
# container from the locally built image. Gating only the push is not enough; the build is the
|
||||||
|
# deploy.
|
||||||
|
#
|
||||||
|
# The damage is not only that unmerged code ships. Reassigning :latest leaves the running
|
||||||
|
# container's old image untagged, and once that image is pruned Watchtower can no longer read it
|
||||||
|
# to compare against, so it gives up every cycle:
|
||||||
|
#
|
||||||
|
# Failed to retrieve container image info: No such image: sha256:…
|
||||||
|
# Unable to update container "/<name>": no available image info.
|
||||||
|
#
|
||||||
|
# That happened to bennett-portfolio on 2026-07-27: it sat on a four-day-old build, failing to
|
||||||
|
# update 720 times in twenty-four hours, reporting healthy throughout. It had to be recreated by
|
||||||
|
# hand. This repo has the same workflow and the same exposure.
|
||||||
|
#
|
||||||
|
# So a PR builds pr-<number>, which nothing watches. Trivy scans whatever was built, and the push
|
||||||
|
# step below still only runs off a PR.
|
||||||
|
- name: Choose the image tag
|
||||||
|
run: |
|
||||||
|
if [ "${{ github.event_name }}" = "pull_request" ]; then
|
||||||
|
echo "IMAGE_TAG=pr-${{ github.event.number }}" >> "$GITHUB_ENV"
|
||||||
|
else
|
||||||
|
echo "IMAGE_TAG=latest" >> "$GITHUB_ENV"
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Build image
|
- name: Build image
|
||||||
env:
|
env:
|
||||||
DOCKER_BUILDKIT: "1"
|
DOCKER_BUILDKIT: "1"
|
||||||
@@ -51,17 +79,17 @@ jobs:
|
|||||||
--secret id=maven_user,env=MAVEN_USER \
|
--secret id=maven_user,env=MAVEN_USER \
|
||||||
--secret id=maven_token,env=MAVEN_TOKEN \
|
--secret id=maven_token,env=MAVEN_TOKEN \
|
||||||
--build-arg GIT_SHA=${{ github.sha }} \
|
--build-arg GIT_SHA=${{ github.sha }} \
|
||||||
-t git.thebennett.net/reformedwitness/confessions-of-grace:latest -t git.thebennett.net/reformedwitness/confessions-of-grace:${{ github.sha }} .
|
-t "git.thebennett.net/reformedwitness/confessions-of-grace:$IMAGE_TAG" -t git.thebennett.net/reformedwitness/confessions-of-grace:${{ github.sha }} .
|
||||||
|
|
||||||
- name: Scan image (Trivy)
|
- name: Scan image (Trivy)
|
||||||
run: |
|
run: |
|
||||||
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \
|
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \
|
||||||
aquasec/trivy:latest image --scanners vuln --severity HIGH,CRITICAL --ignore-unfixed --no-progress \
|
aquasec/trivy:latest image --scanners vuln --severity HIGH,CRITICAL --ignore-unfixed --no-progress \
|
||||||
git.thebennett.net/reformedwitness/confessions-of-grace:latest || true
|
"git.thebennett.net/reformedwitness/confessions-of-grace:$IMAGE_TAG" || true
|
||||||
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \
|
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \
|
||||||
aquasec/trivy:latest image --scanners vuln --severity HIGH,CRITICAL --ignore-unfixed \
|
aquasec/trivy:latest image --scanners vuln --severity HIGH,CRITICAL --ignore-unfixed \
|
||||||
--pkg-types library --exit-code 1 --no-progress \
|
--pkg-types library --exit-code 1 --no-progress \
|
||||||
git.thebennett.net/reformedwitness/confessions-of-grace:latest
|
"git.thebennett.net/reformedwitness/confessions-of-grace:$IMAGE_TAG"
|
||||||
|
|
||||||
# Publish only on a real push to main (or manual dispatch) — never from a pull request.
|
# Publish only on a real push to main (or manual dispatch) — never from a pull request.
|
||||||
- name: Push image
|
- name: Push image
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"clsx": "2.1.1",
|
"clsx": "2.1.1",
|
||||||
"date-fns": "4.4.0",
|
"date-fns": "4.4.0",
|
||||||
"lucide-react": "1.27.0",
|
"lucide-react": "1.26.0",
|
||||||
"react": "^19.2.7",
|
"react": "^19.2.7",
|
||||||
"react-dom": "^19.2.7",
|
"react-dom": "^19.2.7",
|
||||||
"react-router-dom": "7.18.1",
|
"react-router-dom": "7.18.1",
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<groupId>net.thebennett.platform</groupId>
|
<groupId>net.thebennett.platform</groupId>
|
||||||
<artifactId>platform-parent</artifactId>
|
<artifactId>platform-parent</artifactId>
|
||||||
<version>0.1.9</version>
|
<version>0.1.11</version>
|
||||||
<relativePath/>
|
<relativePath/>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
@@ -26,7 +26,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.thebennett.platform</groupId>
|
<groupId>net.thebennett.platform</groupId>
|
||||||
<artifactId>platform-bom</artifactId>
|
<artifactId>platform-bom</artifactId>
|
||||||
<version>0.1.9</version>
|
<version>0.1.11</version>
|
||||||
<type>pom</type>
|
<type>pom</type>
|
||||||
<scope>import</scope>
|
<scope>import</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|||||||
Reference in New Issue
Block a user