From d380bb0fede6a821f658654f43f4ad939edc4888 Mon Sep 17 00:00:00 2001 From: Rob Moore Date: Fri, 20 Jul 2018 01:01:23 +0800 Subject: [PATCH] Updating documentation --- README.md | 23 ++++++++++++++++------- vsts-cd-variables.png | Bin 15642 -> 42163 bytes 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 05c0489..69507de 100644 --- a/README.md +++ b/README.md @@ -2,20 +2,29 @@ This project contains backend functionality to run the DDD conferences, including: -* Syncing data from [Sessionize](https://sessionize.com/) to Azure Cosmos DB -* [Todo] APIs to facilitate anonymous voting by the community (pulling sessions from Cosmos DB and storing votes to Azure Table Storage) +* Syncing data from [Sessionize](https://sessionize.com/) to Azure Table Storage (tenanted by conference year) for submitted sessions (and submitters) and separate to that, selected sessions (and presenters) +* APIs that return submission and session (agenda) information during allowed times +* APIs to facilitate voting by the community against (optionally anonymous) submitted sessions (notes stored to Azure Table Storage tenanted by conference year) including various mechanisms to detect fraud +* Syncing Eventbrite order IDs and Azure App Insights voting user IDs to assist with voting fraud detection and validation +* API to return analysed voting information * Ability to trigger an Azure Logic App when a new session is detected from Sessionize (which can then be used to create Microsoft Teams / Slack notifications for visibility to the organising committee and/or to trigger moderation actions) * Eventbrite webhook to take order notifications, de-duplicate them and place them in queue storage so they can be picked up by a Logic App (or similar) to do things like create Microsoft Teams / Slack notifications for visibility to the organising committee # Structure -* `DDD.API`: Not currently used, likely to be used to create voting APIs if functions isn't suitable - TBD! * `DDD.Core`: Cross-cutting logic and core domain model * `DDD.Functions`: Azure Functions project that contains: - * `SessionizeReadModelSync`: C# Azure Function triggered by a cron schedule defined in config that performs a sync from Sessionize to Cosmos DB - * `NewSessionNotification`: C# Azure Function that responds to changed in Cosmos DB changes (more specifically looking for new sessions being added from Sessionize) and then calls a Logic App Web Hook URL (from config) with the session and presenter information + * `AppInsightsSync`: C# Azure Function that syncs app insights user IDs to Azure Table Storage for users that submitted a vote * `EventbriteNotification`: Node.js Azure Function that exposes a web hook URL that can be added to Eventbrite (via Account Settings > Webhooks) for the `order.placed` action that will then de-duplicate webhook events and push them to queue storage for further processing (e.g. via a Logic App) -* `DDD.Sessionize`: Syncing logic to sync data from sessionize to Document DB + * `EventbriteSync`: C# Azure Function that syncs Eventbrite order IDs to Azure Table Storage for a configured event + * `GetAgenda`: C# Azure Function that returns sessions and presenters that have been approved for agenda + * `GetSubmissions`: C# Azure Function that returns submissions and submitters for use with either voting or showing submitted sessions + * `GetVotes`: C# Azure Function that returns analysed vote information; can be piped into Microsoft Power BI or similar for further processing and visualisation + * `NewSessionNotification`: C# Azure Function that responds to new submissions in Azure Table Storage and then calls a Logic App Web Hook URL (from config) with the session and presenter information (marking that session as notified to avoid duplicate notifications) + * `SessionizeReadModelSync`: C# Azure Function triggered by a cron schedule defined in config that performs a sync from Sessionize to Azure Table Storage for submissions + * `SessionizeAgendaSync`: C# Azure Function triggered by a cron schedule defined in config that performs a sync from Sessionize to Azure Table Storage for approved sessions + * `SubmitVote`: : C# Azure Function that allows a vote for submissions to be submitted, where it is validated and persisted to Azure Table Storage +* `DDD.Sessionize`: Syncing logic to sync data from sessionize to Azure Table Storage * `DDD.Sessionize.Tests`: Unit tests for the Sessionize Syncing code * `infrastructure`: Azure ARM deployment scripts to provision the backend environment * `Deploy-Local.ps1`: Run locally to debug or develop the scripts using your user context in Azure @@ -33,7 +42,7 @@ VSTS doesn't yet support .yml files for Continuous Delivery (Release) so the ste * Add a task for the SAS token generation for the storage account you persisted deployments to set the output variables to `DeploymentZipUri` and `DeploymentZipToken` respectively, recommend setting the timeout to a big number so it's always available (e.g. `1000000`), permission should just be `r` * Add an Azure PowerShell task against your subscription and: * `$(System.DefaultWorkingDirectory)/{CI build name}/infrastructure/Deploy.ps1` as the script file path - * `-AlreadyLoggedIn -TenantId $(TenantId) -SubscriptionId $(SubscriptionId) -ConferenceName $(ConferenceName) -Location "$(Location)" -AppEnvironment $(AppEnvironment) -AppServicePlanResourceGroup $(AppServicePlanResourceGroup) -AppServicePlanName $(AppServicePlanName) -NewSessionNotificationLogicAppUrl "$(NewSessionNotificationLogicAppUrl)" -DeploymentZipUrl "$(DeploymentZipUri)$(DeploymentZipBlobPath)$(DeploymentZipToken)" -SessionizeApiKey $(SessionizeApiKey) -EventbriteApiBearerToken $(EventbriteApiBearerToken)` as the script arguments + * `` as the script arguments * Add variables, e.g.: ![Variables](vsts-cd-variables.png) * Profit! diff --git a/vsts-cd-variables.png b/vsts-cd-variables.png index 2e0c89e3b41533a532ec185d1a033e699554f74e..c9b17a30328a12d2206612d46b5c87ea2f251034 100644 GIT binary patch literal 42163 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�#4d`NO+# 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 literal 15642 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

?Rtnhy%UxyvsugxBmw?O2P%e<#~5sp3d6#;f&e( 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 jH^%