Commit Graph

423 Commits

Author SHA1 Message Date
Fernando Álvarez 662798801b Add sc-chi and df-ams app and lb nodes to Production config 2025-10-15 12:24:45 +02:00
Mike Dalessio ffc0c86f36 Minio support in development
for when we need to debug direct upload problems
2025-10-14 19:11:50 -04:00
Matthew Kent 30a4b2d721 Mount our backup vol. 2025-10-14 11:56:00 -07:00
Fernando Álvarez ad3a16f8e6 Add reader nodes to Staging 2025-10-13 19:35:11 +02:00
Fernando Álvarez b682427df7 Add AMS to Staging 2025-10-13 18:00:00 +02:00
Stanko K.R. b016bd7cae Fix replicaiton wiht the untenanted DB 2025-10-13 14:09:37 +02:00
Stanko K.R. d3816bc212 Create testbed to test beamer scenarios in Fizzy 2025-10-13 13:46:00 +02:00
Jeremy Daer b8f09b7f75 Deploy to fully-qualified domain names to eliminate DNS search path driven query amplification (#1293) 2025-10-11 15:57:47 -07:00
Mike Dalessio 28e9b4a496 Fix recurring job config for webhook cleanup 2025-10-11 13:57:19 -04:00
Mike Dalessio 4f981e9c2f Add yabeda-actioncable metrics 2025-10-11 13:35:31 -04:00
Mike Dalessio 5c651a7f94 Tidy recurring.yml 2025-10-11 13:23:25 -04:00
Mike Dalessio b9a616b083 Increase the number of job workers to match CPUs
JOB_CONCURRENCY would still override this number.
2025-10-11 11:29:21 -04:00
Mike Dalessio 550a4b7c33 Don't set puma performance settings in dev 2025-10-10 16:53:52 -04:00
Mike Dalessio 257aeb8511 GC: Defer major GC cycles until after request handling completes 2025-10-10 16:49:01 -04:00
Mike Dalessio fb45b9d366 Install Autotuner for GC recommendations 2025-10-10 15:49:48 -04:00
Mike Dalessio 016f00dfb5 Call Process.warmup 2025-10-10 15:17:13 -04:00
Mike Dalessio ba090196d8 Baseline puma worker/thread config
Because we expect fewer I/O waits than Rails apps that connect to the
database over the network, let's start with a baseline config of 1
worker per CPU, 1 thread per worker and tune it from there.

https://edgeguides.rubyonrails.org/tuning_performance_for_deployment.html#puma
2025-10-10 15:00:03 -04:00
Mike Dalessio c368485e84 db: Add beamer to the untenanted database 2025-10-10 11:43:07 -04:00
Mike Dalessio 3399e45130 Introduce an "Identity" model to ease login
- New untenanted Identity and Membership models
- New `identity_token` cookie with path "/" holds state across tenants

We're not sure whether the untenanted database will be sqlite or
MySQL, and so I've been careful to minimize

- database reads, placing them behind etags and caching
- database writes, only writing when a new Session is created (login)

Note that we track two things in the identity_token cookie: a signed
id, and the updated_at for the underlying Identity object. This allows
us to effectively cache on the Identity without having to hit the
database, by using an Identity::Mock object that is compatible with
etag and cache methods.

The new integration test shows the desired user-facing behavior, which
is to make it easy to login without a tenanted URL and to jump between
tenants.

- the untenanted "login_help" page shows all linked memberships
- the jump menu shows all linked memberships (except the current)

Also introduced a utility script to populate existing employee
Identities, grouping accounts by email address.
2025-10-10 10:12:25 -04:00
Jeremy Daer a798cc445c Prom metrics in dev (#1269) 2025-10-08 14:06:28 -07:00
Jorge Manrubia 59db345484 Don't lose existing values in case they had been set 2025-10-07 09:42:25 +02:00
Jorge Manrubia fe559cbca0 Brakeman ignore 2025-10-07 09:00:07 +02:00
Mike Dalessio 9bfd21c096 ci: remove outdated ignores from brakeman config 2025-10-07 00:16:47 -04:00
Mike Dalessio 8e0cb930af Delete SignalId concerns from the codebase
including Signup for now, will rebuild it with just QB
2025-10-03 14:06:51 -04:00
Lewis Buckley ad1960cd63 Cleanup OTel collector now it's moved to host 2025-10-03 15:06:42 +01:00
Lewis Buckley 72191b3fa8 Enable OTel scraping for the load balancers 2025-10-03 15:00:06 +01:00
Lewis Buckley 595afc00d6 Enable OTel scrapes for beta and production too 2025-10-03 14:36:51 +01:00
Lewis Buckley 5da5253cec Merge branch 'main' into config-otel-collector-with-labels
* main: (31 commits)
  Remove overflow from columns
  Only reverse Watching button if icon_only
  Move video captions below content
  Account#slug uses the virtual "tenant" attribute
  Rename LOCAL_AUTHENTICATION to OSS_CONFIG
  Add a script to generate unique passwords per email address
  Visually hide the pagination indicator
  Use hide avatars from tabindex on preview
  Render a helpful menu of tenants temporarily
  Remove code related to Launchpad auth or 37id Users
  Formatting
  Fix missing close bracket from merge
  Reverse involvement buttons if watching
  Only render the manifest link for tenanted URLs
  Move load-balancer to fizzy-lb-101
  Add otel_collector accessory for load balancer
  Fix: this was getting idiomorph confused as it was being invoked on many subtree elements
  Fix: deselect collections in the collections filter
  Wire up collection filtering: it should be performed in the generic cards view
  Remove falling back status that we don't support anymore
  ...
2025-10-03 13:39:20 +01:00
Mike Dalessio 320558919c Rename LOCAL_AUTHENTICATION to OSS_CONFIG 2025-10-02 16:44:24 -04:00
Lewis Buckley 05b7b15da2 Enable beamer scrape too 2025-10-02 17:02:35 +01:00
Lewis Buckley 4a6a6f4792 Prefix labels to avoid reserved labels role / service 2025-10-02 16:51:40 +01:00
Lewis Buckley 8e9efc4f91 Use labels so the OTel collector on the host can scrape containers 2025-10-02 16:44:17 +01:00
Fernando Álvarez 013f83b94a Move load-balancer to fizzy-lb-101 2025-10-02 17:40:57 +02:00
Fernando Álvarez c6893dcae8 Add otel_collector accessory for load balancer 2025-10-02 17:40:57 +02:00
Fernando Álvarez b7b5bcc7b9 Move load-balancer to fizzy-beta-lb-01 2025-10-01 19:00:31 +02:00
Fernando Álvarez 2172ccfd78 Move load-balancer to fizzy-staging-lb-01 2025-10-01 17:32:31 +02:00
Jorge Manrubia ea03116ad0 Remove unused job 2025-09-29 18:53:01 +02:00
Jorge Manrubia fffdb623c1 Merge main into collapsing-columns branch
Resolved conflict in card-columns.css by keeping both changes:
- Added padding-inline for non-collapsed cards from collapsing-columns
- Kept bubble positioning, hover effects, and card steps from main
2025-09-29 14:03:59 +02:00
Jorge Manrubia 1bb8de8564 Fix tests 2025-09-29 13:13:40 +02:00
Jorge Manrubia e14262dc01 Fix tests, remove workflow controllers 2025-09-28 18:50:26 +02:00
Jorge Manrubia 4103e0c346 Adapt public collections/cards to the new columns model 2025-09-28 18:33:06 +02:00
Jorge Manrubia 5a7fa4e239 Drop cards in specific columns 2025-09-26 13:14:21 +02:00
Jorge Manrubia 5ee93fea5e Drop into the done column 2025-09-26 13:01:29 +02:00
Jorge Manrubia 57b00b6402 Drop into the stream working 2025-09-26 12:47:12 +02:00
Jorge Manrubia d7ef9749c0 Remove old drop controller 2025-09-26 12:33:29 +02:00
Jorge Manrubia aa9d7664ef Move cards to different columns from the perma 2025-09-26 11:14:02 +02:00
Jorge Manrubia 26e5e6ae9e Render a collection resource (WIP) 2025-09-25 16:12:17 +02:00
Jorge Manrubia 2f6a639682 Prepare entropy code for the new auto postpone approach 2025-09-24 16:22:42 +02:00
Lewis Buckley 714cea5d34 Merge pull request #1160 from basecamp/collect-beamer-metrics
Collect Beamer metrics
2025-09-24 11:49:40 +01:00
Mike Dalessio 1a97cd300e Add a few more Yabeda modules 2025-09-23 17:15:52 -04:00