mirror of
https://github.com/mattermost/mattermost.git
synced 2026-05-28 04:35:04 -04:00
Restore the `fullyparallel: false` override for the unsharded `Postgres with binary parameters` and `Postgres FIPS` jobs in the weekly workflow. The override was originally added to the binary parameters job in #35995 to prevent resource exhaustion on a single runner, but was dropped when both jobs moved into server-ci-weekly.yml in #36036, leaving them on the template default of `true`. Without it, the hosted runner is overwhelmed (too many server instances, WebSocket hubs, and DB connections) and the runner agent itself loses communication with GitHub mid-run, surfacing as "hosted runner lost communication with the server" at ~55-60 min into the Run Tests step. Both runs on April 27 and May 4 failed this way; the sharded FIPS variant retained for FIPS-touching PRs in server-ci.yml is unaffected because each shard handles only a fraction of the packages. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
81 lines
2.9 KiB
YAML
81 lines
2.9 KiB
YAML
# Weekly Server CI jobs that don't need to run on every push/PR.
|
|
# These are important for compliance and compatibility but have low
|
|
# regression rates, so running them weekly saves significant 8-core
|
|
# runner capacity (9 fewer concurrent 8-core jobs per master push).
|
|
#
|
|
# Schedule: Monday ~1am ET (5am UTC)
|
|
#
|
|
# Jobs moved here from server-ci.yml:
|
|
# - Postgres with binary parameters (1x 8-core)
|
|
# - Postgres FIPS unsharded (1x 8-core) — sharded runs stay in server-ci.yml for PR iteration
|
|
# - mmctl FIPS tests (1x 8-core)
|
|
name: Server CI Weekly
|
|
on:
|
|
schedule:
|
|
- cron: "0 5 * * 1" # Monday 5am UTC (~1am ET)
|
|
push:
|
|
branches:
|
|
- 'release-*'
|
|
workflow_dispatch: # Allow manual trigger for urgent FIPS/binary verification
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
go:
|
|
name: Compute Go Version
|
|
runs-on: ubuntu-22.04
|
|
outputs:
|
|
version: ${{ steps.calculate.outputs.GO_VERSION }}
|
|
steps:
|
|
- name: Checkout mattermost project
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- name: Calculate version
|
|
id: calculate
|
|
working-directory: server/
|
|
run: echo GO_VERSION=$(cat .go-version) >> "${GITHUB_OUTPUT}"
|
|
|
|
test-postgres-binary:
|
|
name: Postgres with binary parameters
|
|
needs: go
|
|
uses: ./.github/workflows/server-test-template.yml
|
|
secrets: inherit
|
|
with:
|
|
name: Postgres with binary parameters
|
|
datasource: postgres://mmuser:mostest@postgres:5432/mattermost_test?sslmode=disable&connect_timeout=10&binary_parameters=yes
|
|
drivername: postgres
|
|
logsartifact: postgres-binary-server-test-logs
|
|
go-version: ${{ needs.go.outputs.version }}
|
|
fips-enabled: false
|
|
# Unsharded run on a single 8-core runner: fullyparallel=true causes
|
|
# resource exhaustion (too many server instances, WebSocket hubs, and
|
|
# DB connections) and crashes the hosted runner. See #35995.
|
|
fullyparallel: false
|
|
|
|
test-postgres-normal-fips:
|
|
name: Postgres FIPS
|
|
needs: go
|
|
uses: ./.github/workflows/server-test-template.yml
|
|
secrets: inherit
|
|
with:
|
|
name: Postgres FIPS
|
|
datasource: postgres://mmuser:mostest-fips-test@postgres:5432/mattermost_test?sslmode=disable&connect_timeout=10
|
|
drivername: postgres
|
|
logsartifact: postgres-server-fips-test-logs
|
|
go-version: ${{ needs.go.outputs.version }}
|
|
fips-enabled: true
|
|
# Unsharded run on a single 8-core runner: see note on test-postgres-binary.
|
|
fullyparallel: false
|
|
|
|
test-mmctl-fips:
|
|
name: Run mmctl tests (FIPS)
|
|
needs: go
|
|
uses: ./.github/workflows/mmctl-test-template.yml
|
|
secrets: inherit
|
|
with:
|
|
name: mmctl
|
|
datasource: postgres://mmuser:mostest-fips-test@postgres:5432/mattermost_test?sslmode=disable&connect_timeout=10
|
|
drivername: postgres
|
|
logsartifact: mmctl-fips-test-logs
|
|
go-version: ${{ needs.go.outputs.version }}
|
|
fips-enabled: true
|