Skip to content

docs: add Cursor Cloud dev environment setup instructions to AGENTS.md#5617

Draft
fabio-silva wants to merge 1 commit into
mainfrom
cursor/setup-dev-environment-59a4
Draft

docs: add Cursor Cloud dev environment setup instructions to AGENTS.md#5617
fabio-silva wants to merge 1 commit into
mainfrom
cursor/setup-dev-environment-59a4

Conversation

@fabio-silva

@fabio-silva fabio-silva commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Disclaimer: this PR was fully written by AI

What

Adds a ## Cursor Cloud specific instructions section to AGENTS.md capturing the non-obvious, durable steps for bringing up the PMM development environment in a Cloud Agent VM. No product code is changed.

Why

Setting up PMM for development surfaced several gotchas that aren't documented elsewhere and would trip up future agents:

  • The dev environment is a single "fat" Docker container (perconalab/pmm-server:3-dev-container) running all server components under supervisord; binaries are rebuilt on the host bind mount and hot-swapped.
  • Use .env.dev.example (dev image + toolchain), not .env.example (release image).
  • The run-* / init / check / build-ui targets must run as root in the container (make env-root TARGET=...) — the default pmm user can't write to /usr/sbin or the root-owned Go module cache volume.
  • Git "dubious ownership" on the bind mount must be cleared inside the container before building.
  • go.mod pins a newer Go than the image ships; Go auto-downloads the toolchain (works as root).
  • golangci-lint is not preinstalled (make env-root TARGET=init).
  • Node/Yarn are missing from the dev image and must be installed in the container for UI dev.

Verification

Brought the full environment up and exercised it end-to-end:

  • make env-up — container healthy; all supervisord services running.
  • Rebuilt pmm-managed from source and hot-swapped it (run-managed-ci); /v1/server/version reports the git commit as managed.full_version.
  • make check (buf lint + golangci-lint + go-sumtype): 0 issues.
  • make test-common: all packages ok.
  • build-ui: UI built with yarn and deployed into Grafana.
  • Hello-world: logged into the UI (admin/admin) and added a monitored PostgreSQL service hello-world-postgres; its postgres_exporter is AGENT_STATUS_RUNNING.

pmm_add_postgresql_service.mp4

Adding a monitored PostgreSQL service through the freshly-built backend and UI.

Inventory showing hello-world-postgres
PMM home dashboard

To show artifacts inline, enable in settings.

Open in Web Open in Cursor 

Co-authored-by: Fábio Silva <fabio-silva@users.noreply.github.com>
@it-percona-cla

Copy link
Copy Markdown
Contributor

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@codecov

codecov Bot commented Jul 8, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 43.60%. Comparing base (31318c7) to head (acdb4ea).
⚠️ Report is 10 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #5617   +/-   ##
=======================================
  Coverage   43.59%   43.60%           
=======================================
  Files         415      415           
  Lines       43134    43133    -1     
=======================================
+ Hits        18804    18806    +2     
+ Misses      22454    22452    -2     
+ Partials     1876     1875    -1     
Flag Coverage Δ
admin 34.78% <ø> (ø)
agent 49.04% <ø> (ø)
managed 42.99% <ø> (+<0.01%) ⬆️
vmproxy 72.22% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants