Skip to content

S28 3158/report updates #1102

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
Jun 27, 2025
Merged

S28 3158/report updates #1102

merged 9 commits into from
Jun 27, 2025

Conversation

jasonpaige
Copy link
Contributor

JIRA ticket(s)

Change description

All changes to reports have been made under a new api endpoint of /reports-v2/
The App will need to be updated to make use of these new report formats

  • Add court postcode column
  • Add court county column
  • Update court entity/dtos etc.
  • Concurrent Capture Session Report:
    • Remove id field
    • Add date string in format DD/MM/YYYY
    • Convert startTime to string in format HH:MM:SS
    • Convert endTime to string in format HH:MM:SS
    • Convert duration to string in format HH:MM:SS
    • Add timezone which can be either GMT or BST
    • Convert region list to name of first region
    • Add court county field
    • Add court postcode field
  • Merged other report updates into this PR as well

Important

This PR requires manual testing by QA. Please notify the QA team @hmcts/pre-rec-evidence-qa.

QA instructions

  • Try running the reports through swagger to ensure the new format is correct
  • The old format of reports should still be accessible via the old endpoint

@jasonpaige jasonpaige requested a review from a team as a code owner June 25, 2025 14:53
Copy link
Contributor

hmcts-jenkins-cnp bot commented Jun 26, 2025

Plan Result (stg)

⚠️ Resource Deletion will happen

This plan contains resource delete operation. Please check the plan result very carefully!

Plan: 1 to add, 5 to change, 1 to destroy.
  • Update
    • module.apim_subscription_editvm[0].azurerm_api_management_subscription.subscription
    • module.apim_subscription_portal[0].azurerm_api_management_subscription.subscription
    • module.apim_subscription_powerplatform[0].azurerm_api_management_subscription.subscription
    • module.apim_subscription_smoketest[0].azurerm_api_management_subscription.subscription
    • module.pre-api-exception-alert[0].azurerm_resource_group_template_deployment.custom_alert[0]
  • Replace
    • module.pre_api[0].azurerm_api_management_api.api
Change Result (Click me)
  # module.apim_subscription_editvm[0].azurerm_api_management_subscription.subscription will be updated in-place
  ~ resource "azurerm_api_management_subscription" "subscription" {
      ~ allow_tracing       = false -> true
        id                  = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/ss-stg-network-rg/providers/Microsoft.ApiManagement/service/sds-api-mgmt-stg/subscriptions/8265f455-2bf2-4c4b-8ba3-bfd0a2f5a6b7"
        # (10 unchanged attributes hidden)
    }

  # module.apim_subscription_portal[0].azurerm_api_management_subscription.subscription will be updated in-place
  ~ resource "azurerm_api_management_subscription" "subscription" {
      ~ allow_tracing       = false -> true
        id                  = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/ss-stg-network-rg/providers/Microsoft.ApiManagement/service/sds-api-mgmt-stg/subscriptions/500e642d-76ef-4d82-8741-bf9e9d979705"
        # (10 unchanged attributes hidden)
    }

  # module.apim_subscription_powerplatform[0].azurerm_api_management_subscription.subscription will be updated in-place
  ~ resource "azurerm_api_management_subscription" "subscription" {
      ~ allow_tracing       = false -> true
        id                  = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/ss-stg-network-rg/providers/Microsoft.ApiManagement/service/sds-api-mgmt-stg/subscriptions/37f73c17-345b-4c67-81d5-50d582e97227"
        # (10 unchanged attributes hidden)
    }

  # module.apim_subscription_smoketest[0].azurerm_api_management_subscription.subscription will be updated in-place
  ~ resource "azurerm_api_management_subscription" "subscription" {
      ~ allow_tracing       = false -> true
        id                  = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/ss-stg-network-rg/providers/Microsoft.ApiManagement/service/sds-api-mgmt-stg/subscriptions/da1d82f9-7187-4cb6-a6dd-b0020311f3bb"
        # (10 unchanged attributes hidden)
    }

  # module.pre-api-exception-alert[0].azurerm_resource_group_template_deployment.custom_alert[0] will be updated in-place
  ~ resource "azurerm_resource_group_template_deployment" "custom_alert" {
        id                       = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/pre-stg/providers/Microsoft.Resources/deployments/PRE_API_exception"
        name                     = "PRE_API_exception"
        tags                     = {}
      ~ template_content         = jsonencode(
          ~ {
              ~ parameters     = {
                  ~ actionGroupName          = {
                      ~ type = "String" -> "string"
                    }
                  ~ actionGroupRg            = {
                      ~ type = "String" -> "string"
                    }
                  ~ alertDesc                = {
                      ~ type = "String" -> "string"
                    }
                  ~ alertName                = {
                      ~ type = "String" -> "string"
                    }
                  ~ appInsightsName          = {
                      ~ type = "String" -> "string"
                    }
                  ~ appInsightsQuery         = {
                      ~ type = "String" -> "string"
                    }
                  ~ commonTags               = {
                      ~ type = "String" -> "string"
                    }
                  ~ customEmailSubject       = {
                      ~ type = "String" -> "string"
                    }
                  ~ frequencyInMinutes       = {
                      ~ type         = "String" -> "string"
                        # (1 unchanged attribute hidden)
                    }
                  ~ location                 = {
                      ~ type = "String" -> "string"
                    }
                  ~ severityLevel            = {
                      ~ type         = "String" -> "string"
                        # (1 unchanged attribute hidden)
                    }
                  ~ timeWindowInMinutes      = {
                      ~ type         = "String" -> "string"
                        # (1 unchanged attribute hidden)
                    }
                  ~ triggerThreshold         = {
                      ~ type = "String" -> "string"
                    }
                  ~ triggerThresholdOperator = {
                      ~ type          = "String" -> "string"
                        # (2 unchanged attributes hidden)
                    }
                }
                # (4 unchanged attributes hidden)
            }
        )
        # (6 unchanged attributes hidden)
    }

  # module.pre_api[0].azurerm_api_management_api.api must be replaced
-/+ resource "azurerm_api_management_api" "api" {
      ~ id                    = "/subscriptions/74dacd4f-a248-45bb-a2f0-af700dc4cf68/resourceGroups/ss-stg-network-rg/providers/Microsoft.ApiManagement/service/sds-api-mgmt-stg/apis/pre-api;rev=103" -> (known after apply)
      ~ is_current            = true -> (known after apply)
      ~ is_online             = false -> (known after apply)
        name                  = "pre-api"
      ~ revision              = "103" -> "104" # forces replacement
      + version               = (known after apply)
      + version_set_id        = (known after apply)
        # (12 unchanged attributes hidden)

      ~ subscription_key_parameter_names (known after apply)
      - subscription_key_parameter_names {
          - header = "Ocp-Apim-Subscription-Key" -> null
          - query  = "subscription-key" -> null
        }

        # (1 unchanged block hidden)
    }

Plan: 1 to add, 5 to change, 1 to destroy.

Copy link
Contributor

hmcts-jenkins-cnp bot commented Jun 26, 2025

Plan Result (prod)

⚠️ Resource Deletion will happen

This plan contains resource delete operation. Please check the plan result very carefully!

Plan: 1 to add, 2 to change, 1 to destroy.
  • Update
    • module.pre-api-exception-alert[0].azurerm_resource_group_template_deployment.custom_alert[0]
    • module.pre-api-liveness-alert[0].azurerm_resource_group_template_deployment.custom_alert[0]
  • Replace
    • module.pre_api[0].azurerm_api_management_api.api
