Skip to content
Snippets Groups Projects

terraform: update uptimerobot to a different provider

All threads resolved!

Define a resource for default_alert_contact of type e-mail for use in uptimerobot_monitor resource

Motivation: Error in terraform plan on tf-stage2:

Error: Failed to find alert contact by name root@archlinux.org

│   with data.uptimerobot_alert_contact.default_alert_contact,
│   on uptimerobot.tf line 18, in data "uptimerobot_alert_contact" "default_alert_contact":
│   18: data "uptimerobot_alert_contact" "default_alert_contact" {
Edited by Leonidas Spyropoulos

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Terraform plan output:

    ➜ terraform plan -no-color
    data.external.vault_hedgedoc: Reading...
    data.external.vault_keycloak: Reading...
    data.external.vault_monitoring: Reading...
    data.external.vault_github: Reading...
    data.external.vault_matrix: Reading...
    data.external.vault_security_tracker: Reading...
    data.external.vault_uptimerobot: Reading...
    data.external.vault_google: Reading...
    data.external.vault_google: Read complete after 1s [id=-]
    data.external.vault_github: Read complete after 1s [id=-]
    data.external.vault_security_tracker: Read complete after 1s [id=-]
    data.external.vault_matrix: Read complete after 1s [id=-]
    data.external.vault_hedgedoc: Read complete after 1s [id=-]
    data.external.vault_uptimerobot: Read complete after 1s [id=-]
    data.uptimerobot_account.account: Reading...
    uptimerobot_monitor.uptimerobot_monitor_archlinux["Wiki"]: Refreshing state... [id=788139640]
    uptimerobot_monitor.uptimerobot_monitor_archlinux["Security Tracker"]: Refreshing state... [id=788139638]
    uptimerobot_monitor.uptimerobot_monitor_archlinux["Forum"]: Refreshing state... [id=788139635]
    uptimerobot_monitor.uptimerobot_monitor_archlinux["Website"]: Refreshing state... [id=788139636]
    uptimerobot_monitor.uptimerobot_monitor_archlinux["Bugtracker"]: Refreshing state... [id=788139634]
    uptimerobot_monitor.uptimerobot_monitor_archlinux["Man"]: Refreshing state... [id=788174139]
    uptimerobot_monitor.uptimerobot_monitor_archlinux["Accounts"]: Refreshing state... [id=793039975]
    data.external.vault_keycloak: Read complete after 1s [id=-]
    uptimerobot_monitor.uptimerobot_monitor_archlinux["AUR"]: Refreshing state... [id=788139639]
    data.uptimerobot_account.account: Read complete after 0s [id=2023-03-09 11:56:21.013796531 +0000 UTC]
    uptimerobot_monitor.uptimerobot_monitor_archlinux["Gitlab"]: Refreshing state... [id=788139637]
    data.external.vault_monitoring: Read complete after 1s [id=-]
    keycloak_authentication_flow.arch_browser_flow: Refreshing state... [id=b48c661e-a255-4f26-85c8-1d2f7f066311]
    keycloak_role.externalcontributor: Refreshing state... [id=ed731532-e5c5-462d-bce1-b97e947c4781]
    keycloak_required_action.update_profile: Refreshing state... [id=archlinux/UPDATE_PROFILE]
    keycloak_required_action.update_user_locale: Refreshing state... [id=archlinux/update_user_locale]
    keycloak_authentication_flow.arch_post_ipr_flow: Refreshing state... [id=8c124f41-0064-481e-bdfc-e22a821edea2]
    keycloak_required_action.webauthn_register: Refreshing state... [id=archlinux/webauthn-register]
    keycloak_openid_client.buildbot_openid_client: Refreshing state... [id=0b291fd1-5255-4407-9617-e0c0a797ec7b]
    keycloak_openid_client.grafana_openid_client: Refreshing state... [id=5ebed5a5-9e34-4165-8189-d907a1e2c5bf]
    keycloak_group.staff: Refreshing state... [id=6395c75f-e513-4e7e-ad9e-2814f723ead7]
    keycloak_realm.archlinux: Refreshing state... [id=archlinux]
    keycloak_openid_client.gluebuddy_openid_client: Refreshing state... [id=6a9bda10-8000-4260-95c2-af4b656b5035]
    keycloak_required_action.verify_email: Refreshing state... [id=archlinux/VERIFY_EMAIL]
    keycloak_group.externalcontributors: Refreshing state... [id=3aead06e-2f68-4c19-a36c-967c0effd57a]
    keycloak_role.devops: Refreshing state... [id=72a8e4e8-239c-4f97-bc5d-b62929c3315f]
    keycloak_required_action.custom-terms-and-conditions: Refreshing state... [id=archlinux/terms_and_conditions]
    keycloak_role.staff: Refreshing state... [id=4215a4f2-ee1c-458a-be36-9ab61661c78b]
    keycloak_realm_events.realm_events: Refreshing state... [id=archlinux]
    keycloak_required_action.update_password: Refreshing state... [id=archlinux/UPDATE_PASSWORD]
    keycloak_authentication_flow.arch_registration_flow: Refreshing state... [id=4d4541be-a7b5-42c2-a994-492f19b079e8]
    keycloak_saml_client.saml_gitlab: Refreshing state... [id=f0641a2a-c472-4b0c-b8eb-3a059dcc5a97]
    keycloak_openid_client.security_tracker_openid_client: Refreshing state... [id=780c289a-ce0b-4871-8b1d-2e83032fcc07]
    keycloak_openid_client.matrix_openid_client: Refreshing state... [id=4ae5f20b-6c24-4be4-9475-1461dedd31f9]
    keycloak_authentication_flow.arch_reset_credentials_flow: Refreshing state... [id=4f5d8eac-8fd3-4f5c-82d4-2f833617de7b]
    keycloak_required_action.configure_otp: Refreshing state... [id=archlinux/CONFIGURE_TOTP]
    keycloak_openid_client.hedgedoc_openid_client: Refreshing state... [id=52b266cf-96e7-4f53-9a4c-785bc71c3e71]
    keycloak_openid_client.openid_gitlab: Refreshing state... [id=b5edcacd-f6d5-44cb-9f19-f375a200b712]
    keycloak_authentication_execution.cookie: Refreshing state... [id=1e51d353-4b1e-4c78-b351-52572690216d]
    keycloak_authentication_execution.ipr_webauthn_form: Refreshing state... [id=19467240-3eea-4460-aa04-4f8c70a4c7ad]
    keycloak_oidc_identity_provider.realm_identity_provider: Refreshing state... [id=github]
    keycloak_group.staff_groups["IRC"]: Refreshing state... [id=c05d93a4-affd-4042-8083-ccdff423d924]
    keycloak_group.staff_groups["DevOps"]: Refreshing state... [id=c847a17e-7ff2-4eed-82d4-8b312371000f]
    keycloak_group.staff_groups["Project Maintainers"]: Refreshing state... [id=f0304093-1a6a-402d-9d98-fdf752deb524]
    keycloak_group.staff_groups["Forum"]: Refreshing state... [id=a6d85f4d-e870-48af-affe-99a7aa55e8e9]
    keycloak_group.staff_groups["Trusted Users"]: Refreshing state... [id=8851ad95-ad40-4381-8c46-87cfd5cde152]
    keycloak_group.staff_groups["Archweb"]: Refreshing state... [id=a97fe739-f901-471a-bd03-464b43fb7792]
    keycloak_group.staff_groups["Security Team"]: Refreshing state... [id=d7fc2b46-3eb8-4f70-b040-01d30b430828]
    keycloak_group.staff_groups["Developers"]: Refreshing state... [id=9d1ec6b8-0b26-4d43-bd4c-ef6eba494201]
    keycloak_group.staff_groups["Wiki"]: Refreshing state... [id=0184a7be-98e0-4e8b-839f-fa7478bb097c]
    keycloak_group.staff_groups["Bug Wranglers"]: Refreshing state... [id=1a56644f-a89a-436e-84ba-63ade79b0c72]
    keycloak_group_roles.externalcontributor: Refreshing state... [id=archlinux/3aead06e-2f68-4c19-a36c-967c0effd57a]
    keycloak_group.externalcontributors_groups["Archweb"]: Refreshing state... [id=bcec20f3-b3ba-4f0b-93f5-01fec8f8f765]
    keycloak_group.externalcontributors_groups["Security Team"]: Refreshing state... [id=4db0d4f0-bb8e-4210-980b-7e86f9643aa6]
    keycloak_openid_user_realm_role_protocol_mapper.user_realm_role_mapper: Refreshing state... [id=37b0f57e-7903-4d33-b5f3-b1155bb40fe5]
    keycloak_group_roles.staff: Refreshing state... [id=archlinux/6395c75f-e513-4e7e-ad9e-2814f723ead7]
    keycloak_openid_user_realm_role_protocol_mapper.buildbot_user_realm_role_mapper: Refreshing state... [id=6d0a07ab-f87e-4c70-b506-caddafb87b4b]
    keycloak_authentication_subflow.registration_form: Refreshing state... [id=4822a931-10ed-4929-bd52-8f4245fdc1f6]
    keycloak_saml_user_property_protocol_mapper.gitlab_saml_first_name: Refreshing state... [id=a50c12ee-29f3-4cf9-8b43-a45b0a54616e]
    keycloak_saml_user_property_protocol_mapper.gitlab_saml_username: Refreshing state... [id=313f9d71-db11-4094-95b2-4a9527f92fd4]
    keycloak_saml_user_property_protocol_mapper.gitlab_saml_email: Refreshing state... [id=3cd8527a-e7de-4a53-b17a-e66b74e9f4ff]
    keycloak_saml_user_property_protocol_mapper.gitlab_saml_last_name: Refreshing state... [id=d459b04b-308a-41a9-aa5d-ee8b8c128391]
    keycloak_authentication_execution.rc_choose_user: Refreshing state... [id=3a1ca09f-4afb-46e0-ad46-15269b751af3]
    keycloak_authentication_execution.ipr_otp_form: Refreshing state... [id=79bc77a7-2779-4ffa-9a75-e242f0b5cd8b]
    keycloak_authentication_execution.identity_provider_redirector: Refreshing state... [id=e53a1dce-c7fa-4b94-bfa2-9fb13a826229]
    keycloak_openid_user_realm_role_protocol_mapper.matrix_user_realm_role_mapper: Refreshing state... [id=89485d7d-7b2a-4d64-9c7a-8079057d736f]
    keycloak_openid_group_membership_protocol_mapper.group_membership_mapper: Refreshing state... [id=62d9dc39-4ab5-4163-b0e5-8bb53f29dc94]
    keycloak_openid_user_realm_role_protocol_mapper.hedgedoc_user_realm_role_mapper: Refreshing state... [id=8dc67c99-358f-4aa1-8142-836a8997f758]
    keycloak_group_roles.devops: Refreshing state... [id=archlinux/c847a17e-7ff2-4eed-82d4-8b312371000f]
    keycloak_group.staff_irc_groups["Ops"]: Refreshing state... [id=2d3e0bfa-6df0-4fea-9605-fea0d69a4780]
    keycloak_group.staff_securityteam_groups["Members"]: Refreshing state... [id=dbcb6171-35cb-422d-af95-c0f0b6d12159]
    keycloak_group.staff_securityteam_groups["Admins"]: Refreshing state... [id=168dd1b9-eba8-4481-afe2-1327bf63fa0c]
    keycloak_group.staff_forum_groups["Mods"]: Refreshing state... [id=5fb27983-00c2-4072-beb6-c5881406559a]
    keycloak_group.staff_forum_groups["Admins"]: Refreshing state... [id=66b8cd55-7676-44e1-b683-590b4649ab4b]
    keycloak_group.staff_wiki_groups["Admins"]: Refreshing state... [id=3160a88e-5d54-4705-bce5-dfb601f63232]
    keycloak_group.staff_wiki_groups["Maintainers"]: Refreshing state... [id=454fe46d-4e99-4f9b-a534-938ee0c6d74d]
    keycloak_group.staff_archweb_groups["Mirrorlist Maintainers"]: Refreshing state... [id=ecfdcf7e-bb0d-432a-a5ca-9b2dec7d0c10]
    keycloak_authentication_subflow.rc_conditional_2fa: Refreshing state... [id=f05a00aa-0970-4564-8e98-aa332ebe0895]
    keycloak_authentication_execution.rc_reset_email: Refreshing state... [id=3b039856-3592-4274-942d-859ff8fe6a1b]
    keycloak_group.externalcontributors_securityteam_groups["Reporters"]: Refreshing state... [id=d8b91547-0adb-420f-b370-9416aff02d11]
    keycloak_group.externalcontributors_archweb_groups["Testers"]: Refreshing state... [id=67963646-0ba1-4b50-ac3e-72805d15cb70]
    keycloak_authentication_subflow.ipr_otp_default: Refreshing state... [id=c89647e4-cbb0-439d-b3fe-057a8219d148]
    keycloak_authentication_subflow.password_and_2fa: Refreshing state... [id=3f82966d-253a-41ce-acd3-b538a2a2ebce]
    keycloak_authentication_execution.registration_user_creation: Refreshing state... [id=997a8f3f-b343-4c8e-a3ca-f86870193b09]
    keycloak_authentication_execution.registration_profile_action: Refreshing state... [id=8afe31bc-e5db-43d2-ad1d-eef28b55bd0f]
    keycloak_authentication_execution.registration_password_action: Refreshing state... [id=d35ade27-a5ee-4374-826e-aa7373cffd29]
    keycloak_authentication_execution.rc_2fa_condition: Refreshing state... [id=d3f3b0c3-d66a-4107-97cf-afbd45456f66]
    keycloak_authentication_execution.rc_reset_password: Refreshing state... [id=5bbc99ea-f6a2-47ff-b55b-76758f227a1e]
    keycloak_authentication_execution.username_password_form: Refreshing state... [id=f59a95a6-a770-4df3-a4bf-815a7ebfee94]
    keycloak_authentication_execution.ipr_otp_default_form: Refreshing state... [id=5a30b900-eecb-4ec5-b9d7-5174dd6cad8d]
    keycloak_authentication_execution.registration_recaptcha_action: Refreshing state... [id=8670a873-0fc7-4d81-8708-4c3739bacc26]
    keycloak_authentication_subflow.rc_2fa: Refreshing state... [id=f3d84528-02fe-4a22-9989-55d95c47b8f5]
    keycloak_authentication_subflow._2fa: Refreshing state... [id=4a5c29e8-0db5-417e-a91d-d54e6d0af8bb]
    keycloak_authentication_execution_config.registration_recaptcha_action_config: Refreshing state... [id=a85779ed-3893-4f88-bed7-755c7b5913c8]
    keycloak_authentication_execution.rc_webauthn_form: Refreshing state... [id=8fa9e2be-23d0-45a8-9765-6ec2f27f73f6]
    keycloak_authentication_execution.webauthn_form: Refreshing state... [id=25cca61e-892f-4fb1-bab7-8b0c23f4da28]
    keycloak_authentication_execution.rc_otp_form: Refreshing state... [id=c55933e5-9662-4ab9-a0de-b8902273a9ff]
    keycloak_authentication_execution.otp_form: Refreshing state... [id=7096a45f-11eb-4a79-bf44-9ce0d4315b1d]
    keycloak_authentication_subflow.rc_otp_default: Refreshing state... [id=eec5ca79-9ffb-4fc9-9679-a7fd80d0e54f]
    keycloak_authentication_subflow.otp_default: Refreshing state... [id=d9713ba8-a41a-42d6-8096-0880162a40b7]
    keycloak_authentication_execution.rc_otp_default_form: Refreshing state... [id=da0f0467-3fda-4cd4-978c-264fc413d925]
    keycloak_authentication_execution.otp_default_form: Refreshing state... [id=fdedc467-0491-40e7-b6b3-76405f7854cb]
    
    Terraform used the selected providers to generate the following execution
    plan. Resource actions are indicated with the following symbols:
      + create
      ~ update in-place
    
    Terraform will perform the following actions:
    
      # uptimerobot_alert_contact.default_alert_contact will be created
      + resource "uptimerobot_alert_contact" "default_alert_contact" {
          + friendly_name = "root@archlinux.org"
          + id            = (known after apply)
          + status        = (known after apply)
          + type          = "e-mail"
          + value         = "root@archlinux.org"
        }
    
      # uptimerobot_monitor.uptimerobot_monitor_archlinux["AUR"] will be updated in-place
      ~ resource "uptimerobot_monitor" "uptimerobot_monitor_archlinux" {
          + http_method         = "GET"
            id                  = "788139639"
            # (8 unchanged attributes hidden)
    
          - alert_contact {
              - id         = "0902990" -> null
              - recurrence = 0 -> null
              - threshold  = 0 -> null
            }
          + alert_contact {
              + id = (known after apply)
            }
        }
    
      # uptimerobot_monitor.uptimerobot_monitor_archlinux["Accounts"] will be updated in-place
      ~ resource "uptimerobot_monitor" "uptimerobot_monitor_archlinux" {
          + http_method         = "GET"
            id                  = "793039975"
            # (8 unchanged attributes hidden)
    
          - alert_contact {
              - id         = "0902990" -> null
              - recurrence = 0 -> null
              - threshold  = 0 -> null
            }
          + alert_contact {
              + id = (known after apply)
            }
        }
    
      # uptimerobot_monitor.uptimerobot_monitor_archlinux["Bugtracker"] will be updated in-place
      ~ resource "uptimerobot_monitor" "uptimerobot_monitor_archlinux" {
          + http_method         = "GET"
            id                  = "788139634"
            # (8 unchanged attributes hidden)
    
          - alert_contact {
              - id         = "0902990" -> null
              - recurrence = 0 -> null
              - threshold  = 0 -> null
            }
          + alert_contact {
              + id = (known after apply)
            }
        }
    
      # uptimerobot_monitor.uptimerobot_monitor_archlinux["Forum"] will be updated in-place
      ~ resource "uptimerobot_monitor" "uptimerobot_monitor_archlinux" {
          + http_method         = "GET"
            id                  = "788139635"
            # (8 unchanged attributes hidden)
    
          - alert_contact {
              - id         = "0902990" -> null
              - recurrence = 0 -> null
              - threshold  = 0 -> null
            }
          + alert_contact {
              + id = (known after apply)
            }
        }
    
      # uptimerobot_monitor.uptimerobot_monitor_archlinux["Gitlab"] will be updated in-place
      ~ resource "uptimerobot_monitor" "uptimerobot_monitor_archlinux" {
          + http_method         = "GET"
            id                  = "788139637"
            # (8 unchanged attributes hidden)
    
          - alert_contact {
              - id         = "0902990" -> null
              - recurrence = 0 -> null
              - threshold  = 0 -> null
            }
          + alert_contact {
              + id = (known after apply)
            }
        }
    
      # uptimerobot_monitor.uptimerobot_monitor_archlinux["Man"] will be updated in-place
      ~ resource "uptimerobot_monitor" "uptimerobot_monitor_archlinux" {
          + http_method         = "GET"
            id                  = "788174139"
            # (8 unchanged attributes hidden)
    
          - alert_contact {
              - id         = "0902990" -> null
              - recurrence = 0 -> null
              - threshold  = 0 -> null
            }
          + alert_contact {
              + id = (known after apply)
            }
        }
    
      # uptimerobot_monitor.uptimerobot_monitor_archlinux["Security Tracker"] will be updated in-place
      ~ resource "uptimerobot_monitor" "uptimerobot_monitor_archlinux" {
          + http_method         = "GET"
            id                  = "788139638"
            # (8 unchanged attributes hidden)
    
          - alert_contact {
              - id         = "0902990" -> null
              - recurrence = 0 -> null
              - threshold  = 0 -> null
            }
          + alert_contact {
              + id = (known after apply)
            }
        }
    
      # uptimerobot_monitor.uptimerobot_monitor_archlinux["Website"] will be updated in-place
      ~ resource "uptimerobot_monitor" "uptimerobot_monitor_archlinux" {
          + http_method         = "GET"
            id                  = "788139636"
            # (8 unchanged attributes hidden)
    
          - alert_contact {
              - id         = "0902990" -> null
              - recurrence = 0 -> null
              - threshold  = 0 -> null
            }
          + alert_contact {
              + id = (known after apply)
            }
        }
    
      # uptimerobot_monitor.uptimerobot_monitor_archlinux["Wiki"] will be updated in-place
      ~ resource "uptimerobot_monitor" "uptimerobot_monitor_archlinux" {
          + http_method         = "GET"
            id                  = "788139640"
            # (8 unchanged attributes hidden)
    
          - alert_contact {
              - id         = "0902990" -> null
              - recurrence = 0 -> null
              - threshold  = 0 -> null
            }
          + alert_contact {
              + id = (known after apply)
            }
        }
    
    Plan: 1 to add, 9 to change, 0 to destroy.
    
    ─────────────────────────────────────────────────────────────────────────────
    
    Note: You didn't use the -out option to save this plan, so Terraform can't
    guarantee to take exactly these actions if you run "terraform apply" now.
  • Leonidas Spyropoulos changed the description

    changed the description

  • added 1 commit

    • f447c9d4 - terraform: uptimerobot remove the alert_contact

    Compare with previous version

  • Leonidas Spyropoulos resolved all threads

    resolved all threads

  • We got an alert for GitLab's brief downtime today so notifications are still working. Seems good. :)

  • Evangelos Foutras approved this merge request

    approved this merge request

  • added 7 commits

    Compare with previous version

  • Leonidas Spyropoulos approved this merge request

    approved this merge request

  • FWIW, during today's server upgrades we didn't receive the usual alerts about Keycloak and GitLab having brief downtime.

    Edit: False alarm probably, seems I broke our mail box, thus no mail. :)

    Edited by Evangelos Foutras
  • added 9 commits

    Compare with previous version

  • mentioned in commit 66d2736c

Please register or sign in to reply
Loading