{"id":38903300,"url":"https://github.com/ddev/ddev-upsun","last_synced_at":"2026-01-17T15:05:07.325Z","repository":{"id":310733639,"uuid":"1040999015","full_name":"ddev/ddev-upsun","owner":"ddev","description":"Experimental DDEV add-on to tightly integrate a project with an upstream Upsun site","archived":false,"fork":false,"pushed_at":"2025-12-01T18:10:49.000Z","size":36209,"stargazers_count":2,"open_issues_count":3,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-12-22T07:43:37.773Z","etag":null,"topics":["ddev-get"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ddev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"github":["ddev"],"custom":["https://www.paypal.com/donate/?hosted_button_id=MCNCSZHC7LHSQ","https://ddev.com/support-ddev/"]}},"created_at":"2025-08-19T20:34:22.000Z","updated_at":"2025-12-01T18:10:54.000Z","dependencies_parsed_at":"2025-08-19T23:31:06.691Z","dependency_job_id":"494b4510-a48a-4534-9105-6e8415240e63","html_url":"https://github.com/ddev/ddev-upsun","commit_stats":null,"previous_names":["rfay/ddev-upsun","ddev/ddev-upsun"],"tags_count":8,"template":false,"template_full_name":"ddev/ddev-addon-template","purl":"pkg:github/ddev/ddev-upsun","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ddev%2Fddev-upsun","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ddev%2Fddev-upsun/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ddev%2Fddev-upsun/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ddev%2Fddev-upsun/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ddev","download_url":"https://codeload.github.com/ddev/ddev-upsun/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ddev%2Fddev-upsun/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28510928,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T13:38:16.342Z","status":"ssl_error","status_checked_at":"2026-01-17T13:37:44.060Z","response_time":85,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ddev-get"],"created_at":"2026-01-17T15:05:03.613Z","updated_at":"2026-01-17T15:05:07.308Z","avatar_url":"https://github.com/ddev.png","language":"PHP","funding_links":["https://github.com/sponsors/ddev","https://www.paypal.com/donate/?hosted_button_id=MCNCSZHC7LHSQ","https://ddev.com/support-ddev/"],"categories":[],"sub_categories":[],"readme":"[![add-on registry](https://img.shields.io/badge/DDEV-Add--on_Registry-blue)](https://addons.ddev.com)\n[![tests](https://github.com/ddev/ddev-upsun/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/ddev/ddev-upsun/actions/workflows/tests.yml?query=branch%3Amain)\n[![last commit](https://img.shields.io/github/last-commit/ddev/ddev-upsun)](https://github.com/ddev/ddev-upsun/commits)\n[![release](https://img.shields.io/github/v/release/ddev/ddev-upsun)](https://github.com/ddev/ddev-upsun/releases/latest)\n\n# DDEV Upsun (EXPERIMENTAL)\n\n\u003e **Warning:** This add-on is experimental and under active development.\n## Overview\n\n[Upsun](https://upsun.com/) is a unified, secure, enterprise-grade platform for building, running and scaling web applications.\n\nThis repository provides experimental integration between your Upsun (Flex or Fixed/Platform.sh) project and [DDEV](https://ddev.com). It tries to  configure your DDEV project to match your Upsun platform configuration by parsing your `.upsun/config.yaml` (or `.platform.app.yaml`) configuration file and generating equivalent DDEV settings for local development.\n\n**🚨 This add-on is experimental and under active development. Please report issues and provide feedback!**\n\n## Using with an Upsun (Flex or Fixed) project\n\n### Dependencies\n\n* Make sure you have DDEV v1.24.8+ installed.\n* Your project should have a valid `.upsun/config.yaml` or `.platform.app.yaml` file.\n\n### Install\n1. Clone your project repository\n2. `cd` into your project directory\n3. Run `ddev config` and answer the questions as appropriate\n4. Run `ddev add-on get ddev/ddev-upsun`\n5. Run `ddev start`\n6. Run `ddev pull upsun` to retrieve a copy of the database and file mounts from your Upsun environment.\n\n### Upgrade\n\nTo upgrade your version of ddev-upsun, repeat the `ddev add-on get ddev/ddev-upsun` to get the latest release. To see the installed version, `ddev add-on list --installed`.\n\n### Run it again if you change your Upsun configuration\n\nIf you change your `.upsun/config.yaml` (or .platform.app.yaml/.platform), repeat the `ddev add-on get ddev/ddev-upsun` so that the generated DDEV configuration will be updated.\n\n## What does it do right now?\n\n* Works with Upsun php-based projects, for example `php:8.1`, `php:8.2`, `php:8.3`, or `php:8.4`. It has not been tested with non-PHP projects.\n* Takes your checked-out Upsun project and configures DDEV based on that information:\n    * PHP version mapping to DDEV equivalents\n    * Database services (MySQL, MariaDB, PostgreSQL)\n    * Basic environment variables and relationships\n    * A working `ddev pull upsun` integration\n* Supports the following services:\n    * **Databases**\n      * MariaDB\n      * MySQL\n      * PostgreSQL\n    * **Cache/Memory**\n      * Redis\n      * Memcached\n    * **Search**\n      * OpenSearch\n\n## What has been tested\n\nThese project types are included in the automated tests that run with every change:\n\n* **Drupal 11** - Extensive automated testing with three database types:\n  * [drupal11-mariadb](tests/testdata/drupal11-mariadb/)\n  * [drupal11-mysql](tests/testdata/drupal11-mysql/)\n  * [drupal11-postgres](tests/testdata/drupal11-postgres/)\n\nEach test configuration includes coverage for **Redis**, **OpenSearch**, and **Memcache** services.\n\n## What has NOT been tested yet\n\n* Multi-application Upsun projects\n* Frameworks other than Drupal (Laravel, Symfony, etc.)\n* Complex service relationships\n* Workers and cron jobs\n* Advanced Upsun features\n\n## Limitations\n\n* **Single-app projects only** - Multi-app configurations are not supported\n* **Basic service relationships** - Complex service relationships beyond single database are not translated\n* **No worker/cron translation** - Workers and cron jobs are not translated to DDEV equivalents\n* **Limited environment variables** - Only basic Upsun environment variables are mapped\n* **PHP projects only** - Non-PHP runtimes are not supported\n\n## Community feedback requested!\n\n**Your experience is important**: Please let us know about how it went for you here in the [issue queue](https://github.com/ddev/ddev-upsun/issues) or in any of the [DDEV support venues](https://ddev.readthedocs.io/en/stable/users/support/), especially [Discord](https://discord.gg/5wjP76mBJD).\n\nWe're particularly interested in:\n\n* Which project types and frameworks you'd like to see supported\n* What Upsun services and features are most important for your workflow\n* Any issues or edge cases you encounter\n* Success stories and improvements\n\n## Notes\n\n* If your local project has a different database type than the upstream (Upsun) database, it will conflict, so please back up your database with `ddev export-db` and `ddev delete` before starting the project with new configuration based on upstream.\n* This add-on is based on lessons learned from [ddev-platformsh](https://github.com/ddev/ddev-platformsh) but adapted for Upsun's configuration format, and using the new DDEV [PHP-based actions](https://docs.ddev.com/en/stable/users/extend/creating-add-ons/#action-types-bash-vs-php) add-on technique. \n* PRs are welcome! The code here is mostly in PHP and is easier to understand than the ddev-platformsh code.\n\n## What will it do in the future\n\n- [x] Basic PHP project support with database configuration\n- [x] Drupal 11 testing\n- [x] Support Upsun-Fixed (Platform.sh-style) configuration, `.platform.app.yaml` files\n- [ ] Additional Upsun service support (`elasticsearch-enterprise`, etc.)\n- [ ] Service **version specification** support (e.g., `redis:8`) passed to DDEV add-ons\n- [ ] Laravel project support and testing\n- [ ] Symfony project support and testing\n- [ ] WordPress project support and testing\n- [ ] Multi-app project support\n- [ ] Worker and cron job translation\n- [ ] Enhanced service relationship mapping\n\n**Let us know what's important to you on [Discord](https://ddev.com/s/discord) and in the issue queue here!**\n\n**Maintained by [@rfay](https://github.com/rfay)**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fddev%2Fddev-upsun","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fddev%2Fddev-upsun","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fddev%2Fddev-upsun/lists"}