@smi-digital/create-smi-app 2.14.1 → 2.14.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smi-digital/create-smi-app",
3
- "version": "2.14.1",
3
+ "version": "2.14.2",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -4,4 +4,7 @@ node_modules
4
4
  !production.*.env
5
5
 
6
6
  # Ansible Vault Password (NEVER COMMIT THIS)
7
- .vault-password
7
+ .vault-password
8
+
9
+ # Jetbrains IDE
10
+ .idea
@@ -43,5 +43,25 @@ COPY docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
43
43
  RUN chmod +x /usr/local/bin/docker-entrypoint.sh
44
44
 
45
45
  EXPOSE 1337
46
+
47
+ # KNOWN GAP — this image runs as root, unlike frontend/Dockerfile.
48
+ #
49
+ # Strapi writes into /opt/app/public, which is a mounted volume at runtime, and
50
+ # the entrypoint reseeds it on every start. The deploy provisions that volume
51
+ # owned by root, so adding `USER node` here leaves the container unable to write
52
+ # to it and the entrypoint fails on boot. Making this non-root is a change to how
53
+ # the volume is provisioned — cd-library and the Ansible role — not a Dockerfile
54
+ # edit, so it cannot be fixed in this template alone.
55
+ #
56
+ # Every backend in the fleet carries this same suppression. It is here so a new
57
+ # project starts consistent with them rather than failing its first Semgrep run,
58
+ # not because running as root is intended. If the provisioning side is ever
59
+ # changed to create the volume as uid 1000, delete these two lines and add
60
+ # `USER node` — this template is the right place to start that.
61
+ #
62
+ # Suppressed narrowly, by rule and on these two lines only, so that a NEW
63
+ # root-running image elsewhere in the project still fails the scan.
64
+ # nosemgrep: dockerfile.security.missing-user-entrypoint.missing-user-entrypoint
46
65
  ENTRYPOINT ["docker-entrypoint.sh"]
66
+ # nosemgrep: dockerfile.security.missing-user.missing-user
47
67
  CMD ["npm", "run", "start"]