Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
144 commits
Select commit Hold shift + click to select a range
fd2daa5
Update event_manager.c
Abhinavpv28 Jun 9, 2026
0e60392
Update event_manager.h
Abhinavpv28 Jun 9, 2026
0ea4ded
Update uploadstblogs.c
Abhinavpv28 Jun 9, 2026
3438475
Update uploadstblogs.c
Abhinavpv28 Jun 9, 2026
614105c
Update event_manager.c
Abhinavpv28 Jun 9, 2026
7669569
Update uploadstblogs.c
Abhinavpv28 Jun 9, 2026
f308f14
Update backup_logs.h
Abhinavpv28 Jun 10, 2026
3398663
Update backup_logs.c
Abhinavpv28 Jun 10, 2026
2bb7530
Update uploadstblogs.c
Abhinavpv28 Jun 10, 2026
f5f8333
Update context_manager.c
Abhinavpv28 Jun 12, 2026
b8cf640
Update uploadstblogs_types.h
Abhinavpv28 Jun 16, 2026
47ab88c
Update strategies.c
Abhinavpv28 Jun 16, 2026
8572fb0
Update strategies.c
Abhinavpv28 Jun 16, 2026
dffe63c
Update strategies.c
Abhinavpv28 Jun 16, 2026
f0f0cd8
Update strategies.c
Abhinavpv28 Jun 16, 2026
54e3f38
Update strategies.c
Abhinavpv28 Jun 16, 2026
736bfb8
Update strategies.c
Abhinavpv28 Jun 16, 2026
c32d290
Update uploadstblogs_types.h
Abhinavpv28 Jun 16, 2026
256a241
Update strategies.c
Abhinavpv28 Jun 16, 2026
a2fb277
Update strategies.c
Abhinavpv28 Jun 16, 2026
6b82e55
Update strategies.c
Abhinavpv28 Jun 16, 2026
b2b27f1
Update strategies.c
Abhinavpv28 Jun 16, 2026
3619dc2
Update strategies.c
Abhinavpv28 Jun 16, 2026
03c2d39
Update strategies.c
Abhinavpv28 Jun 16, 2026
0277a23
Update strategies.c
Abhinavpv28 Jun 16, 2026
cc9bb27
Update uploadstblogs_types.h
Abhinavpv28 Jun 16, 2026
21c1acc
Update strategies.c
Abhinavpv28 Jun 17, 2026
319b5aa
Update uploadstblogs_types.h
Abhinavpv28 Jun 17, 2026
1c309e5
Update strategies.c
Abhinavpv28 Jun 17, 2026
34fdff3
Update strategies.c
Abhinavpv28 Jun 17, 2026
cda70a3
Update uploadstblogs_types.h
Abhinavpv28 Jun 17, 2026
f99e377
Update strategies.c
Abhinavpv28 Jun 17, 2026
a3bb685
Update strategies.c
Abhinavpv28 Jun 17, 2026
670355d
Update strategies.c
Abhinavpv28 Jun 17, 2026
ec3ca10
Update strategies.c
Abhinavpv28 Jun 17, 2026
c7c896c
Update uploadstblogs_types.h
Abhinavpv28 Jun 17, 2026
7cb88ea
Update uploadstblogs_types.h
Abhinavpv28 Jun 17, 2026
d9f0734
Update strategies.c
Abhinavpv28 Jun 17, 2026
ccd4cf8
Update uploadstblogs_types.h
Abhinavpv28 Jun 17, 2026
994f213
Update strategies.c
Abhinavpv28 Jun 18, 2026
4aee529
Update uploadstblogs_types.h
Abhinavpv28 Jun 18, 2026
b607a6c
Update strategies.c
Abhinavpv28 Jun 18, 2026
d6cf035
Update uploadstblogs_types.h
Abhinavpv28 Jun 18, 2026
fad40b3
Update strategies.c
Abhinavpv28 Jun 18, 2026
9141692
Update archive_manager.c
Abhinavpv28 Jun 18, 2026
c7b475b
Update uploadstblogs_types.h
Abhinavpv28 Jun 18, 2026
74b9808
Update uploadstblogs_types.h
Abhinavpv28 Jun 18, 2026
e3b7689
Update dcm.c
Abhinavpv28 Jun 19, 2026
a9275a6
Update backup_logs.c
Abhinavpv28 Jun 19, 2026
a5b80c2
Update dcm.h
Abhinavpv28 Jun 19, 2026
0a3e922
Update context_manager.c
Abhinavpv28 Jun 22, 2026
093d54c
Update strategies.c
Abhinavpv28 Jun 22, 2026
3751c55
Update uploadstblogs.c
Abhinavpv28 Jun 22, 2026
da5e86e
Update strategies.c
Abhinavpv28 Jun 22, 2026
fc5c650
Update uploadstblogs.c
Abhinavpv28 Jun 22, 2026
b4407d5
Update strategies.c
Abhinavpv28 Jun 22, 2026
5f35d10
Update uploadstblogs.c
Abhinavpv28 Jun 22, 2026
19ef59c
Update uploadstblogs.c
Abhinavpv28 Jun 22, 2026
259b488
Update print statement from 'Hello' to 'Goodbye'
Abhinavpv28 Jun 22, 2026
b9bda88
Update context_manager.c
Abhinavpv28 Jun 22, 2026
37d5d12
Update strategies.c
Abhinavpv28 Jun 23, 2026
bebee3f
Create logupload.service
Abhinavpv28 Jun 23, 2026
05f12af
Update strategies.c
Abhinavpv28 Jun 24, 2026
8b041b8
Update context_manager.c
Abhinavpv28 Jun 24, 2026
54d1873
Update dcm.c
Abhinavpv28 Jul 3, 2026
da952f5
Update dcm.h
Abhinavpv28 Jul 7, 2026
5f08129
Update fmt.Println message from 'Hello' to 'Goodbye'
Abhinavpv28 Jul 7, 2026
832e395
Update event_manager.c
Abhinavpv28 Jul 7, 2026
220f696
Update dcm.c
Abhinavpv28 Jul 7, 2026
bc52e77
Update dcm.h
Abhinavpv28 Jul 7, 2026
29ed975
Update event_manager.h
Abhinavpv28 Jul 7, 2026
5fcbbfa
Update uploadstblogs.c
Abhinavpv28 Jul 7, 2026
856fd78
Update uploadstblogs.c
Abhinavpv28 Jul 7, 2026
d0de4f9
Update strategies.c
Abhinavpv28 Jul 7, 2026
3861a8f
Update strategies.c
Abhinavpv28 Jul 7, 2026
14fb2bf
Update strategies.c
Abhinavpv28 Jul 7, 2026
2728a72
Update strategies.c
Abhinavpv28 Jul 7, 2026
977c69b
Update context_manager.c
Abhinavpv28 Jul 7, 2026
bdece25
Update uploadstblogs_types.h
Abhinavpv28 Jul 7, 2026
81c2de8
Update strategies.c
Abhinavpv28 Jul 13, 2026
406c9e9
Update uploadstblogs_types.h
Abhinavpv28 Jul 13, 2026
226ef40
Update strategies.c
Abhinavpv28 Jul 13, 2026
c00af7a
Update uploadstblogs_types.h
Abhinavpv28 Jul 13, 2026
572fd09
Update strategies.c
Abhinavpv28 Jul 13, 2026
db61bc1
Update strategies_gtest.cpp
Abhinavpv28 Jul 13, 2026
7dbb016
Update strategies_gtest.cpp
Abhinavpv28 Jul 13, 2026
331c3d9
Update strategies_gtest.cpp
Abhinavpv28 Jul 13, 2026
47dad57
Merge branch 'develop' into feature/RDKEMW-18459
Abhinavpv28 Jul 13, 2026
24c511b
Update backup_logs.c
Abhinavpv28 Jul 13, 2026
b248a90
Update strategies_gtest.cpp
Abhinavpv28 Jul 13, 2026
8ac4853
Update strategies_gtest.cpp
Abhinavpv28 Jul 13, 2026
6418974
Update archive_manager_gtest.cpp
Abhinavpv28 Jul 13, 2026
0e1b1d1
Update backup_logs.c
Abhinavpv28 Jul 13, 2026
251db2b
Update backup_logs.c
Abhinavpv28 Jul 13, 2026
0d68fe2
Update dcm_gtest.cpp
Abhinavpv28 Jul 13, 2026
23e2a4a
Update backup_logs.c
Abhinavpv28 Jul 13, 2026
07dd99d
Update backup_logs.c
Abhinavpv28 Jul 13, 2026
b098228
Potential fix for pull request finding
Abhinavpv28 Jul 13, 2026
ecbd48b
Update context_manager.c
Abhinavpv28 Jul 13, 2026
4065605
Potential fix for pull request finding
Abhinavpv28 Jul 13, 2026
d1e12e8
Update archive_manager_gtest.cpp
Abhinavpv28 Jul 13, 2026
c4eceb3
Delete logupload.service
Abhinavpv28 Jul 13, 2026
e93bf03
Update dcm_gtest.cpp
Abhinavpv28 Jul 13, 2026
9557243
Update strategies_gtest.cpp
Abhinavpv28 Jul 13, 2026
ff2903e
Update dcm.h
Abhinavpv28 Jul 13, 2026
770e6cf
Update strategies.c
Abhinavpv28 Jul 14, 2026
44a2cda
Update strategies.c
Abhinavpv28 Jul 14, 2026
93b72bb
Update strategies.c
Abhinavpv28 Jul 14, 2026
3acbb1d
Update uploadstblogs_types.h
Abhinavpv28 Jul 14, 2026
bb09c5b
Update strategies.c
Abhinavpv28 Jul 14, 2026
24f84f1
Update strategies.c
Abhinavpv28 Jul 14, 2026
53b7c9d
Update strategies.c
Abhinavpv28 Jul 14, 2026
a166c98
Potential fix for pull request finding
Abhinavpv28 Jul 14, 2026
276ab93
Update archive_manager.c
Abhinavpv28 Jul 14, 2026
1c2ee10
Update strategies.c
Abhinavpv28 Jul 14, 2026
4e99e86
Update archive_manager.c
Abhinavpv28 Jul 14, 2026
11feb5f
Update strategies.c
Abhinavpv28 Jul 14, 2026
9e6bbd2
Update strategies.c
Abhinavpv28 Jul 14, 2026
0cbce98
Update strategies.c
Abhinavpv28 Jul 14, 2026
910c468
Update strategies.c
Abhinavpv28 Jul 14, 2026
1e7c518
Update strategies.c
Abhinavpv28 Jul 14, 2026
5b6d74d
Update strategies.c
Abhinavpv28 Jul 14, 2026
4f2ee11
Update strategies.c
Abhinavpv28 Jul 14, 2026
b3d4084
Update strategies.c
Abhinavpv28 Jul 14, 2026
60f6e80
Update strategies.c
Abhinavpv28 Jul 14, 2026
6eb0195
Update strategies.c
Abhinavpv28 Jul 14, 2026
68f48d4
Create test_uploadstblogs_sync_gates.py
Abhinavpv28 Jul 15, 2026
20c754c
L2
Jul 15, 2026
6fa55fc
Update L2-tests.yml
Abhinavpv28 Jul 15, 2026
6513220
Delete test/functional-tests/tests/test_uploadstblogs_sync_gates.py
Abhinavpv28 Jul 15, 2026
bebf3db
Update L2-tests.yml
Abhinavpv28 Jul 15, 2026
2d3273d
Update test_log_upload_onreboot_true_case.py
Abhinavpv28 Jul 16, 2026
0bc7bcb
Update strategies.c
Abhinavpv28 Jul 16, 2026
73f152a
Update test_log_upload_onreboot_true_case.py
Abhinavpv28 Jul 16, 2026
7322697
Update test_log_upload_onreboot_false_case.py
Abhinavpv28 Jul 16, 2026
78c3507
Update test_log_upload_onreboot_MM_case.py
Abhinavpv28 Jul 16, 2026
c544620
Update test_log_upload_onreboot_false_case.py
Abhinavpv28 Jul 16, 2026
729d844
Remove test_upload_cron_present function
Abhinavpv28 Jul 16, 2026
bf7cb3e
Update test_log_upload_cron_NULL_case.py
Abhinavpv28 Jul 16, 2026
1e559ca
Update test_log_upload_cron_NULL_case.py
Abhinavpv28 Jul 16, 2026
a48adc6
Update test_log_upload_cron_NULL_case.py
Abhinavpv28 Jul 16, 2026
cc8eca2
Update strategies.c
Abhinavpv28 Jul 16, 2026
7d3cfb2
Update uploadstblogs_types.h
Abhinavpv28 Jul 16, 2026
16179b8
Update strategies_gtest.cpp
Abhinavpv28 Jul 16, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions backup_logs/include/backup_logs.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,13 @@
extern "C" {
#endif

/** Sentinel written by backup_logs after successful completion.
* Cross-repo interface: also referenced by reboot-manager's update-prev-reboot-info
* and telemetry's telemetry2_0.
* Any path change MUST be coordinated with the reboot-manager and telemetry repositories. */

#define BACKUP_LOGS_DONE_FLAG "/tmp/.backup_logs_done"

/**
* @brief Main entry point for backup_logs system
*
Expand Down
18 changes: 18 additions & 0 deletions backup_logs/src/backup_logs.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@
#include "special_files.h"
#include "system_utils.h"
#include <secure_wrapper.h>
#include <fcntl.h>
#include <errno.h>

#define BACKUP_LOGS_VERSION "1.0.0"
#define BACKUP_LOGS_BUILD_DATE __DATE__
Expand Down Expand Up @@ -302,6 +304,22 @@ int backup_logs_main(int argc, char *argv[]) {
}

RDK_LOG(RDK_LOG_INFO, LOG_BACKUP_LOGS, "Backup process completed successfully\n");
/* Write completion sentinel for downstream consumers (reboot-manager, telemetry).
* /tmp/ is volatile — no stale-sentinel risk across reboots.
* Non-fatal: if open() fails, downstream services will time out and annotate gracefully. */
{
int sentinel_fd = open(BACKUP_LOGS_DONE_FLAG, O_CREAT | O_WRONLY, 0644);
if (sentinel_fd < 0)
{
RDK_LOG(RDK_LOG_WARN, LOG_BACKUP_LOGS, "Failed to create sentinel %s: %s\n", BACKUP_LOGS_DONE_FLAG, strerror(errno));
}
else
{
close(sentinel_fd);
RDK_LOG(RDK_LOG_INFO, LOG_BACKUP_LOGS, "Sentinel written: %s\n", BACKUP_LOGS_DONE_FLAG);
}
}

return EXIT_SUCCESS;
}
#ifndef GTEST_ENABLE
Expand Down
53 changes: 3 additions & 50 deletions dcm.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
#include "dcm_rbus.h"
#include "dcm_cronparse.h"
#include "dcm_schedjob.h"
#include "uploadstblogs.h"

