Merge pull request 'fix(deploy): provision the certs dir traversable by the nonroot gateway' (#238) from fix/ansible-certs-dir-traversable into development
CI / changes (push) Successful in 2s
CI / unit (push) Successful in 11s
CI / integration (push) Successful in 19s
CI / ui (push) Successful in 1m10s
CI / conformance (push) Successful in 11s
CI / gate (push) Successful in 0s
CI / deploy (push) Successful in 1m57s
CI / changes (pull_request) Successful in 2s
CI / unit (pull_request) Successful in 10s
CI / integration (pull_request) Successful in 19s
CI / ui (pull_request) Successful in 1m11s
CI / conformance (pull_request) Successful in 10s
CI / gate (pull_request) Successful in 0s
CI / deploy (pull_request) Has been skipped
CI / changes (push) Successful in 2s
CI / unit (push) Successful in 11s
CI / integration (push) Successful in 19s
CI / ui (push) Successful in 1m10s
CI / conformance (push) Successful in 11s
CI / gate (push) Successful in 0s
CI / deploy (push) Successful in 1m57s
CI / changes (pull_request) Successful in 2s
CI / unit (pull_request) Successful in 10s
CI / integration (pull_request) Successful in 19s
CI / ui (pull_request) Successful in 1m11s
CI / conformance (pull_request) Successful in 10s
CI / gate (pull_request) Successful in 0s
CI / deploy (pull_request) Has been skipped
This commit was merged in pull request #238.
This commit is contained in:
@@ -213,6 +213,20 @@
|
||||
loop:
|
||||
- ""
|
||||
- config
|
||||
- certs
|
||||
- dumps
|
||||
- images
|
||||
|
||||
# The certs dir holds the reverse-mTLS bot-link keypair, bind-mounted into the gateway (and
|
||||
# backend) which run as the distroless nonroot UID 65532 — not the deploy user. The dir must be
|
||||
# traversable by "other" (0755) or the nonroot process cannot open the 0644 keypair and crash-loops
|
||||
# at startup ("mtls: load server keypair: ... permission denied") — a latent failure that only bites
|
||||
# on a container restart (e.g. a host reboot), not while a long-running container holds the keypair
|
||||
# in memory. The keys themselves are 0644 by design (see the gateway compose); the host is
|
||||
# single-tenant and SSH-access-controlled, so a traversable certs dir adds no meaningful exposure.
|
||||
- name: Create the scrabble certs directory (traversable by the nonroot gateway UID)
|
||||
ansible.builtin.file:
|
||||
path: "{{ scrabble_base_dir }}/certs"
|
||||
state: directory
|
||||
owner: "{{ deploy_user }}"
|
||||
group: "{{ deploy_user }}"
|
||||
mode: "0755"
|
||||
|
||||
Reference in New Issue
Block a user