diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 921b45a4..00000000 Binary files a/.DS_Store and /dev/null differ diff --git a/README.md b/README.md index 28e407fc..c9da1efd 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,10 @@ automatically [pip](https://pip.pypa.io/en/stable/) as well. * `prod`: For anything deployed - Remember to do it with Python 3. +Remember to do it with Python 3. + +Bear in mind that the requirements for `time_tracker_events`, must be located on its local requirements.txt, by + [convention](https://docs.microsoft.com/en-us/azure/azure-functions/functions-reference-python#folder-structure). - Run `pre-commit install`. For more details, check out Development > Git hooks. @@ -134,6 +137,16 @@ following notes regarding to the manipulation of the data from and towards the A - The [recommended](https://docs.microsoft.com/en-us/azure/cosmos-db/working-with-dates#storing-datetimes) format for DateTime strings in Azure Cosmos DB is `YYYY-MM-DDThh:mm:ss.fffffffZ` which follows the ISO 8601 **UTC standard**. +The Azure function project `time_tracker_events` also have some constraints to have into account. It is recommended that +you read the [Azure Functions Python developer guide](https://docs.microsoft.com/en-us/azure/azure-functions/functions-reference-python#folder-structure). + +If you require to deploy `time_tracker_events` from your local machine to Azure Functions, you can execute: + +```bash +func azure functionapp publish time-tracker-events --build local +``` + + ## Development ### Git hooks diff --git a/requirements/time_tracker_events/prod.txt b/requirements/time_tracker_events/prod.txt index 56cb7a97..a42edf6d 100644 --- a/requirements/time_tracker_events/prod.txt +++ b/requirements/time_tracker_events/prod.txt @@ -1,5 +1,4 @@ # requirements/time_tracker_events/prod.txt -# Azure Functions library -azure-functions - +# Include the requirements of that folder, required there by convention +-r ../../time_tracker_events/requirements.txt diff --git a/tests/time_tracker_events/shared_code/__init__.py b/tests/time_tracker_events/shared_code/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/tests/time_tracker_events/test_handle_events_trigger.py b/tests/time_tracker_events/shared_code/test_handle_events_trigger.py similarity index 93% rename from tests/time_tracker_events/test_handle_events_trigger.py rename to tests/time_tracker_events/shared_code/test_handle_events_trigger.py index 12db267c..4e199732 100644 --- a/tests/time_tracker_events/test_handle_events_trigger.py +++ b/tests/time_tracker_events/shared_code/test_handle_events_trigger.py @@ -1,7 +1,7 @@ import azure.functions as func from faker import Faker -from time_tracker_events.handle_events_trigger import main as main_handler +from time_tracker_events.shared_code.handle_events_trigger import main as main_handler fake = Faker() diff --git a/time_tracker_events/.funcignore b/time_tracker_events/.funcignore index 8b137891..38b8bc85 100644 --- a/time_tracker_events/.funcignore +++ b/time_tracker_events/.funcignore @@ -1 +1,2 @@ - +run.sh +.vscode diff --git a/time_tracker_events/.gitignore b/time_tracker_events/.gitignore index fbbe2efa..86168604 100644 --- a/time_tracker_events/.gitignore +++ b/time_tracker_events/.gitignore @@ -40,4 +40,4 @@ venv.bak/ # Byte-compiled / optimized / DLL files __pycache__/ *.py[cod] -*$py.class \ No newline at end of file +*$py.class diff --git a/time_tracker_events/handle_activity_events_trigger/__init__.py b/time_tracker_events/handle_activity_events_trigger/__init__.py index bd818325..0602f8e4 100644 --- a/time_tracker_events/handle_activity_events_trigger/__init__.py +++ b/time_tracker_events/handle_activity_events_trigger/__init__.py @@ -1,3 +1,3 @@ -from ..handle_events_trigger import main as handler +from ..shared_code import handle_events_trigger -main = handler +main = handle_events_trigger.main diff --git a/time_tracker_events/handle_customer_trigger/__init__.py b/time_tracker_events/handle_customer_trigger/__init__.py index bd818325..9bc23156 100644 --- a/time_tracker_events/handle_customer_trigger/__init__.py +++ b/time_tracker_events/handle_customer_trigger/__init__.py @@ -1,3 +1,3 @@ -from ..handle_events_trigger import main as handler +from ..shared_code.handle_events_trigger import main as handler main = handler diff --git a/time_tracker_events/handle_project_events_trigger/__init__.py b/time_tracker_events/handle_project_events_trigger/__init__.py index bd818325..9bc23156 100644 --- a/time_tracker_events/handle_project_events_trigger/__init__.py +++ b/time_tracker_events/handle_project_events_trigger/__init__.py @@ -1,3 +1,3 @@ -from ..handle_events_trigger import main as handler +from ..shared_code.handle_events_trigger import main as handler main = handler diff --git a/time_tracker_events/handle_project_type_events_trigger/__init__.py b/time_tracker_events/handle_project_type_events_trigger/__init__.py index bd818325..9bc23156 100644 --- a/time_tracker_events/handle_project_type_events_trigger/__init__.py +++ b/time_tracker_events/handle_project_type_events_trigger/__init__.py @@ -1,3 +1,3 @@ -from ..handle_events_trigger import main as handler +from ..shared_code.handle_events_trigger import main as handler main = handler diff --git a/time_tracker_events/handle_time_entry_events_trigger/__init__.py b/time_tracker_events/handle_time_entry_events_trigger/__init__.py index bd818325..39a2ad25 100644 --- a/time_tracker_events/handle_time_entry_events_trigger/__init__.py +++ b/time_tracker_events/handle_time_entry_events_trigger/__init__.py @@ -1,3 +1,3 @@ -from ..handle_events_trigger import main as handler +from __app__.shared_code.handle_events_trigger import main as handler main = handler diff --git a/time_tracker_events/host.json b/time_tracker_events/host.json index 8f3cf9db..d342a8ea 100644 --- a/time_tracker_events/host.json +++ b/time_tracker_events/host.json @@ -4,4 +4,4 @@ "id": "Microsoft.Azure.Functions.ExtensionBundle", "version": "[1.*, 2.0.0)" } -} \ No newline at end of file +} diff --git a/time_tracker_events/local.settings.json b/time_tracker_events/local.settings.json deleted file mode 100644 index 89cb8861..00000000 --- a/time_tracker_events/local.settings.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "IsEncrypted": false, - "Values": { - "FUNCTIONS_WORKER_RUNTIME": "python", - "AzureWebJobsStorage": "{AzureWebJobsStorage}", - "COSMOS_DATABASE_URI": "AccountEndpoint=https://time-tracker-db.documents.azure.com:443/;AccountKey=6lyRD8ma0VQjcMbeSMFOTDGwNDptcEGfngp3c9DStNAMCNh2MRbkNWmRinoNvuB6aH51EMEkgeP5WfW3VZiV9g==;" - } -} diff --git a/time_tracker_events/requirements.txt b/time_tracker_events/requirements.txt new file mode 100644 index 00000000..034bca5b --- /dev/null +++ b/time_tracker_events/requirements.txt @@ -0,0 +1,4 @@ +# time_tracker_events/requirements.txt + +# Azure Functions library +azure-functions \ No newline at end of file diff --git a/time_tracker_events/handle_events_trigger.py b/time_tracker_events/shared_code/handle_events_trigger.py similarity index 100% rename from time_tracker_events/handle_events_trigger.py rename to time_tracker_events/shared_code/handle_events_trigger.py