Oliver Davies
eeeb70df14
chore: allow for missing fields
2023-03-10 22:10:07 +00:00
Oliver Davies
8b2181525d
fix: automatically copy PHPUnit files
2023-03-09 11:51:44 +00:00
Oliver Davies
96a7cd3cef
ci: run PHPStan static analysis
2023-03-08 21:58:40 +00:00
Oliver Davies
484ff14d1f
ci: initial workflow
2023-03-08 21:57:39 +00:00
Oliver Davies
78411c319c
chore: fix PHPStan errors
2023-03-08 21:21:12 +00:00
Oliver Davies
0fcffc5d2f
feat: add "auto-generated" text to templates
...
Fixes #21
2023-03-08 21:13:28 +00:00
Oliver Davies
d04169a0d8
feat(justfile): add an install
recipe
...
Fixes #26
2023-03-08 21:08:56 +00:00
Oliver Davies
3449ec5390
feat: add a phpunit.xml.dist file for Drupal
...
Fixes #15
2023-03-03 21:59:26 +00:00
Oliver Davies
5f1c8afa9c
fix: include MySQL variables for Drupal
...
These environment variables are needed for the initial database to be
created for Drupal.
2023-03-03 21:54:15 +00:00
Oliver Davies
a5f5771317
fix: add /app/bin to PATH
...
Ensure that Drush and other vendor binaries will work if the vendor bin
path is changed to `/app/bin` as it is with LocalGov Drupal.
Refs #24
2023-03-03 21:52:05 +00:00
Oliver Davies
38cfb31b2a
chore: export DOCKER_UID
2023-03-03 21:46:06 +00:00
Oliver Davies
a70557d2d5
refactor: extract a configuration validator
2023-02-25 00:21:43 +00:00
Oliver Davies
46747d2bf8
feat: allow for disabling a justfile
...
Prevent generating a justfile by adding `justfile: false` to the
project's build.yaml file.
Refs: #18
2023-02-21 08:33:51 +00:00
Oliver Davies
fa1774b550
feat: create a justfile
...
Refs: #18
2023-02-21 08:33:45 +00:00
Oliver Davies
34810088c3
feat: add extra_files
...
Copy extra files into the image.
2023-02-20 23:00:22 +00:00
Oliver Davies
d66f34480a
feat: use a non-root Docker user
...
Create a non-root `app` user within Docker that maps to default user
(uid 1000) on Linux-based systems.
Refs #10
2023-02-19 13:00:06 +00:00
Oliver Davies
1fb75c9d93
feat: make the Drupal docroot configurable
...
Allow for setting a `docroot` directory for Drupal projects.
By default, I've set this to `web` as that's what the Drupal Composer
scaffold projects use, but other platforms such as Acquia Cloud hosting
use `docroot`.
This is how it can be configured in `build.yaml`:
```yaml
drupal:
docroot: docroot
```
Fixes #2
2023-02-19 13:00:06 +00:00
Oliver Davies
8e1d0bae84
Create README.md
2023-02-15 22:00:37 +00:00
Oliver Davies
cf7eb194f2
Delete build.yaml
2023-02-15 14:18:59 +00:00
Oliver Davies
142b95902d
build: add flake.nix
2023-02-15 13:59:26 +00:00
Oliver Davies
eb29d11134
feat: add Caddy as a web server
2023-02-14 20:14:43 +00:00
Oliver Davies
1d7f796538
feat: add extra hosts to the web service
2023-02-14 14:35:45 +00:00
Oliver Davies
dd68f6c03e
fix: ensure docker-entrypoint-php is executable
2023-02-14 11:22:30 +00:00
Oliver Davies
b258b3e034
feat(Dockerfile): allow adding extra directories
2023-02-14 10:41:51 +00:00
Oliver Davies
1e800c0a56
refactor: run each command in a separate layer
...
This makes it easier to debug from which command an error might be
coming from.
2023-02-14 10:41:08 +00:00
Oliver Davies
fa83cfee63
chore: add web
as an optional configuration key
2023-02-14 09:23:43 +00:00
Oliver Davies
acc3c0eda0
feat: add initial validation of build.yaml
2023-02-10 19:18:58 +00:00
Oliver Davies
f91262419e
fix: check for docker-compose
and dockerCompose
2023-02-10 19:16:04 +00:00
Oliver Davies
c92a59e9bd
refactor: rename variable
2023-02-03 22:04:20 +00:00
Oliver Davies
36b32b69cc
refactor: extract a method to generate files
2023-02-03 22:03:05 +00:00
Oliver Davies
8cbb834c33
fix: enum comparisons and check for null values
2023-02-03 22:02:25 +00:00
Oliver Davies
5ea7d312a6
refactor: extract helpers
2023-02-03 20:35:56 +00:00
Oliver Davies
ddb1bcd58d
feat: make the database
values configurable
...
- Allow for setting a database `type` and `version`.
- Don't add a `database` service to docker-compose.yaml if there is no
key within `docker-compose`.
Fixes #14
2023-02-03 20:13:28 +00:00
Oliver Davies
a9a4925515
fix: undefined array key web
2023-02-03 18:57:50 +00:00
Oliver Davies
35f4c2e44a
build: update the main and output filenames
2023-02-03 18:55:06 +00:00
Oliver Davies
b0238beb67
refactor: add an Enum for languages
2023-02-02 18:06:47 +00:00
Oliver Davies
4e861685d9
chore: group PHP-related templates
2023-02-02 00:40:42 +00:00
Oliver Davies
b1da05e9cf
Rename binary file and make it executable
2023-01-21 20:48:03 +00:00
Oliver Davies
83cb16a818
Rename files and update namespace
2023-01-21 20:42:52 +00:00
Oliver Davies
31600df9c3
Add nginx configuration files
2023-01-21 19:53:25 +00:00
Oliver Davies
43f27371e2
Fix missing dependencies on first load
2023-01-21 19:53:19 +00:00
Oliver Davies
f2e95f2b07
Rename the bin file
2023-01-21 19:52:04 +00:00
Oliver Davies
8837836d86
fix: Docker Compose configuration is an object
2023-01-21 12:28:02 +00:00
Oliver Davies
9c3e9a7819
Delete test.twig
2023-01-20 08:15:20 +00:00
Oliver Davies
24082ef007
Use build-config for build-config
2023-01-20 00:28:55 +00:00
Oliver Davies
de35314400
docs: Add language
to example build files
2023-01-19 22:40:49 +00:00
Oliver Davies
4a575c7d14
fix: Commands should be separated by newlines
2023-01-19 22:40:09 +00:00
Oliver Davies
076d994baf
build: Add PHPStan
2023-01-19 22:39:23 +00:00
Oliver Davies
b72f26b035
Remove the default option
2023-01-19 22:38:43 +00:00
Oliver Davies
2bc95de686
Make the configuration file configurable
2023-01-19 20:45:02 +00:00