CHAT_OUTPUT_BEGIN
COMMAND_ID=SUPPORT-260923-SPB-TLS-BRIDGE-NPMPLUS-RUNTIME-RCA-9196R1
STATUS=OK
RC=0
HOST=pve01
MODE=read-only
COMPONENT=spb-tls-bridge-npmplus-runtime-rca
REFERENCE_REGISTER_CHECK=OK
REFERENCE_SHA256=5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66
ERROR_REGISTER_CHECK=OK
ERROR_REGISTER_SHA256=3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0
COMMAND_SHA256=ddb8ebb208b8194c670dbb45bda053cae7d0a615dc00c22ef8b7eb110a91ca2f
DUPLICATE_FAILED_COMMAND_BLOCKED=false
EXECUTION_STARTED=true
CHANGE_DECLARED=false
RESULT_CONTRACT_VALID=true
RESULT_CONTRACT_STATUS=NOT_APPLICABLE
RESULT_CONTRACT_ERROR=NONE
COMMAND_RC=0
CHANGES_MADE=false
ROLLBACK_STARTED=false
ROLLBACK_RESTORED=null
MUTATION_OUTCOME=NO_MUTATION
SANITIZED=yes
SECRETS_INCLUDED=no
PRIVATE_ADDRESSES_INCLUDED=no
RAW_EVIDENCE_SHA256=4b9b007c3d0a9273577ab848f1ac5a4c6bc925795eb52941a4ff505b2cc7abec
SANITIZED_OUTPUT_SHA256=4b9b007c3d0a9273577ab848f1ac5a4c6bc925795eb52941a4ff505b2cc7abec
OUTPUT_BEGIN
RCA9196_BEGIN=true
MUTATION_BOUNDARY=READ_ONLY_VM130_RUNTIME_RCA;NO_PRODUCTION_WRITE;NO_SPB_WRITE;NO_DNS_WRITE;NO_NGINX_RELOAD
VM130_QGA_TRANSPORT_RC=0
VM130_QGA_STDERR_SHA16=e3b0c44298fc1c14
VM130_QGA_EXITCODE=0
VM130_GUEST_STDERR_SHA16=e3b0c44298fc1c14
RCA9196={"baseline":{"nginx_test_rc":0,"stderr_sha16":"9cb221b6993277a1"},"classification":"LIVE_CONFIG_DIFFERS_FROM_IMAGE","container":{"cmd":null,"entrypoint":["tini","--","entrypoint.sh"],"env_count":12,"env_names":["ACME_PROFILE","AUTH_REQUEST_AUTHENTIK_UPSTREAM","COOKIE_SECRET","DISABLE_H3_QUIC","DISABLE_IPV6","INITIAL_ADMIN_EMAIL","INITIAL_ADMIN_PASSWORD","IPV4_BINDING","NODE_ENV","NPM_IPV4_BINDING","PATH","TZ"],"image_sha16":"d16df105013397a1","user":""},"diff":{"image_line18":"  ssl_certificate ;","live_equals_image":false,"live_line18":"  ssl_certificate /data/tls/dummycert.pem;"},"image":{"lines_1_35":[{"line":1,"text":"upstream npmplus {"},{"line":2,"text":"  server unix:/run/npmplus.sock;"},{"line":3,"text":"}"},{"line":4,"text":""},{"line":5,"text":"server {"},{"line":6,"text":"  server_name \"\";"},{"line":7,"text":"  listen <IP_REDACTED>:81 ssl;"},{"line":8,"text":"  listen [::]:81 ssl;"},{"line":9,"text":"  ssl_reject_handshake on;"},{"line":10,"text":"  return 444;"},{"line":11,"text":"}"},{"line":12,"text":""},{"line":13,"text":"server {"},{"line":14,"text":"  listen <IP_REDACTED>:81 ssl bind reuseport deferred multipath so_keepalive=on default_server;"},{"line":15,"text":"  listen [::]:81 ssl bind reuseport deferred multipath so_keepalive=on default_server;"},{"line":16,"text":""},{"line":17,"text":"  server_name _;"},{"line":18,"text":"  ssl_certificate ;"},{"line":19,"text":"  ssl_certificate_key ;"},{"line":20,"text":"  #ssl_stapling on;"},{"line":21,"text":"  #ssl_stapling_verify on;"},{"line":22,"text":"  #ssl_stapling_file ;"},{"line":23,"text":"  #ssl_certificate_compression off;"},{"line":24,"text":""},{"line":25,"text":"  if ($scheme = \"http\") {"},{"line":26,"text":"    return 301 <URL_REDACTED>"},{"line":27,"text":"  }"},{"line":28,"text":"  if ($http_x_forwarded_proto = \"http\") {"},{"line":29,"text":"    return 301 <URL_REDACTED>"},{"line":30,"text":"  }"},{"line":31,"text":""},{"line":32,"text":"  client_max_body_size 1m;"},{"line":33,"text":"  more_set_headers \"X-Frame-Options: DENY\";"},{"line":34,"text":"  more_set_headers \"Referrer-Policy: no-referrer\";"},{"line":35,"text":"  more_set_headers \"Cross-Origin-Opener-Policy: same-origin\";"}],"rc":0,"sha16":"cfaf1d6ee20a39b1","size":3673,"stderr_safe":[],"stderr_sha16":"e3b0c44298fc1c14"},"live":{"lines_1_35":[{"line":1,"text":"upstream npmplus {"},{"line":2,"text":"  server unix:/run/npmplus.sock;"},{"line":3,"text":"}"},{"line":4,"text":""},{"line":5,"text":"server {"},{"line":6,"text":"  server_name \"\";"},{"line":7,"text":"  listen <IP_REDACTED>:81 ssl;"},{"line":8,"text":"  #listen [::]:81 ssl;"},{"line":9,"text":"  ssl_reject_handshake on;"},{"line":10,"text":"  return 444;"},{"line":11,"text":"}"},{"line":12,"text":""},{"line":13,"text":"server {"},{"line":14,"text":"  listen <IP_REDACTED>:81 ssl bind reuseport deferred so_keepalive=on default_server;"},{"line":15,"text":"  #listen [::]:81 ssl bind reuseport deferred so_keepalive=on default_server;"},{"line":16,"text":""},{"line":17,"text":"  server_name _;"},{"line":18,"text":"  ssl_certificate /data/tls/dummycert.pem;"},{"line":19,"text":"  ssl_certificate_key /data/tls/dummykey.pem;"},{"line":20,"text":"  #ssl_stapling on;"},{"line":21,"text":"  #ssl_stapling_verify on;"},{"line":22,"text":"  #ssl_stapling_file ;"},{"line":23,"text":"  #ssl_certificate_compression off;"},{"line":24,"text":""},{"line":25,"text":"  if ($scheme = \"http\") {"},{"line":26,"text":"    return 301 <URL_REDACTED>"},{"line":27,"text":"  }"},{"line":28,"text":"  if ($http_x_forwarded_proto = \"http\") {"},{"line":29,"text":"    return 301 <URL_REDACTED>"},{"line":30,"text":"  }"},{"line":31,"text":""},{"line":32,"text":"  client_max_body_size 1m;"},{"line":33,"text":"  more_set_headers \"X-Frame-Options: DENY\";"},{"line":34,"text":"  more_set_headers \"Referrer-Policy: no-referrer\";"},{"line":35,"text":"  more_set_headers \"Cross-Origin-Opener-Policy: same-origin\";"}],"rc":0,"sha16":"507fa874e9632e71","size":3704,"stderr_sha16":"e3b0c44298fc1c14"},"same_env_direct_nginx":{"rc":1,"stderr_safe":["nginx: [emerg] open() \"/data/custom_nginx/root.conf\" failed (2: No such file or directory) in /usr/local/nginx/conf/nginx.conf:20","nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed"],"stderr_sha16":"ae9c0a07f6c00888"}}
RCA9196_CLASSIFICATION=LIVE_CONFIG_DIFFERS_FROM_IMAGE
TASK_COMPLETE=true
TASK_RESULT=PASS_SPB_TLS_BRIDGE_NPMPLUS_RUNTIME_RCA
DECISION=READ_EXACT_9196_THEN_BUILD_RUNTIME_FAITHFUL_NGINX_TEST
NEXT_GATE=EXACT_9196_LIVE_VS_IMAGE_NPMPLUS_CONF
HOMELAB_RESULT_CONTRACT={"version":1,"command_id":"SUPPORT-260923-SPB-TLS-BRIDGE-NPMPLUS-RUNTIME-RCA-9196R1","status":"OK","changes_made":false,"rollback_started":false,"rollback_restored":null}

OUTPUT_END
CHAT_OUTPUT_END
