Skip to content

Modernize development environment setup#5005

Draft
johha wants to merge 1 commit intomainfrom
improved-dev-setup
Draft

Modernize development environment setup#5005
johha wants to merge 1 commit intomainfrom
improved-dev-setup

Conversation

@johha
Copy link
Copy Markdown
Contributor

@johha johha commented Apr 8, 2026

This overhaul simplifies and unifies the local and devcontainer development
experience with consistent tooling and clearer documentation.

Key changes:

Scripts (all prefixed with cc-):

  • cc-containers: Manage Docker containers with profiles (dev, s3, full)
  • cc-db-env: Configure database environment variables for CC or tests
  • cc-config: Generate cloud_controller.yml for different blobstore modes
  • cc-db-setup-fresh: Drop and recreate all databases
  • cc-setup-ide: Copy IDE configs (VS Code, IntelliJ)
  • cc-devcontainer-setup: One-time setup for devcontainer/codespaces
  • cc-install-storage-cli: Install storage-cli for S3 blobstore testing

Docker Compose:

  • Add profiles: dev, s3, broker, diego, full
  • Add SeaweedFS for S3-compatible blobstore testing (local only)
  • Separate nginx configs for local vs devcontainer (different upstreams)
  • Use docker-outside-of-docker feature for devcontainer

Configuration:

  • Replace vcap.me with 127.0.0.1.nip.io (vcap.me no longer resolves)
  • Support local-temp-storage, local, and storage-cli blobstore modes
  • Consistent COMPOSE_PROJECT_NAME to avoid container conflicts

IDE configs:

  • Update IntelliJ run configs with STORAGE_CLI_PATH
  • Rename Mariadb configs to Mysql
  • Add VS Code extensions.json

Documentation:

  • Rewrite README with quick start for both devcontainer and local
  • Document all helper scripts and their usage
  • Add credentials and ports reference
  • I have reviewed the contributing guide

  • I have viewed, signed, and submitted the Contributor License Agreement

  • I have made this pull request to the main branch

  • I have run all the unit tests using bundle exec rake

  • I have run CF Acceptance Tests

@johha johha force-pushed the improved-dev-setup branch 3 times, most recently from 53411ff to f1dabd2 Compare April 9, 2026 08:14
  This overhaul simplifies and unifies the local and devcontainer development
  experience with consistent tooling and clearer documentation.

  Key changes:

  Scripts (verb-first naming convention):
  - cc-containers: Manage Docker containers with profiles (dev, s3, full)
  - cc-db-env: Set DB_CONNECTION_STRING and CLOUD_CONTROLLER_NG_CONFIG
    Usage: eval "$(cc-db-env psql ccdb)" or eval "$(cc-db-env mysql test)"
  - cc-generate-config: Generate cloud_controller.yml with optional custom name
    Modes: local-temp-storage, local, storage-cli
  - cc-reset-db: Drop and recreate all databases
  - cc-setup-devcontainer: One-time setup for devcontainer/codespaces
  - cc-setup-ide: Copy IDE configs (VS Code, IntelliJ)
  - cc-install-storage-cli: Install storage-cli for S3 blobstore testing

  Docker Compose:
  - Add profiles: dev, s3, broker, diego, full
  - Add SeaweedFS for S3-compatible blobstore testing (local only)
  - Separate nginx configs for local vs devcontainer (different upstreams)
  - Use docker-outside-of-docker feature for devcontainer
  - Consistent COMPOSE_PROJECT_NAME to avoid container conflicts

  Configuration:
  - Generated configs use 127.0.0.1.nip.io (vcap.me no longer resolves)
  - Support local-temp-storage, local, and storage-cli blobstore modes
  - Custom config names for running multiple CC instances

  IDE configs:
  - Update IntelliJ run configs with STORAGE_CLI_PATH
  - Rename Mariadb configs to Mysql
  - Add VS Code extensions.json
  - Auto-copy run configs in devcontainer

  Documentation:
  - Rewrite README with quick start for both devcontainer and local
  - Document all helper scripts and environment variables
  - Keep detailed test configuration docs (DB_CONNECTION_STRING, etc.)
  - Add brew database option and ports reference

  Removes: devenv.sh, codespaces_*.sh, setupDevelopmentEnvironment.sh
@johha johha force-pushed the improved-dev-setup branch from f1dabd2 to 7564f05 Compare April 10, 2026 13:22
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.

1 participant