static DCMDHandle *g_pdcmHandle = NULL;

Expand Down Expand Up @@ -69,42 +68,7 @@ static VOID dcmRunJobs(const INT8* profileName, VOID *pHandle)
pRDKPath = DCM_LIB_PATH;
}

if(strcmp(profileName, DCM_LOGUPLOAD_SCHED) == 0) {
INT8 *pPrctl = dcmSettingsGetUploadProtocol(pdcmHandle->pDcmSetHandle);
INT8 *pURL = dcmSettingsGetUploadURL(pdcmHandle->pDcmSetHandle);

if(pPrctl == NULL) {
DCMWarn("Log Upload protocol is NULL, using HTTP\n");
pPrctl = "HTTP";
}
if(pURL == NULL) {
DCMWarn("Log Upload URL is NULL, using %s\n", DCM_DEF_LOG_URL);
pURL = DCM_DEF_LOG_URL;
}

DCMInfo("\nStart log upload via library API\n");

// Call uploadstblogs library API instead of shell script
UploadSTBLogsParams params = {
.flag = 0,
.dcm_flag = 1,
.upload_on_reboot = false,
.upload_protocol = pPrctl,
.upload_http_link = pURL,
.trigger_type = TRIGGER_SCHEDULED,
.rrd_flag = false,
.rrd_file = NULL
};
#ifndef GTEST_ENABLE
int result = uploadstblogs_run(&params);
if (result != 0) {
DCMError("Log upload failed with error code: %d\n", result);
} else {
DCMInfo("Log upload completed successfully\n");
}
#endif
}
else if(strcmp(profileName, DCM_DIFD_SCHED) == 0) {
if(strcmp(profileName, DCM_DIFD_SCHED) == 0) {
DCMInfo("Start FW update Script\n");
snprintf(pExecBuff, EXECMD_BUFF_SIZE, "/bin/sh %s/swupdate_utility.sh 0 2 >> /opt/logs/swupdate.log 2>&1",
pRDKPath);
Expand Down Expand Up @@ -202,15 +166,6 @@ INT32 dcmDaemonMainInit(DCMDHandle *pdcmHandle)
return ret;
}

/* Add log upload job to Schecduler */
pdcmHandle->pLogSchedHandle = dcmSchedAddJob(DCM_LOGUPLOAD_SCHED,
(DCMSchedCB)dcmRunJobs,
(VOID *) pdcmHandle);
if(pdcmHandle->pLogSchedHandle == NULL) {
DCMError("Failed to Add Log Scheduler jobs\n");
return DCM_FAILURE;
}

/* Add FW update job to Schecduler */
pdcmHandle->pDifdSchedHandle = dcmSchedAddJob(DCM_DIFD_SCHED,
(DCMSchedCB)dcmRunJobs,
Expand Down Expand Up @@ -241,9 +196,7 @@ VOID dcmDaemonMainUnInit(DCMDHandle *pdcmHandle)

dcmSettingsUnInit(pdcmHandle->pDcmSetHandle);
dcmRbusUnInit(pdcmHandle->pRbusHandle);
dcmSchedStopJob(pdcmHandle->pLogSchedHandle);
dcmSchedStopJob(pdcmHandle->pDifdSchedHandle);
dcmSchedRemoveJob(pdcmHandle->pLogSchedHandle);
dcmSchedRemoveJob(pdcmHandle->pDifdSchedHandle);
dcmSchedUnInit();

Expand Down Expand Up @@ -368,11 +321,11 @@ int main(int argc, char* argv[])
continue;
}

INT8 unusedLogCron[16] = {0};
ret = dcmSettingParseConf(g_pdcmHandle->pDcmSetHandle, pconfPath,
g_pdcmHandle->logCron,
unusedLogCron,
g_pdcmHandle->difdCron);
if(ret == DCM_SUCCESS) {
dcmSchedStartJob(g_pdcmHandle->pLogSchedHandle, g_pdcmHandle->logCron);
dcmSchedStartJob(g_pdcmHandle->pDifdSchedHandle, g_pdcmHandle->difdCron);

ret = dcmIARMEvntSend(DCM_IARM_COMPLETE);
Expand Down
3 changes: 0 additions & 3 deletions dcm.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ extern "C"
{
#endif

#define DCM_LOGUPLOAD_SCHED "DCM_LOG_UPLOAD"
#define DCM_DIFD_SCHED "DCM_FW_UPDATE"

typedef struct _dcmdHandle
Expand All @@ -35,10 +34,8 @@ typedef struct _dcmdHandle
BOOL isDCMRunning;
VOID *pRbusHandle;
VOID *pDcmSetHandle;
VOID *pLogSchedHandle;
VOID *pDifdSchedHandle;
INT8 *pExecBuff;
INT8 logCron[16];
INT8 difdCron[16];

} DCMDHandle;
Expand Down
67 changes: 0 additions & 67 deletions dcm_parseconf.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
#include "dcm_utils.h"
#include "dcm_rbus.h"
#include "dcm_parseconf.h"
#include "uploadstblogs.h"

static INT32 g_bMMEnable = 0;

Expand Down Expand Up @@ -578,72 +577,6 @@ INT32 dcmSettingParseConf(VOID *pHandle, INT8 *pConffile,

DCMInfo("DCM_DIFD_CRON: %s\n", pDifdCron);

if(uploadCheck == 1 && pdcmSetHandle->bRebootFlag == 0) {
DCMInfo("Triggering log upload with reboot flag via library API\n");
UploadSTBLogsParams params = {
.flag = 1,
.dcm_flag = 1,
.upload_on_reboot = true,
.upload_protocol = pUploadprtl,
.upload_http_link = pUploadURL,
.trigger_type = TRIGGER_REBOOT,
.rrd_flag = false,
.rrd_file = NULL
};
#ifndef GTEST_ENABLE
int result = uploadstblogs_run(&params);
if (result != 0) {
DCMError("Log upload (reboot=true) failed: %d\n", result);
}
#endif
}
else if (uploadCheck == 0 && pdcmSetHandle->bRebootFlag == 0) {
DCMInfo("Triggering log upload without reboot flag via library API\n");
UploadSTBLogsParams params = {
.flag = 1,
.dcm_flag = 1,
.upload_on_reboot = false,
.upload_protocol = pUploadprtl,
.upload_http_link = pUploadURL,
.trigger_type = TRIGGER_SCHEDULED,
.rrd_flag = false,
.rrd_file = NULL
};
#ifndef GTEST_ENABLE
int result = uploadstblogs_run(&params);
if (result != 0) {
DCMError("Log upload (reboot=false) failed: %d\n", result);
}
#endif
}
else {
DCMWarn ("Nothing to do here for uploadCheck value = %d\n", uploadCheck);
}

if(strlen(pLogCron) == 0) {
DCMWarn ("Uploading logs as DCM response is either null or not present\n");

UploadSTBLogsParams params = {
.flag = 1,
.dcm_flag = 1,
.upload_on_reboot = false,
.upload_protocol = pUploadprtl,
.upload_http_link = pUploadURL,
.trigger_type = TRIGGER_SCHEDULED,
.rrd_flag = false,
.rrd_file = NULL
};
#ifndef GTEST_ENABLE
int result = uploadstblogs_run(&params);
if (result != 0) {
DCMError("Log upload (empty cron) failed: %d\n", result);
}
#endif
}
else {
DCMInfo ("%s is present setting cron jobs\n", DCM_LOGUPLOAD_CRON);
}

if(strlen(pDifdCron) == 0) {
DCMWarn ("difdCron is empty\n");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,16 +25,11 @@
import json

@pytest.mark.run(order=1)
def test_upload_cron_present():
def test_fw_cron_scheduled():
kill_dcmd(9)
kill_telemetry(9)
rbus_set_data("Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.Telemetry.ConfigURL", "string", "https://mockxconf:50050/loguploader5/getT2DCMSettings")
run_dcmd()
rbus_set_data("Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.Telemetry.ConfigURL", "string", "https://mockxconf:50050/loguploader5/getT2DCMSettings")
run_telemetry()
sleep(20)
assert "Uploading logs as DCM response is either null or not present" in grep_dcmdlogs("Uploading logs as DCM response is either null or not present")

@pytest.mark.run(order=2)
def test_fw_cron_scheduled():
assert "difdCron is empty" in grep_dcmdlogs("difdCron is empty")

Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,6 @@ def test_upload_cron_present():
sleep(420)

@pytest.mark.run(order=2)
def test_upload_cron_scheduled():
assert "Scheduling DCM_LOG_UPLOAD Job handle" in grep_dcmdlogs("Scheduling DCM_LOG_UPLOAD Job handle")

@pytest.mark.run(order=3)
def test_fw_cron_scheduled():
assert "Scheduling DCM_FW_UPDATE Job handle" in grep_dcmdlogs("Scheduling DCM_FW_UPDATE Job handle")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,35 +25,10 @@
import json

@pytest.mark.run(order=1)
def test_upload_cron_present():
kill_dcmd(9)
kill_telemetry(9)
rbus_set_data("Device.DeviceInfo.X_RDKCENTRAL-COM_RFC.Feature.Telemetry.ConfigURL", "string", "https://mockxconf:50050/loguploader4/getT2DCMSettings")
run_dcmd()
run_telemetry()
sleep(20)
assert "urn:settings:LogUploadSettings:UploadSchedule:cron" in grep_dcmdlogs("is present setting cron jobs")

@pytest.mark.run(order=2)
def test_upload_script_started_onboot_false():
assert "Triggering log upload without reboot flag via library API" in grep_dcmdlogs("Triggering log upload without reboot flag via library API")
sleep(420)

@pytest.mark.run(order=3)
def test_fw_cron_scheduled():
assert "Scheduling DCM_FW_UPDATE Job handle" in grep_dcmdlogs("Scheduling DCM_FW_UPDATE Job handle")


@pytest.mark.run(order=4)
def test_upload_cron_scheduled():
assert "Scheduling DCM_LOG_UPLOAD Job handle" in grep_dcmdlogs("Scheduling DCM_LOG_UPLOAD Job handle")
sleep(60)

@pytest.mark.run(order=5)
def test_upload_script_started():
assert "Start log upload via library API" in grep_dcmdlogs("Start log upload via library API")

@pytest.mark.run(order=6)
@pytest.mark.run(order=2)
def test_fwupdate_script_started():
assert "Start FW update Script" in grep_dcmdlogs("Start FW update Script")
#assert "Starting SoftwareUpdate Utility Script..." in grep_dcmdlogs("Starting SoftwareUpdate Utility Script...")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,25 +25,12 @@
import json

@pytest.mark.run(order=1)
def test_upload_cron_present():
assert "urn:settings:LogUploadSettings:UploadSchedule:cron" in grep_dcmdlogs("is present setting cron jobs")

@pytest.mark.run(order=3)
def test_fw_cron_scheduled():
sleep(540)
assert "Scheduling DCM_FW_UPDATE Job handle" in grep_dcmdlogs("Scheduling DCM_FW_UPDATE Job handle")

@pytest.mark.run(order=4)
@pytest.mark.run(order=2)
def test_fwupdate_script_started():
assert "Start FW update Script" in grep_dcmdlogs("Start FW update Script")
# assert "Starting SoftwareUpdate Utility Script..." in grep_dcmdlogs("Starting SoftwareUpdate Utility Script...")
#assert "trigger type=" in grep_dcmdlogs("trigger type=")

@pytest.mark.run(order=4)
def test_upload_cron_scheduled():
assert "Scheduling DCM_LOG_UPLOAD Job handle" in grep_dcmdlogs("Scheduling DCM_LOG_UPLOAD Job handle")

@pytest.mark.run(order=6)
def test_upload_started():
assert "Start log upload via library API" in grep_dcmdlogs("Start log upload via library API")

6 changes: 6 additions & 0 deletions test/run_uploadstblogs_l2.sh
Original file line number Diff line number Diff line change
Expand Up @@ -126,9 +126,15 @@ echo "8. Running Upload Strategy Tests..."
pytest -v --json-report --json-report-summary \
--json-report-file $RESULT_DIR/upload_strategies.json test/functional-tests/tests/test_uploadstblogs_upload_strategies.py

echo ""
echo "9. Running Sync Gates Tests..."
pytest -v --json-report --json-report-summary \
--json-report-file $RESULT_DIR/sync_gates.json test/functional-tests/tests/test_uploadstblogs_sync_gates.py

echo ""
echo "====================================="
echo "Test Execution Complete"
echo "====================================="
echo "Results saved to: $RESULT_DIR"
echo ""

Loading
Loading