diff --git a/.gitignore b/.gitignore
old mode 100644
new mode 100755
diff --git a/.gitreview b/.gitreview
old mode 100644
new mode 100755
diff --git a/daily_jenkins_job_report/README.md b/daily_jenkins_job_report/README.md
old mode 100644
new mode 100755
diff --git a/daily_jenkins_job_report/__init__.py b/daily_jenkins_job_report/__init__.py
old mode 100644
new mode 100755
diff --git a/daily_jenkins_job_report/daily_report/config.py b/daily_jenkins_job_report/daily_report/config.py
old mode 100644
new mode 100755
diff --git a/daily_jenkins_job_report/daily_report/generate_report.py b/daily_jenkins_job_report/daily_report/generate_report.py
old mode 100644
new mode 100755
diff --git a/daily_jenkins_job_report/daily_report/templates/report_template.html b/daily_jenkins_job_report/daily_report/templates/report_template.html
old mode 100644
new mode 100755
diff --git a/daily_jenkins_job_report/daily_report/update_google_sheets.py b/daily_jenkins_job_report/daily_report/update_google_sheets.py
old mode 100644
new mode 100755
index 8c31fa4..a19a347
--- a/daily_jenkins_job_report/daily_report/update_google_sheets.py
+++ b/daily_jenkins_job_report/daily_report/update_google_sheets.py
@@ -37,7 +37,7 @@
             for all_jobs in jobs_for_update['multi_results']:
                 for upd in jobs_for_update['multi_results'][all_jobs]:
                     if "oscore-oscc-ci" in upd['full_job_name'] and gs['gs_job_name'] == upd['full_job_name'] and upd['build_status'] != 'None':
-                        cell = column_to_update + str(gs['row_number'])
+                        cell = f"{column_to_update}{gs['row_number']}"
 
                         if upd['build_status'] == 'FAILURE':
                             upd['build_status'] = 'FAILED'
@@ -51,7 +51,7 @@
                                 self.wks.update_acell(network_team_cell, 'Area of networking team')
 
                     if gs['gs_job_name'] == upd['full_job_name'] and upd['build_status'] != 'None' and check_datetime_today(upd['timestamp']):
-                        cell = column_to_update + str(gs['row_number'])
+                        cell = f"{column_to_update}{gs['row_number']}"
 
                         if upd['build_status'] == 'FAILURE':
                             upd['build_status'] = 'FAILED'
@@ -64,8 +64,8 @@
                                 network_team_cell = get_network_team_cell(column_to_update, gs['row_number'])
                                 self.wks.update_acell(network_team_cell, 'Area of networking team')
 
-                    elif ("oscore-oscc-ci" not in upd['full_job_name']) and gs['gs_job_name'] == upd['full_job_name'] and upd['build_status'] != 'None' and not check_datetime_today(upd['timestamp']):
-                        cell = column_to_update + str(gs['row_number'])
+                    elif ("oscore-oscc-ci" not in upd['full_job_name']) and gs['gs_job_name'] == upd['full_job_name'] and upd['build_status'] != 'None' and not check_datetime_today(upd['timestamp']) and gs['row_number'] and column_to_update:
+                        cell = f"{column_to_update}{gs['row_number']}"
 
                         logger.info(f"NOT TOADAY: {datetime.fromtimestamp(upd['timestamp'])}, {upd['full_job_name']}, {upd['build_status']}")
 
@@ -97,7 +97,7 @@
         logger.info('Getting date from gs')
 
         for i in config.LIST_OF_COLUMNS:
-            cell = i + '3'
+            cell = i + '2'
             now = datetime.now()
             if self.wks.acell(cell).value == now.strftime("%Y-%m-%d"):
                 logger.info(f"{cell}, {i}, {self.wks.acell(cell).value}")
diff --git a/daily_jenkins_job_report/index.rst b/daily_jenkins_job_report/index.rst
old mode 100644
new mode 100755
diff --git a/daily_jenkins_job_report/requirements.txt b/daily_jenkins_job_report/requirements.txt
old mode 100644
new mode 100755
diff --git a/daily_jenkins_job_report/setup.py b/daily_jenkins_job_report/setup.py
old mode 100644
new mode 100755
diff --git a/daily_jenkins_job_report/tests/test_basic.py b/daily_jenkins_job_report/tests/test_basic.py
old mode 100644
new mode 100755
diff --git a/save_jenkins_console/README.md b/save_jenkins_console/README.md
old mode 100644
new mode 100755
diff --git a/save_jenkins_console/base.py b/save_jenkins_console/base.py
old mode 100644
new mode 100755
diff --git a/save_jenkins_console/requirements.txt b/save_jenkins_console/requirements.txt
old mode 100644
new mode 100755
diff --git a/save_jenkins_console/save_jenkins_console/config.py b/save_jenkins_console/save_jenkins_console/config.py
old mode 100644
new mode 100755
diff --git a/save_jenkins_console/save_jenkins_console/jenkins_api.py b/save_jenkins_console/save_jenkins_console/jenkins_api.py
old mode 100644
new mode 100755
diff --git a/save_jenkins_console/save_jenkins_console/manage_files.py b/save_jenkins_console/save_jenkins_console/manage_files.py
old mode 100644
new mode 100755
diff --git a/save_jenkins_console/save_jenkins_console/utils.py b/save_jenkins_console/save_jenkins_console/utils.py
old mode 100644
new mode 100755
diff --git a/upload2testrail_docker/.dockerignore b/upload2testrail_docker/.dockerignore
old mode 100644
new mode 100755
diff --git a/upload2testrail_docker/Dockerfile b/upload2testrail_docker/Dockerfile
old mode 100644
new mode 100755
diff --git a/upload2testrail_docker/README.md b/upload2testrail_docker/README.md
old mode 100644
new mode 100755