Change Result (Click me)
  # module.pre-api-exception-alert[0].azurerm_resource_group_template_deployment.custom_alert[0] will be updated in-place
  ~ resource "azurerm_resource_group_template_deployment" "custom_alert" {
        id                       = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/pre-prod/providers/Microsoft.Resources/deployments/PRE_API_exception"
        name                     = "PRE_API_exception"
        tags                     = {}
      ~ template_content         = jsonencode(
          ~ {
              ~ parameters     = {
                  ~ actionGroupName          = {
                      ~ type = "String" -> "string"
                    }
                  ~ actionGroupRg            = {
                      ~ type = "String" -> "string"
                    }
                  ~ alertDesc                = {
                      ~ type = "String" -> "string"
                    }
                  ~ alertName                = {
                      ~ type = "String" -> "string"
                    }
                  ~ appInsightsName          = {
                      ~ type = "String" -> "string"
                    }
                  ~ appInsightsQuery         = {
                      ~ type = "String" -> "string"
                    }
                  ~ commonTags               = {
                      ~ type = "String" -> "string"
                    }
                  ~ customEmailSubject       = {
                      ~ type = "String" -> "string"
                    }
                  ~ frequencyInMinutes       = {
                      ~ type         = "String" -> "string"
                        # (1 unchanged attribute hidden)
                    }
                  ~ location                 = {
                      ~ type = "String" -> "string"
                    }
                  ~ severityLevel            = {
                      ~ type         = "String" -> "string"
                        # (1 unchanged attribute hidden)
                    }
                  ~ timeWindowInMinutes      = {
                      ~ type         = "String" -> "string"
                        # (1 unchanged attribute hidden)
                    }
                  ~ triggerThreshold         = {
                      ~ type = "String" -> "string"
                    }
                  ~ triggerThresholdOperator = {
                      ~ type          = "String" -> "string"
                        # (2 unchanged attributes hidden)
                    }
                }
                # (4 unchanged attributes hidden)
            }
        )
        # (6 unchanged attributes hidden)
    }

  # module.pre-api-liveness-alert[0].azurerm_resource_group_template_deployment.custom_alert[0] will be updated in-place
  ~ resource "azurerm_resource_group_template_deployment" "custom_alert" {
        id                       = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/pre-prod/providers/Microsoft.Resources/deployments/PRE_API_liveness"
        name                     = "PRE_API_liveness"
        tags                     = {}
      ~ template_content         = jsonencode(
          ~ {
              ~ parameters     = {
                  ~ actionGroupName          = {
                      ~ type = "String" -> "string"
                    }
                  ~ actionGroupRg            = {
                      ~ type = "String" -> "string"
                    }
                  ~ alertDesc                = {
                      ~ type = "String" -> "string"
                    }
                  ~ alertName                = {
                      ~ type = "String" -> "string"
                    }
                  ~ appInsightsName          = {
                      ~ type = "String" -> "string"
                    }
                  ~ appInsightsQuery         = {
                      ~ type = "String" -> "string"
                    }
                  ~ commonTags               = {
                      ~ type = "String" -> "string"
                    }
                  ~ customEmailSubject       = {
                      ~ type = "String" -> "string"
                    }
                  ~ frequencyInMinutes       = {
                      ~ type         = "String" -> "string"
                        # (1 unchanged attribute hidden)
                    }
                  ~ location                 = {
                      ~ type = "String" -> "string"
                    }
                  ~ severityLevel            = {
                      ~ type         = "String" -> "string"
                        # (1 unchanged attribute hidden)
                    }
                  ~ timeWindowInMinutes      = {
                      ~ type         = "String" -> "string"
                        # (1 unchanged attribute hidden)
                    }
                  ~ triggerThreshold         = {
                      ~ type = "String" -> "string"
                    }
                  ~ triggerThresholdOperator = {
                      ~ type          = "String" -> "string"
                        # (2 unchanged attributes hidden)
                    }
                }
                # (4 unchanged attributes hidden)
            }
        )
        # (6 unchanged attributes hidden)
    }

  # module.pre_api[0].azurerm_api_management_api.api must be replaced
-/+ resource "azurerm_api_management_api" "api" {
      ~ id                    = "/subscriptions/5ca62022-6aa2-4cee-aaa7-e7536c8d566c/resourceGroups/ss-prod-network-rg/providers/Microsoft.ApiManagement/service/sds-api-mgmt-prod/apis/pre-api;rev=103" -> (known after apply)
      ~ is_current            = true -> (known after apply)
      ~ is_online             = false -> (known after apply)
        name                  = "pre-api"
      ~ revision              = "103" -> "104" # forces replacement
      + version               = (known after apply)
      + version_set_id        = (known after apply)
        # (12 unchanged attributes hidden)

      ~ subscription_key_parameter_names (known after apply)
      - subscription_key_parameter_names {
          - header = "Ocp-Apim-Subscription-Key" -> null
          - query  = "subscription-key" -> null
        }

        # (1 unchanged block hidden)
    }

Plan: 1 to add, 2 to change, 1 to destroy.

Copy link

@NazeeKadiu NazeeKadiu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested in the PR - looks good

@jasonpaige jasonpaige merged commit a207112 into master Jun 27, 2025
8 checks passed
@jasonpaige jasonpaige deleted the S28-3158/report-updates branch June 27, 2025 10:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants