Skip to content

Release: 2 change(s) since 2026-10-27 - #154

Merged
bulbashenko merged 4 commits into
mainfrom
dev
Nov 8, 2026
Merged

bulbashenko merged 4 commits into
mainfrom
dev

Conversation

@bulbashenko-com-deploy

@bulbashenko-com-deploy bulbashenko-com-deploy Bot commented Nov 8, 2026 •

Copy link
Copy Markdown
Contributor

Всё, что накопилось в dev (staging) с прошлого релиза. Merge = релиз в prod: Flux раскатит main.

Приложения

Изменения

Warning

В staging не проверялось, впервые применится в prod этим релизом:

  • apps/production/
  • clusters/hel1/
  • infrastructure/controllers/
  • terraform/

Note

Есть изменения в terraform/: план — в комментарии OpenTofu ниже; CI применит его после мержа.

Метод мержа — только merge commit (история нужна, чтобы следующий релиз видел, что уже выкачено).
Откат: revert merge-коммита релиза в main. Обновляется scripts/release-pr.sh.

bulbashenko and others added 3 commits November 8, 2026 16:09
Owner wants files, calendars and contacts usable on an iPhone, without
duplicating data between services (infra#95). OpenCloud does not support
running on CIFS, and a Storage Box offers no S3, so Nextcloud keeps its
data directory on the box over SMB. These files have no second copy, by
the owner's decision; the database and config.php are in the backups.

Calendars and contacts live in Nextcloud only. People and groups stay
in Ory, mail in Stalwart.

A response header keeps DAV paths out of Cloudflare's cache: it caches
by extension and those paths end in the user's .jpg or .pdf. A Cache
Rule would need more rights on the tofu-apply token.

The PV assumes the new subaccount becomes u689140-sub2, the next free
name after sub1. Check output storage_box_nextcloud_username.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
hel1-core does not ignore user_data, so any change to the agent template
makes OpenTofu replace the mail server. The tofu plan on this PR showed
exactly that.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Add Nextcloud on the Storage Box behind the tunnel
@bulbashenko-com-deploy bulbashenko-com-deploy Bot added the release Release PR main -> production label Nov 8, 2026
@github-actions

github-actions Bot commented Nov 8, 2026

Copy link
Copy Markdown

OpenTofu: Plan: 2 to add, 1 to change, 0 to destroy. (applied by CI when this reaches main)

plan

OpenTofu used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
  + create
  ~ update in-place (current -> planned)

OpenTofu will perform the following actions:

  # cloudflare_dns_record.cloud will be created
  + resource "cloudflare_dns_record" "cloud" {
      + comment                 = "[nextcloud] files, calendars and contacts (public), via Tunnel"
      + comment_modified_on     = (known after apply)
      + content                 = "86ba9b1b-b87b-45ec-a811-825aa7658c8b.cfargotunnel.com"
      + created_on              = (known after apply)
      + id                      = (known after apply)
      + include_shadow_metadata = false
      + meta                    = (known after apply)
      + modified_on             = (known after apply)
      + name                    = "cloud.bulbashenko.com"
      + proxiable               = (known after apply)
      + proxied                 = true
      + settings                = (known after apply)
      + tags                    = (known after apply)
      + tags_modified_on        = (known after apply)
      + ttl                     = 1
      + type                    = "CNAME"
      + zone_id                 = "abb0bea137c9c120a465f8a609c98e02"
    }

  # cloudflare_zero_trust_tunnel_cloudflared_config.hel1 will be updated in-place
  ~ resource "cloudflare_zero_trust_tunnel_cloudflared_config" "hel1" {
      ~ config     = {
          ~ ingress = [
              ~ {
                  + hostname = "cloud.bulbashenko.com"
                  ~ service  = "http_status:404" -> "http://traefik.kube-system.svc.cluster.local:80"
                },
              + {
                  + service = "http_status:404"
                },
                # (7 unchanged elements hidden)
            ]
        }
      ~ created_at = "2026-10-12T00:22:18Z" -> (known after apply)
        id         = "86ba9b1b-b87b-45ec-a811-825aa7658c8b"
      ~ source     = "cloudflare" -> (known after apply)
      ~ version    = 3 -> (known after apply)
        # (2 unchanged attributes hidden)
    }

  # hcloud_storage_box_subaccount.nextcloud will be created
  + resource "hcloud_storage_box_subaccount" "nextcloud" {
      + access_settings = {
          + reachable_externally = false
          + readonly             = false
          + samba_enabled        = true
          + ssh_enabled          = false
          + webdav_enabled       = false
        }
      + description     = "Nextcloud data directory (SMB)"
      + home_directory  = "nextcloud"
      + id              = (known after apply)
      + labels          = {}
      + name            = (known after apply)
      + password        = (sensitive value)
      + server          = (known after apply)
      + storage_box_id  = 671089
      + username        = (known after apply)
    }

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

Changes to Outputs:
  + storage_box_nextcloud_username    = (known after apply)

─────────────────────────────────────────────────────────────────────────────

Note: You didn't use the -out option to save this plan, so OpenTofu can't
guarantee to take exactly these actions if you run "tofu apply" now.
exit status 2
exit status 2

…s group (bulbashenko-com/auth#38)

2 commit(s), 7 file(s) since d6004ef:
- db3ef21 Merge pull request #38 from bulbashenko-com/nextcloud-client
- 02ce260 Add the Nextcloud OIDC client and the cloud-users group

Source: bulbashenko-com/auth@d6004ef...db3ef21
@bulbashenko-com-deploy bulbashenko-com-deploy Bot changed the title Release: 1 change(s) since 2026-10-27 Release: 2 change(s) since 2026-10-27 Nov 8, 2026
@bulbashenko
bulbashenko merged commit 184efdf into main Nov 8, 2026
17 of 18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release Release PR main -> production

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant