runtime: publish SUPPORT-260915-INFRA-DR-BACKUPV2-PVE-LXC-NORMALIZED-CONFIG-CONTRACT-RCA-414R1
This commit is contained in:
+38
File diff suppressed because one or more lines are too long
+66
@@ -0,0 +1,66 @@
|
||||
CHAT_OUTPUT_BEGIN
|
||||
COMMAND_ID=SUPPORT-260915-INFRA-DR-BACKUPV2-PVE-LXC-NORMALIZED-CONFIG-CONTRACT-RCA-414R1
|
||||
STATUS=OK
|
||||
RC=0
|
||||
HOST=pve01
|
||||
MODE=read-only
|
||||
COMPONENT=infra-dr-backupv2-pve-lxc-normalized-config-contract-rca
|
||||
REFERENCE_REGISTER_CHECK=OK
|
||||
REFERENCE_SHA256=5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66
|
||||
ERROR_REGISTER_CHECK=OK
|
||||
ERROR_REGISTER_SHA256=3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0
|
||||
COMMAND_SHA256=a87375b4ea471776b15e40b0552f4c81f0e5fe90045197a0518f734beaced8ce
|
||||
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=08973e4da91e940bb3efd84f780674c18ca3e100b67cd2c51b47767ad09105f4
|
||||
SANITIZED_OUTPUT_SHA256=08973e4da91e940bb3efd84f780674c18ca3e100b67cd2c51b47767ad09105f4
|
||||
OUTPUT_BEGIN
|
||||
COMMAND_ID=SUPPORT-260915-INFRA-DR-BACKUPV2-PVE-LXC-NORMALIZED-CONFIG-CONTRACT-RCA-414R1
|
||||
MODE=READ_ONLY_PVE_LXC_NORMALIZED_CONFIG_CONTRACT_RCA
|
||||
NO_BACKUP_EXECUTION=YES
|
||||
NO_VZDUMP_EXECUTION=YES
|
||||
NO_CLOUD_ACCESS=YES
|
||||
NO_SYSTEMD_MUTATION=YES
|
||||
NO_PRODUCTION_PROMOTION=YES
|
||||
PRODUCTION_BASELINE_UNCHANGED=PASS
|
||||
ANCHOR_411_BINDING=PASS
|
||||
ANCHOR_413_BINDING=PASS
|
||||
ANCHOR_413_COMMIT=69fb84a1e4be2e9cff9fe96a33f8dab0bf6c9bc5
|
||||
NORMALIZED_CONFIG_CONTRACT={"need_calls":[{"code":"CONFIG_SCHEMA","line":2,"predicate":"type(config) is dict"}],"normalized_calls":[],"signature":"(config)","source":"def normalized_config(config):\n need(type(config) is dict,'CONFIG_SCHEMA')\n out=dict(config)\n for k,v in out.items():\n if DISK_RE.fullmatch(k) and type(v) is str:\n if v.startswith('file='):out[k]=v[5:]\n elif v.startswith('volume='):out[k]=v[7:]\n return out\n","source_sha256":"7f0338f9334bc22fa6840124f31fac14499120430bae7df15ed8900431ca1b4e"}
|
||||
MAKE_PLAN_CONTRACT={"need_calls":[{"code":"NODE_NAME","line":2,"predicate":"np.valid_id(node)"},{"code":"SPACE_VALUE","line":3,"predicate":"type(staging_free) is int and 0 <= staging_free <= 2 ** 63 - 1"},{"code":"PLAN_TIME","line":4,"predicate":"type(now) is int and now >= 0"},{"code":"CONFIGS_SCHEMA","line":5,"predicate":"type(configs) is dict"},{"code":"DUPLICATE_STORAGE","line":7,"predicate":"len({x['storage'] for x in ss}) == len(ss)"},{"code":"GUEST_CONFIG_MISSING","line":11,"predicate":"g['vmid'] in configs"}],"normalized_calls":[{"call":"normalized_config(original)","line":12}],"signature":"(rows, configs, storage_rows, defaults, staging_free, now, node='pve01')","source":"def make_plan(rows,configs,storage_rows,defaults,staging_free,now,node='pve01'):\n need(np.valid_id(node),'NODE_NAME')\n need(type(staging_free) is int and 0<=staging_free<=2**63-1,'SPACE_VALUE')\n need(type(now) is int and now>=0,'PLAN_TIME')\n need(type(configs) is dict,'CONFIGS_SCHEMA')\n guests=np.guests(rows,node);ss=np.storages(storage_rows)\n need(len({x['storage'] for x in ss})==len(ss),'DUPLICATE_STORAGE')\n stores={x['storage']:x for x in ss};global_summary=defaults_summary(defaults)\n jobs=[]\n for g in guests:\n need(g['vmid'] in configs,'GUEST_CONFIG_MISSING')\n original=configs[g['vmid']];cfg=normalized_config(original);summary=np.config_summary(cfg,g['type'])\n summary['config_sha256']=t.sha(core.canonical_bytes(original))\n block=set(summary['blockers'])|set(global_summary['blockers']);sizes=[]\n if not summary['disks']:block.add('NO_BACKUP_DISKS')\n if g['template']:block.add('TEMPLATE_REQUIRES_SEPARATE_POLICY')\n if g['status']!='running':block.add('GUEST_NOT_RUNNING')\n if any(k=='args' or re.match(r'hostpci\\d+|usb\\d+|virtiofs\\d+|dev\\d+|lxc\\.',k) for k in cfg):\n block.add('EXTERNAL_DEVICE_OR_CUSTOM_CONFIG')\n for disk in summary['disks']:\n slot=disk['slot'];opts={}\n for field in cfg[slot].split(',')[1:]:\n k,sep,v=field.partition('=')\n if sep:opts[k]=v\n if 'backup' in opts and opts['backup'] not in ('0','1','yes','no','on','off','true','false'):\n block.add('BACKUP_FLAG_UNKNOWN')\n if disk['backup_setting']=='default_unproven':\n if g['type']=='qemu':disk['backup_setting']='included_default_qemu'\n elif slot=='rootfs':disk['backup_setting']='included_default_rootfs'\n st=stores.get(disk['storage'])\n if st is None or st['active'] is not True or st['enabled'] is not True:block.add('STORAGE_NOT_AVAILABLE')\n elif g['type']=='lxc' and st['type'] not in ('lvmthin','zfspool'):block.add('LXC_SNAPSHOT_SUPPORT_UNPROVEN')\n if disk['configured_size_bytes'] is not None:sizes.append(disk['configured_size_bytes'])\n total=sum(sizes)\n if total>stream.MAX_BYTES:block.add('GUEST_SIZE_EXCEEDS_CORE_BOUND')\n # Policy ceiling, not an estimate of compression ratio. Actual byte cap is enforced at read/write.\n configured_bound=min(stream.MAX_BYTES,total+(total+9)//10+64*1024**2) if total else 0\n capacity=max(0,(staging_free-LOCAL_RESERVE)//4)\n cap=min(configured_bound,capacity)\n if cap<=0:block.add('STAGING_CAPACITY_ZERO')\n summary['blockers']=sorted(block)\n job={**g,**summary,'observed_at':now,'global_defaults_sha256':global_summary['sha256'],\n 'configured_disk_bytes':total,'configured_archive_bound_bytes':configured_bound,\n 'archive_cap_bytes':cap,'configured_full_cycle_fits':bool(configured_bound and 4*configured_bound+LOCAL_RESERVE<=staging_free),\n 'compression_dependent':bool(configured_bound and cap<configured_bound),\n 'coverage_eligible':not block,'local_reserve_bytes':LOCAL_RESERVE,'snapshot_history_included':False,\n 'cdrom_media_included':False,'application_consistency_verified':False,'guest_restore_verified':False}\n jobs.append(job)\n return {'schema_version':1,'node':node,'observed_at':now,'local_guest_count':len(jobs),\n 'jobs':jobs,'storages':ss,'global_defaults':global_summary,'global_blockers':global_summary['blockers'],\n 'all_guest_coverage_eligible':all(j['coverage_eligible'] for j in jobs),'staging_free_bytes':staging_free,\n 'nodeset_backup_approved':False,'full_host_coverage':False,'backup_executed':False,\n 'capacity_policy':'four archive copies plus 4GiB; capped producer; actual compressed size still unknown'}\n","source_sha256":"dbe02a7afc7bf007217ec6b59146e558b2e7a028ab11a45d29c927c1e26f33d0"}
|
||||
PCT_CONFIG_STRUCTURE={"bytes":340,"duplicate_keys":[],"keys":["arch","cores","features","hostname","memory","nameserver","net0","onboot","ostype","rootfs","searchdomain","startup","swap","unprivileged"],"lines":14,"no_colon_line_numbers":[],"sha256":"f6d5c5dbcddd545533059f5484f5909aa53c3a1298e135e670ce33a8c19e557e"}
|
||||
CONF_FILE_STRUCTURE={"bytes":340,"duplicate_keys":[],"keys":["arch","cores","features","hostname","memory","nameserver","net0","onboot","ostype","rootfs","searchdomain","startup","swap","unprivileged"],"lines":14,"no_colon_line_numbers":[],"sha256":"f6d5c5dbcddd545533059f5484f5909aa53c3a1298e135e670ce33a8c19e557e"}
|
||||
NORMALIZED_CONFIG_PROBES=[{"exception_class":"pve265.PVEError","label":"pct_stdout","message_sha256":"9afd76a71e5147e09c4037eaf5cf3f4ca657720adbc2cc41d55556788eefe87e","ok":false,"safe_code":"CONFIG_SCHEMA"},{"exception_class":"pve265.PVEError","label":"conf_file","message_sha256":"9afd76a71e5147e09c4037eaf5cf3f4ca657720adbc2cc41d55556788eefe87e","ok":false,"safe_code":"CONFIG_SCHEMA"}]
|
||||
NORMALIZED_CONFIG_FAILURE_CODES=["CONFIG_SCHEMA"]
|
||||
MAKE_PLAN_RELEVANT_CALLS=["normalized_config(original)","np.config_summary(cfg, g['type'])","np.guests(rows, node)"]
|
||||
PRODUCTION_POST_RCA_UNCHANGED=PASS
|
||||
STATUS=OK
|
||||
PHASE=COMPLETE
|
||||
REASON=NONE
|
||||
NEXT_GATE=PVE_LXC_FRESH_PLAN_CONTRACT_PROOF
|
||||
CHANGES_MADE=false
|
||||
MUTATION_OUTCOME=NO_MUTATION
|
||||
PRODUCTION_PROMOTION=NO
|
||||
BACKUP_EXECUTIONS=0
|
||||
VZDUMP_EXECUTIONS=0
|
||||
CLOUD_WRITES=0
|
||||
CLOUD_DELETIONS=0
|
||||
SYSTEMD_MUTATIONS=0
|
||||
SCHEDULER_CUTOVER=NO
|
||||
LEGACY_BACKUP_DISABLES=0
|
||||
HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"SUPPORT-260915-INFRA-DR-BACKUPV2-PVE-LXC-NORMALIZED-CONFIG-CONTRACT-RCA-414R1","rollback_restored":null,"rollback_started":false,"status":"OK","version":1}
|
||||
|
||||
OUTPUT_END
|
||||
CHAT_OUTPUT_END
|
||||
+11
-11
File diff suppressed because one or more lines are too long
+27
-26
@@ -1,22 +1,22 @@
|
||||
CHAT_OUTPUT_BEGIN
|
||||
COMMAND_ID=SUPPORT-260915-INFRA-DR-BACKUPV2-PVE-LXC-REAL-ENVIRONMENT-DRY-RUN-CARRIER-RCA-FIX-413R1
|
||||
STATUS=FAIL
|
||||
RC=2
|
||||
COMMAND_ID=SUPPORT-260915-INFRA-DR-BACKUPV2-PVE-LXC-NORMALIZED-CONFIG-CONTRACT-RCA-414R1
|
||||
STATUS=OK
|
||||
RC=0
|
||||
HOST=pve01
|
||||
MODE=read-only
|
||||
COMPONENT=infra-dr-backupv2-pve-lxc-real-environment-dry-run
|
||||
COMPONENT=infra-dr-backupv2-pve-lxc-normalized-config-contract-rca
|
||||
REFERENCE_REGISTER_CHECK=OK
|
||||
REFERENCE_SHA256=5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66
|
||||
ERROR_REGISTER_CHECK=OK
|
||||
ERROR_REGISTER_SHA256=3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0
|
||||
COMMAND_SHA256=34a93024aee9f411824899fe0537da7a2708382c8b710cff98554d45bea900f2
|
||||
COMMAND_SHA256=a87375b4ea471776b15e40b0552f4c81f0e5fe90045197a0518f734beaced8ce
|
||||
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=2
|
||||
COMMAND_RC=0
|
||||
CHANGES_MADE=false
|
||||
ROLLBACK_STARTED=false
|
||||
ROLLBACK_RESTORED=null
|
||||
@@ -24,33 +24,34 @@ MUTATION_OUTCOME=NO_MUTATION
|
||||
SANITIZED=yes
|
||||
SECRETS_INCLUDED=no
|
||||
PRIVATE_ADDRESSES_INCLUDED=no
|
||||
RAW_EVIDENCE_SHA256=d30b19e647719eccc4a0c5054c89d94c8bd291b28395970ab7667a93e9aecf10
|
||||
SANITIZED_OUTPUT_SHA256=d30b19e647719eccc4a0c5054c89d94c8bd291b28395970ab7667a93e9aecf10
|
||||
RAW_EVIDENCE_SHA256=08973e4da91e940bb3efd84f780674c18ca3e100b67cd2c51b47767ad09105f4
|
||||
SANITIZED_OUTPUT_SHA256=08973e4da91e940bb3efd84f780674c18ca3e100b67cd2c51b47767ad09105f4
|
||||
OUTPUT_BEGIN
|
||||
COMMAND_ID=SUPPORT-260915-INFRA-DR-BACKUPV2-PVE-LXC-REAL-ENVIRONMENT-DRY-RUN-CARRIER-RCA-FIX-413R1
|
||||
MODE=READ_ONLY_PVE_LXC_REAL_ENVIRONMENT_DRY_RUN
|
||||
COMMAND_ID=SUPPORT-260915-INFRA-DR-BACKUPV2-PVE-LXC-NORMALIZED-CONFIG-CONTRACT-RCA-414R1
|
||||
MODE=READ_ONLY_PVE_LXC_NORMALIZED_CONFIG_CONTRACT_RCA
|
||||
NO_BACKUP_EXECUTION=YES
|
||||
NO_VZDUMP_EXECUTION=YES
|
||||
NO_CLOUD_ACCESS=YES
|
||||
NO_SYSTEMD_MUTATION=YES
|
||||
NO_PRODUCTION_PROMOTION=YES
|
||||
ANCHOR_411_BINDING=PASS
|
||||
ANCHOR_411_COMMIT=d962e6274b69b208441a03a4b8ed47977a36eb65
|
||||
PRODUCTION_BASELINE_UNCHANGED=PASS
|
||||
CANDIDATE_INVENTORY_SHA256=97f31657339e465af250ebd77d5e3c844a6033b2c1b7eb308373eee6693da51d
|
||||
CANDIDATE_IDENTITY=PASS
|
||||
V2_TIMER_STATE={"active":"inactive","enabled":"disabled"}
|
||||
RUNTIME_QUIESCENCE=PASS
|
||||
EXACT_OWNER_GRAPH=PASS
|
||||
CT112_LIVE_STATUS=status: running
|
||||
DRYRUN_EXCEPTION_CLASS=PVEError
|
||||
DRYRUN_EXCEPTION_MESSAGE_SHA256=9afd76a71e5147e09c4037eaf5cf3f4ca657720adbc2cc41d55556788eefe87e
|
||||
STATUS=FAIL
|
||||
PHASE=REAL_ENVIRONMENT_DRY_RUN
|
||||
REASON=UNHANDLED_PVEError
|
||||
NEXT_GATE=STOP
|
||||
ANCHOR_411_BINDING=PASS
|
||||
ANCHOR_413_BINDING=PASS
|
||||
ANCHOR_413_COMMIT=69fb84a1e4be2e9cff9fe96a33f8dab0bf6c9bc5
|
||||
NORMALIZED_CONFIG_CONTRACT={"need_calls":[{"code":"CONFIG_SCHEMA","line":2,"predicate":"type(config) is dict"}],"normalized_calls":[],"signature":"(config)","source":"def normalized_config(config):\n need(type(config) is dict,'CONFIG_SCHEMA')\n out=dict(config)\n for k,v in out.items():\n if DISK_RE.fullmatch(k) and type(v) is str:\n if v.startswith('file='):out[k]=v[5:]\n elif v.startswith('volume='):out[k]=v[7:]\n return out\n","source_sha256":"7f0338f9334bc22fa6840124f31fac14499120430bae7df15ed8900431ca1b4e"}
|
||||
MAKE_PLAN_CONTRACT={"need_calls":[{"code":"NODE_NAME","line":2,"predicate":"np.valid_id(node)"},{"code":"SPACE_VALUE","line":3,"predicate":"type(staging_free) is int and 0 <= staging_free <= 2 ** 63 - 1"},{"code":"PLAN_TIME","line":4,"predicate":"type(now) is int and now >= 0"},{"code":"CONFIGS_SCHEMA","line":5,"predicate":"type(configs) is dict"},{"code":"DUPLICATE_STORAGE","line":7,"predicate":"len({x['storage'] for x in ss}) == len(ss)"},{"code":"GUEST_CONFIG_MISSING","line":11,"predicate":"g['vmid'] in configs"}],"normalized_calls":[{"call":"normalized_config(original)","line":12}],"signature":"(rows, configs, storage_rows, defaults, staging_free, now, node='pve01')","source":"def make_plan(rows,configs,storage_rows,defaults,staging_free,now,node='pve01'):\n need(np.valid_id(node),'NODE_NAME')\n need(type(staging_free) is int and 0<=staging_free<=2**63-1,'SPACE_VALUE')\n need(type(now) is int and now>=0,'PLAN_TIME')\n need(type(configs) is dict,'CONFIGS_SCHEMA')\n guests=np.guests(rows,node);ss=np.storages(storage_rows)\n need(len({x['storage'] for x in ss})==len(ss),'DUPLICATE_STORAGE')\n stores={x['storage']:x for x in ss};global_summary=defaults_summary(defaults)\n jobs=[]\n for g in guests:\n need(g['vmid'] in configs,'GUEST_CONFIG_MISSING')\n original=configs[g['vmid']];cfg=normalized_config(original);summary=np.config_summary(cfg,g['type'])\n summary['config_sha256']=t.sha(core.canonical_bytes(original))\n block=set(summary['blockers'])|set(global_summary['blockers']);sizes=[]\n if not summary['disks']:block.add('NO_BACKUP_DISKS')\n if g['template']:block.add('TEMPLATE_REQUIRES_SEPARATE_POLICY')\n if g['status']!='running':block.add('GUEST_NOT_RUNNING')\n if any(k=='args' or re.match(r'hostpci\\d+|usb\\d+|virtiofs\\d+|dev\\d+|lxc\\.',k) for k in cfg):\n block.add('EXTERNAL_DEVICE_OR_CUSTOM_CONFIG')\n for disk in summary['disks']:\n slot=disk['slot'];opts={}\n for field in cfg[slot].split(',')[1:]:\n k,sep,v=field.partition('=')\n if sep:opts[k]=v\n if 'backup' in opts and opts['backup'] not in ('0','1','yes','no','on','off','true','false'):\n block.add('BACKUP_FLAG_UNKNOWN')\n if disk['backup_setting']=='default_unproven':\n if g['type']=='qemu':disk['backup_setting']='included_default_qemu'\n elif slot=='rootfs':disk['backup_setting']='included_default_rootfs'\n st=stores.get(disk['storage'])\n if st is None or st['active'] is not True or st['enabled'] is not True:block.add('STORAGE_NOT_AVAILABLE')\n elif g['type']=='lxc' and st['type'] not in ('lvmthin','zfspool'):block.add('LXC_SNAPSHOT_SUPPORT_UNPROVEN')\n if disk['configured_size_bytes'] is not None:sizes.append(disk['configured_size_bytes'])\n total=sum(sizes)\n if total>stream.MAX_BYTES:block.add('GUEST_SIZE_EXCEEDS_CORE_BOUND')\n # Policy ceiling, not an estimate of compression ratio. Actual byte cap is enforced at read/write.\n configured_bound=min(stream.MAX_BYTES,total+(total+9)//10+64*1024**2) if total else 0\n capacity=max(0,(staging_free-LOCAL_RESERVE)//4)\n cap=min(configured_bound,capacity)\n if cap<=0:block.add('STAGING_CAPACITY_ZERO')\n summary['blockers']=sorted(block)\n job={**g,**summary,'observed_at':now,'global_defaults_sha256':global_summary['sha256'],\n 'configured_disk_bytes':total,'configured_archive_bound_bytes':configured_bound,\n 'archive_cap_bytes':cap,'configured_full_cycle_fits':bool(configured_bound and 4*configured_bound+LOCAL_RESERVE<=staging_free),\n 'compression_dependent':bool(configured_bound and cap<configured_bound),\n 'coverage_eligible':not block,'local_reserve_bytes':LOCAL_RESERVE,'snapshot_history_included':False,\n 'cdrom_media_included':False,'application_consistency_verified':False,'guest_restore_verified':False}\n jobs.append(job)\n return {'schema_version':1,'node':node,'observed_at':now,'local_guest_count':len(jobs),\n 'jobs':jobs,'storages':ss,'global_defaults':global_summary,'global_blockers':global_summary['blockers'],\n 'all_guest_coverage_eligible':all(j['coverage_eligible'] for j in jobs),'staging_free_bytes':staging_free,\n 'nodeset_backup_approved':False,'full_host_coverage':False,'backup_executed':False,\n 'capacity_policy':'four archive copies plus 4GiB; capped producer; actual compressed size still unknown'}\n","source_sha256":"dbe02a7afc7bf007217ec6b59146e558b2e7a028ab11a45d29c927c1e26f33d0"}
|
||||
PCT_CONFIG_STRUCTURE={"bytes":340,"duplicate_keys":[],"keys":["arch","cores","features","hostname","memory","nameserver","net0","onboot","ostype","rootfs","searchdomain","startup","swap","unprivileged"],"lines":14,"no_colon_line_numbers":[],"sha256":"f6d5c5dbcddd545533059f5484f5909aa53c3a1298e135e670ce33a8c19e557e"}
|
||||
CONF_FILE_STRUCTURE={"bytes":340,"duplicate_keys":[],"keys":["arch","cores","features","hostname","memory","nameserver","net0","onboot","ostype","rootfs","searchdomain","startup","swap","unprivileged"],"lines":14,"no_colon_line_numbers":[],"sha256":"f6d5c5dbcddd545533059f5484f5909aa53c3a1298e135e670ce33a8c19e557e"}
|
||||
NORMALIZED_CONFIG_PROBES=[{"exception_class":"pve265.PVEError","label":"pct_stdout","message_sha256":"9afd76a71e5147e09c4037eaf5cf3f4ca657720adbc2cc41d55556788eefe87e","ok":false,"safe_code":"CONFIG_SCHEMA"},{"exception_class":"pve265.PVEError","label":"conf_file","message_sha256":"9afd76a71e5147e09c4037eaf5cf3f4ca657720adbc2cc41d55556788eefe87e","ok":false,"safe_code":"CONFIG_SCHEMA"}]
|
||||
NORMALIZED_CONFIG_FAILURE_CODES=["CONFIG_SCHEMA"]
|
||||
MAKE_PLAN_RELEVANT_CALLS=["normalized_config(original)","np.config_summary(cfg, g['type'])","np.guests(rows, node)"]
|
||||
PRODUCTION_POST_RCA_UNCHANGED=PASS
|
||||
STATUS=OK
|
||||
PHASE=COMPLETE
|
||||
REASON=NONE
|
||||
NEXT_GATE=PVE_LXC_FRESH_PLAN_CONTRACT_PROOF
|
||||
CHANGES_MADE=false
|
||||
MUTATION_OUTCOME=NO_PERSISTENT_MUTATION
|
||||
MUTATION_OUTCOME=NO_MUTATION
|
||||
PRODUCTION_PROMOTION=NO
|
||||
BACKUP_EXECUTIONS=0
|
||||
VZDUMP_EXECUTIONS=0
|
||||
@@ -59,7 +60,7 @@ CLOUD_DELETIONS=0
|
||||
SYSTEMD_MUTATIONS=0
|
||||
SCHEDULER_CUTOVER=NO
|
||||
LEGACY_BACKUP_DISABLES=0
|
||||
HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"SUPPORT-260915-INFRA-DR-BACKUPV2-PVE-LXC-REAL-ENVIRONMENT-DRY-RUN-CARRIER-RCA-FIX-413R1","rollback_restored":null,"rollback_started":false,"status":"FAIL","version":1}
|
||||
HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"SUPPORT-260915-INFRA-DR-BACKUPV2-PVE-LXC-NORMALIZED-CONFIG-CONTRACT-RCA-414R1","rollback_restored":null,"rollback_started":false,"status":"OK","version":1}
|
||||
|
||||
OUTPUT_END
|
||||
CHAT_OUTPUT_END
|
||||
|
||||
Reference in New Issue
Block a user