https://github.com/freelancer/phlab
Phabricator extensions used at Freelancer.com.
https://github.com/freelancer/phlab
Last synced: 10 months ago
JSON representation
Phabricator extensions used at Freelancer.com.
- Host: GitHub
- URL: https://github.com/freelancer/phlab
- Owner: freelancer
- License: apache-2.0
- Created: 2019-04-30T06:46:22.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-02-02T11:20:33.000Z (over 3 years ago)
- Last Synced: 2025-05-01T11:37:12.667Z (about 1 year ago)
- Language: PHP
- Size: 437 KB
- Stars: 5
- Watchers: 4
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Support: support/docker/config.php
Awesome Lists containing this project
README
Custom extensions for Phabricator.
= Development =
The best way to develop Phlab is to use [Docker Compose](https://docs.docker.com/compose/) locally by running `docker-compose up` from the root of the repository. Before doing so, you should have the following repositories cloned locally, in the same parent directory as Phlab itself:
- [Arcanist](https://github.com/phacility/arcanist)
- [libphutil](https://github.com/phacility/libphutil)
- [Phabricator](https://github.com/phacility/phabricator)
Phabricator requires that it is accessed with a `Host` header containing a period (see [T2433: Move the "no dots in domain" setup check to pre-install](https://secure.phabricator.com/T2433)) and so you will not be able to access Phabricator via http://localhost. Instead, you should add `127.0.0.1 phabricator.local` to `/etc/hosts` and access Phabricator via http://phabricator.local.
Nginx has been configured to bind to port `80` by default. You can bind to an alternative port by setting the `HTTP_PORT` environment variable.
== Unit tests ==
To run unit tests:
```
~/freelancer-dev/phlab > docker-compose up
# in a separate shell
~/freelancer-dev/phlab > docker exec -it phlab_worker_1 /bin/bash
root@ff02e67a5471:/# cd /usr/local/src/phlab/
root@ff02e67a5471:/usr/local/src/phlab# ../arcanist/bin/arc unit src/*
```
Unit tests can only be ran inside the container that docker spins up so you will need to run `arc diff --nounit` when creating a differential revision
== Troubleshooting ==
During local development, the db can get corrupted. When this happens, you can run `docker-compose down --volumes` to stop and remove containers, networks and volumes created by `docker-compose up`.