You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 6d85160
Browse filesBrowse the repository at this point in the historyBrowse files
# Terraform tests (plan-level, no real infrastructure)
35
+
terraform -chdir=drupal-core test
36
+
terraform -chdir=drupal-contrib test
37
+
```
38
+
39
+
`terraform fmt -recursive` must be run from the repo root. It is non-destructive (rewrites in place) and the CI check fails with exit code 3 if any file is not formatted.
40
+
22
41
## Working with Coder Workspaces via SSH
23
42
24
43
After running `coder config-ssh --yes`, workspaces are available as SSH hosts named `<workspace>.coder`. Use `scp` to copy files in or out, then `ssh` to execute scripts non-interactively:
@@ -39,6 +58,10 @@ ssh mp1.coder ddev list
39
58
40
59
When running commands via `coder ssh -- ...` or piped heredocs, the PTY allocation causes interactive prompts and pipe-stall issues. Writing a script to `/tmp/` and executing it via `ssh workspace.coder bash /tmp/script.sh` is reliable for multi-step operations.
41
60
61
+
**CI scripting rule**: In GitHub Actions, for any `coder ssh` invocation that does more than a single trivial command, push a script file and run it — do not use `bash -c "..."`. Single commands with standard flags (e.g. `git -C /path branch --show-current`) are fine inline. Anything with `&&`, conditionals, or multiple statements belongs in a script file under the template's `scripts/` directory.
62
+
63
+
To run a command in a specific directory without a shell wrapper, use `env -C <dir> <cmd>` (available on Ubuntu 24.04 via GNU coreutils): `coder ssh ws -- env -C /home/coder/myproject ddev drush status`
push-template-drupal-core: ## Push drupal-core template to Coder
168
171
$(call push_template,drupal-core)
169
172
173
+
.PHONY: push-template-drupal-contrib
174
+
push-template-drupal-contrib: ## Push drupal-contrib template to Coder
175
+
$(call push_template,drupal-contrib)
176
+
170
177
.PHONY: push-template-freeform
171
178
push-template-freeform: ## Push freeform template to Coder
172
179
$(call push_template,freeform)
173
180
174
181
.PHONY: push-all-templates
175
-
push-all-templates: push-template-user-defined-web push-template-drupal-core push-template-freeform ## Push all templates to Coder (no image build)
182
+
push-all-templates: push-template-user-defined-web push-template-drupal-core push-template-drupal-contrib push-template-freeform ## Push all templates to Coder (no image build)
-**Issue Picker**: [start.coder.ddev.com/drupal-issue](https://start.coder.ddev.com/drupal-issue) — paste any drupal.org issue URL to launch a workspace with the issue branch pre-checked-out
126
+
-**Issue Picker**: [start.coder.ddev.com/drupal-issue](https://start.coder.ddev.com/drupal-issue) — paste any drupal.org issue URL; the picker auto-detects core vs. contrib and routes to the right template
127
127
-**Includes**:
128
128
- Pre-cloned Drupal core (main branch by default)
129
129
- Issue fork checkout with automatic Composer dependency resolution (Drupal 10, 11, and 12/main)
@@ -136,20 +136,43 @@ Fully automated Drupal core development environment, including issue fork suppor
136
136
coder create --template drupal-core my-drupal-dev
137
137
```
138
138
139
+
### drupal-contrib (Drupal Contrib Development)
140
+
141
+
Automated environment for developing Drupal contrib modules and themes, with optional issue branch support.
142
+
143
+
-**Setup**: Automatic (module/theme cloned, Drupal installed as dev dependency via `ddev-drupal-contrib`, ~5-10 min)
144
+
-**Use Case**: Contrib module/theme development, issue queue work on any drupal.org project
145
+
-**Template Directory**: `drupal-contrib/`
146
+
-**Issue Picker**: [start.coder.ddev.com/drupal-issue](https://start.coder.ddev.com/drupal-issue) — paste a drupal.org issue or project URL; auto-detects contrib
147
+
-**Includes**:
148
+
- Any drupal.org project cloned (modules and themes)
149
+
- Issue fork checkout via `issue_fork` + `issue_branch` parameters
0 commit comments