Commit graph

87 commits

Author SHA1 Message Date
Oliver Davies acd73bcb4f chore(git): change placeholder to Refs:
This is more inline with the conventional commits approach and
encourages it to be replaced manually if not being done with commit
hooks.
2023-08-26 22:27:00 +01:00
Oliver Davies ac854bf8c7 feat(git): automatically add refs to commit
...messages

Add a `prepare-commit-msg` hook to automaically add `Refs` values, such
as issue IDs or commit SHAs to a Git commit message body by replacing an
`ISSUE_ID` placeholder that can be added to a commit message template.
2023-08-26 22:19:35 +01:00
Oliver Davies 17142d868f feat(github-actions): run tests first
The tests are the most valuable part of the CI pipeline, so these should
be run first.

If a PHPCS or PHPStan error occurs but the tests pass, we know the
functionality works and the error can be addressed.

If a test fails, the CI pipeline will fail sooner.

In the future, the tasks could be split into separate jobs though it
would need to be done in a way that doesn't add a lot of repetition.

Refs: OD-41
2023-08-19 08:40:15 +01:00
Oliver Davies c68bca3d56 chore: rename drupal-project to drupal 2023-07-22 10:40:02 +01:00
Oliver Davies 22e5e7aed5 ci: create the traefik network 2023-06-27 21:35:58 +01:00
Oliver Davies ca2b0731e5 fix(docker-compose): set network as external 2023-06-27 21:20:59 +01:00
Oliver Davies 99ffb87446 feat(flake): generate nix.flake instead of Docker
...files if a `flake` key exists in a `build.yaml` file.

Refs: OD-37
2023-06-27 17:29:59 +01:00
Oliver Davies db76011b91 fix(docker-compose): remove empty anchors 2023-06-11 01:07:30 +01:00
Oliver Davies 7af6ec5d8a fix: use Traefik with PHP Apache images 2023-06-05 23:02:01 +01:00
Oliver Davies 1c7f1f2e2b feat(php): make ini values configurable
Refs: OD-28
2023-06-05 22:01:10 +01:00
Oliver Davies b121f2fb77 fix: jpg support for image styles 2023-06-05 21:51:31 +01:00
Oliver Davies 590cb8ffc0 feat(justfile): add test-watch recipe
Automatically re-run tests when files change using nodemon.
2023-05-11 20:50:44 +01:00
Oliver Davies 34e85ccdb4 fix(justfile): running tests in Drupal 2023-05-09 20:24:21 +01:00
Oliver Davies 6531efe56e fix: indentation error 2023-05-09 20:09:12 +01:00
Oliver Davies 0cd35db6db fix: only generate a web service if it's
...included in the `services` list in `build.yaml`.
2023-05-09 19:40:43 +01:00
Oliver Davies 1e9fcc8a75 refactor!: change services into a list of names
Previously:

```yaml
docker-compose:
  services:
    database: ~
    php:
      build:
        target: build
```

Now:

```yaml
docker-compose:
  services:
    - database
    - php
```
2023-05-09 19:13:32 +01:00
Oliver Davies 356b97cbde refactor(docker-compose): simplify the build
...stage

Hard-code more of these values as they're the same for all projects.
2023-05-02 22:55:30 +01:00
Oliver Davies 830c37c681 fix: add missing managed text 2023-04-24 23:00:25 +01:00
Oliver Davies 2afdf43cd2 feat: add and enable pre-push Git hooks 2023-04-24 22:54:34 +01:00
Oliver Davies c419332bad fix: incorrect directory name 2023-04-24 20:30:34 +01:00
Oliver Davies 2a9d4ca7b4 feat(justfile): add start and stop recipes 2023-04-24 20:26:34 +01:00
Oliver Davies fc87a82688 fix: only add if CI config is generated 2023-04-24 19:41:23 +01:00
Oliver Davies 4af661bad4 fix(phpcs): Drupal standard missing if standards
...are empty
2023-04-23 20:47:08 +01:00
Oliver Davies e715496e76 feat(phpstan): include baseline file 2023-04-23 20:15:08 +01:00
Oliver Davies a947001772 fix(phpcs): duplicate Drupal rule 2023-04-23 20:14:04 +01:00
Oliver Davies c6fe47aff2 feat(phpcs): run in CI 2023-04-23 19:19:04 +01:00
Oliver Davies 315890165c fix(phpstan): increase memory limit 2023-04-23 19:18:49 +01:00
Oliver Davies e67a7180a7 feat(phpcs): add rule overrides 2023-04-23 17:37:27 +01:00
Oliver Davies d1be2d631b fix(phpcs): incorrect rule formatting 2023-04-23 17:20:21 +01:00
Oliver Davies 3b0fc2c8a0 fix(phpcs): incorrect rule formatting 2023-04-23 17:16:32 +01:00
Oliver Davies 642b479934 fix(phpstan): correct key 2023-04-21 23:22:17 +01:00
Oliver Davies d9cdc2bac6 fix(phpstan): ignore test files by default 2023-04-21 23:14:56 +01:00
Oliver Davies 0165029423 feat: run PHPStan in CI if enabled 2023-04-21 21:30:57 +01:00
Oliver Davies 02c8b41194 feat: generate GitHub Actions configuration
Generate a GitHub Actions workflow file if a project is opted-in for
this feature.

Refs: OD-29
2023-04-21 01:39:43 +01:00
Oliver Davies fb63a6c245 feat: opt-in to the new database credentials
Allow for changing the default database name, username and password from
`drupal` to `app` by enabling the
`experimental.useNewDatabaseCredentials` feature flag in a project's
`build.yaml` file.

Refs: OD-27
2023-04-16 21:21:40 +01:00
Oliver Davies 96fba34f4a fix(phpunit): not strict about output during tests 2023-04-12 23:05:29 +01:00
Oliver Davies 53765e6048 fix(phpunit): XML parse error 2023-04-12 22:49:45 +01:00
Oliver Davies 1819fa9a97 refactor(justfile): split onto multiple lines 2023-04-12 22:45:56 +01:00
Oliver Davies 1303656f4a fix(justfile): remove hard-coded service name
Add the service name as a parameter and include it from the `phpunit`
recipe.
2023-04-12 22:36:27 +01:00
Oliver Davies 5c6e25a660 feat(justfile): add phpunit recipe
Add a `phpunit` recipe for running PHPUnit tests, with a `test` alias
that could later be used for running Pest in PHP projects or Jest in a
node project.
2023-04-12 22:21:46 +01:00
Oliver Davies d45d0d6616 refactor(justfile): add a run recipe 2023-04-12 22:20:19 +01:00
Oliver Davies 9657ad693e fix: XML error
> XML declaration allowed only at the start of the document
2023-04-11 00:36:02 +01:00
Oliver Davies 4d034d9ba2 feat: allow for adding extra databases
Allow for declaring extra databases that should be created when the
project is first started. This is done by adding an `extra_databases`
key to `database`, containing a list of database names.

```yaml
database:
  type: mariadb
  version: 10
  extra_databases:
    - tinhat
    - freshcover
```
2023-04-07 08:40:42 +01:00
Oliver Davies 692151d26c fix: Docker Compose YAML error
Implement the fix from
https://github.com/docker/compose/issues/10411#issuecomment-1488019350.

Refs: OD-12
2023-04-07 01:21:07 +01:00
Oliver Davies 410717bb6b feat(fractal): add more justfile recipes
Add `justfile` recipes to build a production version of Fractal and
sync it to an S3 bucket.
2023-04-01 20:27:15 +01:00
Oliver Davies 9cc2f181ee feat: add hadolint configuration 2023-04-01 20:27:15 +01:00
Oliver Davies eb01ae0790 fix: add DOCKER_UID argument 2023-03-17 16:56:24 +00:00
Oliver Davies fc8474d198 feat: enable Traefik proxy for Fractal 2023-03-17 15:39:33 +00:00
Oliver Davies 7deddd4aa6 refactor: hard-code the build service target name 2023-03-17 14:58:51 +00:00
Oliver Davies fd5af4f397 fix: missing web service 2023-03-14 23:22:05 +00:00