diff --git a/src/covid19/blueprints/admin/admin_views.py b/src/covid19/blueprints/admin/admin_views.py index fccacaf4c4c87e2280c95a251c8c2d90d9acf1c9..9286764b91d139ed04aab78f7492aa8dd858f95f 100644 --- a/src/covid19/blueprints/admin/admin_views.py +++ b/src/covid19/blueprints/admin/admin_views.py @@ -210,44 +210,44 @@ def task_admin_update_star_schema_incremental(self): @app_admin.route('/task/alive_message') -def url_alive_message_start(): - app.logger.info("url_alive_message_start [start]") +def url_task_admin_message_start(): + app.logger.info("url_task_admin_message_start [start]") task_admin_alive_message.apply_async() flash("alive_message_task started") - app.logger.info("url_alive_message_start [done]") + app.logger.info("url_task_admin_message_start [done]") return redirect(url_for('app_admin.url_admin_tasks')) @app_admin.route('/task/database/dump') -def url_admin_database_dump(): - app.logger.info("url_admin_database_dump [start]") +def url_task_admin_database_dump(): + app.logger.info("url_task_admin_database_dump [start]") admin_service.run_admin_database_dump() flash("admin_service.run_admin_database_dump started") - app.logger.info("url_admin_database_dump [done]") + app.logger.info("url_task_admin_database_dump [done]") return redirect(url_for('app_admin.url_admin_tasks')) @app_admin.route('/task/database/reimport') -def url_admin_database_dump_reimport(): - app.logger.info("url_admin_database_dump_reimport [start]") +def url_task_admin_database_dump_reimport(): + app.logger.info("url_task_admin_database_dump_reimport [start]") admin_service.run_admin_database_dump_reimport() flash("admin_service.run_admin_database_import started") - app.logger.info("url_admin_database_dump_reimport [done]") + app.logger.info("url_task_admin_database_dump_reimport [done]") return redirect(url_for('app_admin.url_admin_tasks')) -@app_admin.route('/task/database/dropcreate/only') -def url_admin_database_dropcreate_only(): - app.logger.info("url_admin_database_drop [start]") - flash("admin_service.run_admin_database_drop started") +@app_admin.route('/task/database/drop_create') +def url_task_admin_database_dropcreate(): + app.logger.info("url_task_admin_database_dropcreate [start]") admin_service.run_admin_database_drop_and_create() - app.logger.info("url_admin_database_drop [done]") + flash("admin_service.run_admin_database_drop started") + app.logger.info("url_task_admin_database_dropcreate [done]") return redirect(url_for('app_admin.url_admin_tasks')) @app_admin.route('/task/database/drop') -def url_admin_database_drop(): - flash("url_admin_database_drop [start]") +def url_task_admin_database_drop(): + flash("url_task_admin_database_drop [start]") app.logger.info("admin_service.run_admin_database_drop_and_create [start]") admin_service.run_admin_database_drop_and_create() app.logger.info("admin_service.run_admin_database_drop_and_create [done]") @@ -259,54 +259,65 @@ def url_admin_database_drop(): rki_service_bundeslaender.pretask_database_drop_create() flash("task_admin_database_drop_create async started") task_admin_database_drop_create.apply_async() - app.logger.info("url_admin_database_drop [done]") + app.logger.info("url_task_admin_database_drop [done]") return redirect(url_for('app_admin.url_admin_tasks')) -@app_admin.route('/task/files/download') -def url_admin_download_all_files(): +@app_admin.route('/task/files/all/download') +def url_task_admin_download_all_files(): + app.logger.info("url_task_admin_download_all_files [start]") who_service.download_all_files() ecdc_service.download_all_files() - owid_service.pretask_database_drop_create() + owid_service.download_all_files() rki_vaccination_service.download_all_files() rki_service_bundeslaender.download_all_files() rki_service_landkreise.download_all_files() - app.logger.info("url_admin_download_all_files [done]") + app.logger.info("url_task_admin_download_all_files [done]") return redirect(url_for('app_admin.url_admin_tasks')) -@app_admin.route('/task/files/import') -def url_admin_import_all_files(): - app.logger.info("url_admin_import_all_files [start]") +@app_admin.route('/task/files/all/import') +def url_task_admin_import_all_files(): + app.logger.info("url_task_admin_import_all_files [start]") task_admin_import_all_files.apply_async() flash("task_admin_import_all_files async started") app.logger.info("task_admin_import_all_files async started") - app.logger.info("url_admin_import_all_files [done]") + app.logger.info("url_task_admin_import_all_files [done]") + return redirect(url_for('app_admin.url_admin_tasks')) + + +@app_admin.route('/task/update/all/dimension_tables') +def url_task_admin_update_dimension_tables(): + app.logger.info("url_task_admin_update_dimension_tables [start]") + task_admin_update_dimension_tables_only.apply_async() + flash("task_admin_import_all_files async started") + app.logger.info("task_admin_update_all_blueprints async started") + app.logger.info("url_task_admin_update_dimension_tables [done]") return redirect(url_for('app_admin.url_admin_tasks')) -@app_admin.route('/task/update/dimension_tables/all') -def url_admin_update_dimension_tables_only(): - app.logger.info("url_admin_update_all_groups [start]") +@app_admin.route('/task/update/full/all/dimension_tables') +def url_task_admin_update_full_dimension_tables(): + app.logger.info("url_task_admin_update_full_dimension_tables [start]") task_admin_update_dimension_tables_only.apply_async() flash("task_admin_import_all_files async started") app.logger.info("task_admin_update_all_blueprints async started") - app.logger.info("url_admin_update_all_groups [done]") + app.logger.info("url_task_admin_update_full_dimension_tables [done]") return redirect(url_for('app_admin.url_admin_tasks')) -@app_admin.route('/task/update/fact_tables/initial/all') -def url_admin_update_fact_table_initial_only(): - app.logger.info("url_admin_update_fact_table_initial_only [start]") +@app_admin.route('/task/update/full/all/fact_tables') +def url_task_admin_update_full_fact_tables(): + app.logger.info("url_task_admin_update_full_fact_tables [start]") task_admin_update_fact_table_initial_only.apply_async() flash("task_admin_update_fact_table_initial_only async started") app.logger.info("task_admin_update_fact_table_initial_only async started") - app.logger.info("url_admin_update_fact_table_initial_only [done]") + app.logger.info("url_task_admin_update_full_fact_tables [done]") return redirect(url_for('app_admin.url_admin_tasks')) -@app_admin.route('/task/update/fact_tables/incremental/all') -def url_admin_update_fact_table_incremental_only(): +@app_admin.route('/task/update/all/fact_tables') +def url_task_admin_update_fact_tables(): app.logger.info("url_admin_update_fact_table_incremental_only [start]") task_admin_update_fact_table_incremental_only.apply_async() flash("task_admin_update_fact_table_incremental_only async started") @@ -316,27 +327,27 @@ def url_admin_update_fact_table_incremental_only(): @app_admin.route('/task/update/full/star_schema') -def url_admin_update_star_schema_initial(): - app.logger.info("url_admin_update_star_schema_initial [start]") +def url_task_admin_full_update_star_schema(): + app.logger.info("url_task_admin_full_update_star_schema [start]") task_admin_update_star_schema_initial.apply_async() flash("task_admin_update_fact_table_incremental_only async started") app.logger.info("task_admin_update_fact_table_incremental_only async started") - app.logger.info("url_admin_update_star_schema_initial [done]") + app.logger.info("url_task_admin_full_update_star_schema [done]") return redirect(url_for('app_admin.url_admin_tasks')) @app_admin.route('/task/update/star_schema') -def run_update_star_schema_incremental(): - app.logger.info("run_update_star_schema_incremental [start]") +def url_task_admin_update_star_schema(): + app.logger.info("url_task_admin_update_star_schema [start]") task_admin_update_star_schema_incremental.apply_async() flash("task_admin_update_fact_table_incremental_only async started") app.logger.info("task_admin_update_fact_table_incremental_only async started") - app.logger.info("run_update_star_schema_incremental [done]") + app.logger.info("url_task_admin_update_star_schema [done]") return redirect(url_for('app_admin.url_admin_tasks')) @app_admin.route('/task/update/do/all/initial') -def url_admin_update_do_all_initial(): +def url_task_admin_full_update_do_all(): app.logger.info("url_admin_update_do_all_initial [start]") who_service.download_files() flash("who_service.download_files() [done]") diff --git a/src/covid19/blueprints/admin/templates/admin/admin_tasks.html b/src/covid19/blueprints/admin/templates/admin/admin_tasks.html index 9ffc8a57a5ee451960f0f5b585ecc6b65cdc59c6..513b2af7170a2980ee1a6093361999262ef8e1fb 100644 --- a/src/covid19/blueprints/admin/templates/admin/admin_tasks.html +++ b/src/covid19/blueprints/admin/templates/admin/admin_tasks.html @@ -5,6 +5,72 @@ {% include 'admin/navigation/admin_navtabs.html' %} <div class="container"> + <div class="row"> + <div class="col"> + <div class="btn-group-vertical" role="group" aria-label="Views"> + <a class="btn btn-danger btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_full_update_do_all') }}" + role="button">Admin :: do all :: initial</a> + </div> + </div> + <div class="col"> + <div class="btn-group-vertical" role="group" aria-label="Views"> + <a class="btn btn-success btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_download_all_files') }}" + role="button">Admin :: all_files :: download</a> + </div> + </div> + </div> + <div class="row"> + <div class="col"> + <div class="btn-group-vertical" role="group" aria-label="Views"> + <a class="btn btn-secondary btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_full_update_star_schema') }}" + role="button">Admin :: all_files :: update star_schema :: initial</a> + </div> + </div> + <div class="col"> + <div class="btn-group-vertical" role="group" aria-label="Views"> + <a class="btn btn-danger btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_update_star_schema') }}" + role="button">Admin :: all_files :: update star_schema :: incremental</a> + </div> + </div> + </div> + <div class="row"> + <div class="col"> + <div class="btn-group-vertical" role="group" aria-label="Views"> + <a class="btn btn-success btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_download_all_files') }}" + role="button">Admin :: all files :: download</a> + <a class="btn btn-info btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_import_all_files') }}" + role="button">Admin :: all files :: import</a> + <a class="btn btn-warning btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_update_full_dimension_tables') }}" + role="button">Admin :: full update :: dimension_tables</a> + <a class="btn btn-danger btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_update_full_fact_tables') }}" + role="button">Admin :: full update :: fact_table</a> + </div> + </div> + <div class="col"> + <div class="btn-group-vertical" role="group" aria-label="Views"> + <a class="btn btn-success btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_download_all_files') }}" + role="button">Admin :: all files :: download</a> + <a class="btn btn-info btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_import_all_files') }}" + role="button">Admin :: all files :: import</a> + <a class="btn btn-warning btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_update_dimension_tables') }}" + role="button">Admin :: update :: dimension_tables</a> + <a class="btn btn-danger btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_task_admin_update_fact_tables') }}" + role="button">Admin :: update :: fact_table</a> + </div> + </div> + </div> <div class="row"> <div class="col"> <div class="btn-group-vertical" role="group" aria-label="Views"> @@ -41,47 +107,22 @@ </div> </div> <div class="col"> - <div class="btn-group-vertical" role="group" aria-label="Views"> - <a class="btn btn-success btn-lg btn-block text-left" - href="{{ url_for( 'app_admin.url_admin_download_all_files') }}" - role="button">Admin :: all_files :: download</a> - <a class="btn btn-info btn-lg btn-block text-left" - href="{{ url_for( 'app_admin.url_admin_import_all_files') }}" - role="button">Admin :: all_files :: import</a> - <a class="btn btn-warning btn-lg btn-block text-left" - href="{{ url_for( 'app_admin.url_admin_update_dimension_tables_only') }}" - role="button">Admin :: all_files :: update dimension_tables</a> - <a class="btn btn-danger btn-lg btn-block text-left" - href="{{ url_for( 'app_admin.url_admin_update_fact_table_incremental_only') }}" - role="button">Admin :: all_files :: update fact_table :: incremental</a> - <a class="btn btn-secondary btn-lg btn-block text-left" - href="{{ url_for( 'app_admin.url_admin_update_fact_table_initial_only') }}" - role="button">Admin :: all_files :: update fact_table :: initial</a> - </div> <p></p> <div class="btn-group-vertical" role="group" aria-label="Views"> + <a class="btn btn-primary btn-lg btn-block text-left" + href="{{ url_for( 'app_admin.url_admin_database_dump') }}" + role="button">Admin :: database :: dump</a> <a class="btn btn-success btn-lg btn-block text-left" - href="{{ url_for( 'app_admin.url_admin_download_all_files') }}" + href="{{ url_for( 'app_admin.url_task_admin_download_all_files') }}" role="button">Admin :: all_files :: download</a> <a class="btn btn-danger btn-lg btn-block text-left" - href="{{ url_for( 'app_admin.run_update_star_schema_incremental') }}" + href="{{ url_for( 'app_admin.url_task_admin_update_star_schema') }}" role="button">Admin :: all_files :: update star_schema :: incremental</a> <a class="btn btn-secondary btn-lg btn-block text-left" - href="{{ url_for( 'app_admin.url_admin_update_star_schema_initial') }}" + href="{{ url_for( 'app_admin.url_task_admin_full_update_star_schema') }}" role="button">Admin :: all_files :: update star_schema :: initial</a> </div> <p></p> - <div class="btn-group-vertical" role="group" aria-label="Views"> - <a class="btn btn-danger btn-lg btn-block text-left" - href="{{ url_for( 'app_admin.url_admin_update_do_all_initial') }}" - role="button">Admin :: do all :: initial</a> - </div> - <p></p> - <div class="btn-group-vertical" role="group" aria-label="Views"> - <a class="btn btn-primary btn-lg btn-block text-left" - href="{{ url_for( 'app_admin.url_admin_database_dump') }}" - role="button">Admin :: database :: dump</a> - </div> </div> </div> </div> diff --git a/src/covid19/blueprints/owid/owid_service.py b/src/covid19/blueprints/owid/owid_service.py index 524c5ef007dae9417ad84f1a501585973266e008..90fb3eb46ab39a340c735097d63e0870d3a32c39 100644 --- a/src/covid19/blueprints/owid/owid_service.py +++ b/src/covid19/blueprints/owid/owid_service.py @@ -21,6 +21,12 @@ class OwidService: app.logger.debug("------------------------------------------------------------") app.logger.info(" OWID Service [ready]") + def download_all_files(self): + app.logger.info("OwidService.pretask_database_drop_create started") + self.service_download.download_file() + app.logger.info("OwidService.pretask_database_drop_create done") + return self + def pretask_database_drop_create(self): flash("OwidService.pretask_database_drop_create started") app.logger.info("OwidService.pretask_database_drop_create started") @@ -38,14 +44,6 @@ class OwidService: app.logger.info("OwidService.task_database_drop_create done") return self - #def run_download_only(self): - #def run_import_only(self): - #def run_update_dimension_tables_only(self): - #def run_update_fact_table_incremental_only(self): - #def run_update_fact_table_initial_only(self): - #def run_update_star_schema_incremental(self): - #def run_update_star_schema_initial(self): - def run_download_only(self): self.service_download.download_file() return self diff --git a/src/covid19/blueprints/who/who_service.py b/src/covid19/blueprints/who/who_service.py index a25fecadbb4c8a4dc0747970ad9c8896384060a4..849f2812fd1fc8fea30e536c75164ece65b71d77 100644 --- a/src/covid19/blueprints/who/who_service.py +++ b/src/covid19/blueprints/who/who_service.py @@ -37,6 +37,10 @@ class WhoService: app.logger.info("WhoService.database_drop_create_posttask done") return self + def download_all_files(self): + self.service_download.download_file() + return self + def download_files(self): self.service_download.download_file() return self