Skip to content

[mcp-stress-test] Stress test blocked - Network restrictions prevent Go module downloads #624

@github-actions

Description

@github-actions

The nightly MCP stress test cannot run due to network restrictions in the GitHub Actions environment that prevent downloading Go dependencies.

Issue Summary

  • Test Session: stress-test-20260204-030955
  • Status: ❌ CRITICAL - Complete test blockage
  • Failure Type: Build Environment / Network Configuration

Problem

All attempts to build the awmg gateway binary fail with HTTP 403 Forbidden errors when downloading Go modules:

github.com/stretchr/testify@v1.11.1: Get "(proxy.golang.org/redacted) Forbidden
golang.org/x/term@v0.38.0: Get "(proxy.golang.org/redacted) Forbidden
golang.org/x/oauth2@v0.30.0: Get "(proxy.golang.org/redacted) Forbidden

Attempted workarounds:

  • ✗ Standard make build
  • GOPROXY=direct go build
  • go mod download

All fail with 403 Forbidden responses from both proxy.golang.org and direct sources.

Impact

Without the ability to build the gateway, the stress test cannot:

  • Start the MCP Gateway server
  • Test any of the 20 configured MCP servers
  • Generate compatibility reports
  • Identify authentication requirements
  • Validate gateway stability

This blocks the entire purpose of the nightly stress test workflow.

Recommended Solutions

Option A: Pre-build Binary (Recommended)

Build the binary in a separate job with network access, then pass it to the test job:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-go@v5
        with:
          go-version: '1.25.0'
      - name: Build gateway
        run: make build
      - name: Upload binary
        uses: actions/upload-artifact@v4
        with:
          name: awmg-binary
          path: ./awmg
          retention-days: 1
          
  stress-test:
    needs: build
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/download-artifact@v4
        with:
          name: awmg-binary
      - name: Make binary executable
        run: chmod +x ./awmg
      - name: Run stress test
        run: |
          # Test now uses pre-built ./awmg binary
          ./awmg --config /tmp/mcp-stress-test-config.json

Option B: Vendor Dependencies

Commit all Go dependencies to the repository:

go mod vendor
git add vendor/
git commit -m "Add vendored dependencies for offline builds"

Update Makefile to use vendor:

build:
	go build -mod=vendor -o awmg .

Option C: Fix Network Access

Contact GitHub Actions infrastructure team to:

  • Allow access to proxy.golang.org
  • Allow access to Go module sources (github.com, golang.org)
  • Review firewall/proxy rules blocking Go module downloads

Test Configuration

The stress test configuration was successfully prepared with 20 MCP servers before the build failure:

  • ✅ Test session: stress-test-20260204-030955
  • ✅ Config file: /tmp/mcp-stress-test-config.json
  • ✅ API key generated
  • ✅ 20 MCP servers configured (github, filesystem, memory, sqlite, postgres, brave-search, fetch, puppeteer, slack, gdrive, google-maps, everart, sequential-thinking, aws-kb-retrieval, linear, sentry, raygun, git, time, axiom)
  • Gateway build failed - blocking all testing

Next Steps

  1. Choose and implement one of the solutions above
  2. Test that make build succeeds in the workflow environment
  3. Re-run the nightly stress test
  4. Verify all 20 servers can be tested

Priority

HIGH - This completely blocks the nightly stress test workflow. The workflow cannot provide any value until the build environment is fixed.


Generated by Nightly MCP Stress Test
Session: stress-test-20260204-030955

AI generated by Nightly MCP Server Stress Test

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions