2023-08-23 13:59:18 +02:00
|
|
|
---
|
|
|
|
|
sidebar_navigation:
|
|
|
|
|
title: Development setup on MacOS
|
2024-08-29 11:34:01 +02:00
|
|
|
short_title: Setup on MacOS
|
2023-08-23 13:59:18 +02:00
|
|
|
description: OpenProject development setup on Mac OS
|
|
|
|
|
keywords: development setup macos
|
|
|
|
|
---
|
|
|
|
|
|
2024-09-05 13:00:26 +02:00
|
|
|
# OpenProject development setup on macOS
|
2019-10-17 14:39:25 +02:00
|
|
|
|
|
|
|
|
To develop OpenProject a setup similar to that for using OpenProject in production is needed.
|
|
|
|
|
|
2024-09-05 12:20:23 +02:00
|
|
|
This guide assumes that you have a macOS installation with administrative rights.
|
2019-11-15 14:46:07 +01:00
|
|
|
OpenProject will be installed with a PostgreSQL database.
|
2019-10-17 14:39:25 +02:00
|
|
|
|
|
|
|
|
**Please note**: This guide is NOT suitable for a production setup, but only for developing with it!
|
|
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
If you find any bugs or you have any recommendations for improving this tutorial, please, feel free to send a pull
|
|
|
|
|
request or comment in the [OpenProject forums](https://community.openproject.org/projects/openproject/boards).
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
## Prepare your environment
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
We'll use [homebrew](https://brew.sh/) to install most of our requirements. Please install that first using the guide on
|
|
|
|
|
their homepage.
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
### Install Ruby
|
2019-11-15 14:46:07 +01:00
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
Use [rbenv](https://github.com/rbenv/rbenv) and [ruby-build](https://github.com/rbenv/ruby-build#readme) to install
|
|
|
|
|
Ruby. We always require the latest ruby versions, and you can check which version is required
|
|
|
|
|
by [checking the Gemfile](https://github.com/opf/openproject/blob/dev/Gemfile#L31) for the `ruby "~> X.Y"` statement. At
|
2026-03-31 11:21:01 +02:00
|
|
|
the time of writing, this version is "4.0.2"
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Install rbenv and ruby-build
|
2019-10-17 14:39:25 +02:00
|
|
|
|
|
|
|
|
rbenv is a ruby version manager that lets you quickly switch between ruby versions.
|
|
|
|
|
ruby-build is an addon to rbenv that installs ruby versions.
|
|
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2020-03-25 09:56:29 +00:00
|
|
|
# Install
|
2019-10-17 14:39:25 +02:00
|
|
|
$ brew install rbenv ruby-build
|
|
|
|
|
# Initialize rbenv
|
|
|
|
|
$ rbenv init
|
|
|
|
|
```
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Installing ruby
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-08-26 11:18:21 +02:00
|
|
|
With both installed, we can now install the actual ruby version.
|
|
|
|
|
You can check available ruby versions with `rbenv install --list`.
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-08-26 11:18:21 +02:00
|
|
|
We suggest you install the version we require in [.ruby-version](https://github.com/opf/openproject/blob/dev/.ruby-version).
|
2026-03-31 11:21:01 +02:00
|
|
|
Read the first line e.g. `4.0.2` and install that version.
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2024-08-26 11:18:21 +02:00
|
|
|
# Install the required version as read from the .ruby-version file
|
2026-03-31 11:21:01 +02:00
|
|
|
rbenv install 4.0.2
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
This might take a while depending on whether ruby is built from source. After it is complete, you need to tell rbenv to
|
|
|
|
|
globally activate this version
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2026-03-31 11:21:01 +02:00
|
|
|
rbenv global 4.0.2
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
You also need to install [bundler](https://github.com/bundler/bundler/), the ruby gem bundler.
|
|
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2019-11-15 14:46:07 +01:00
|
|
|
gem install bundler
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
### Setup PostgreSQL database
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
Next, install a PostgreSQL database. If you wish to use a MySQL database instead and have installed one, skip these
|
|
|
|
|
steps.
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2019-10-17 14:39:25 +02:00
|
|
|
# Install postgres database
|
2024-09-04 13:09:14 +02:00
|
|
|
$ brew install postgresql
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-09-04 13:09:14 +02:00
|
|
|
# Confirm that postgres has created a default database cluster if you see
|
|
|
|
|
This formula has created a default database cluster with:
|
|
|
|
|
initdb --locale=C -E UTF-8 /opt/homebrew/var/postgresql@14 # /usr/local for Intel Macs
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Then, create the OpenProject database user and accompanied database.
|
|
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2024-04-29 13:52:04 +02:00
|
|
|
createuser -d -P openproject
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
2024-03-25 12:16:14 -05:00
|
|
|
|
2019-10-17 14:39:25 +02:00
|
|
|
You will be prompted for a password, for the remainder of these instructions, we assume its `openproject-dev-password`.
|
|
|
|
|
|
|
|
|
|
Now, create the database `openproject_dev` and `openproject_test` owned by the previously created user.
|
|
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2024-04-29 13:52:04 +02:00
|
|
|
createdb -O openproject openproject_dev
|
|
|
|
|
createdb -O openproject openproject_test
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
### Install Node.js
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
We will install the latest LTS version of Node.js via [nodenv](https://github.com/nodenv/nodenv). This is basically the
|
|
|
|
|
same steps as for rbenv:
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Install nodenv and node-build
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2019-10-17 14:39:25 +02:00
|
|
|
# Install
|
2024-04-29 13:52:04 +02:00
|
|
|
brew install nodenv node-build
|
2019-10-17 14:39:25 +02:00
|
|
|
# Initialize nodenv
|
2024-04-29 13:52:04 +02:00
|
|
|
nodenv init
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Install latest LTS node version
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2022-03-23 16:36:45 +01:00
|
|
|
You can find the latest LTS version here: [nodejs.org/en/download](https://nodejs.org/en/download/)
|
2020-03-25 09:56:29 +00:00
|
|
|
|
2025-10-27 10:36:46 +01:00
|
|
|
At the time of writing this is v22.21.0. Install and activate it with:
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2025-10-27 10:36:46 +01:00
|
|
|
nodenv install 22.21.0
|
|
|
|
|
nodenv global 22.21.0
|
2021-06-02 19:41:36 +02:00
|
|
|
```
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Update NPM to the latest version
|
2021-06-02 19:41:36 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2021-06-02 19:41:36 +02:00
|
|
|
npm install npm@latest -g
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
### Verify your installation
|
2019-10-17 14:39:25 +02:00
|
|
|
|
|
|
|
|
You should now have an active ruby and node installation. Verify that it works with these commands.
|
|
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2019-10-17 14:39:25 +02:00
|
|
|
$ ruby --version
|
2026-03-31 11:21:01 +02:00
|
|
|
ruby 4.0.2 (2026-03-17 revision d3da9fec82) +PRISM [arm64-darwin25]
|
2019-10-17 14:39:25 +02:00
|
|
|
|
|
|
|
|
$ bundler --version
|
2026-01-14 16:29:02 +01:00
|
|
|
4.0.3
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2021-02-11 11:31:07 +01:00
|
|
|
node --version
|
2025-10-27 10:36:46 +01:00
|
|
|
v22.21.0
|
2021-02-11 11:31:07 +01:00
|
|
|
|
|
|
|
|
npm --version
|
2024-03-25 12:16:14 -05:00
|
|
|
10.5.0
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
## Install OpenProject
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2019-10-17 14:39:25 +02:00
|
|
|
# Download the repository
|
2019-11-15 14:46:07 +01:00
|
|
|
git clone https://github.com/opf/openproject.git
|
|
|
|
|
cd openproject
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
Note that we have checked out the `dev` branch of the OpenProject repository. Development in OpenProject happens in
|
|
|
|
|
the `dev` branch (there is no `master` branch).
|
2019-10-17 14:39:25 +02:00
|
|
|
So, if you want to develop a feature, create a feature branch from a current `dev` branch.
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
### Configure OpenProject
|
2019-10-17 14:39:25 +02:00
|
|
|
|
|
|
|
|
Create and configure the database configuration file in `config/database.yml` (relative to the openproject-directory.
|
|
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2019-11-15 14:46:07 +01:00
|
|
|
vim config/database.yml
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Now edit the `config/database.yml` file and insert your database credentials.
|
|
|
|
|
It should look like this (just with your database name, username, and password):
|
|
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```yaml
|
2019-10-17 14:39:25 +02:00
|
|
|
default: &default
|
|
|
|
|
adapter: postgresql
|
|
|
|
|
encoding: unicode
|
2024-09-05 08:50:23 +02:00
|
|
|
# Socket encryption must be disabled on macOS. There is an old bug in which forked processes cause problems on a Mac.
|
|
|
|
|
# TL;DR: set this flag, otherwise Ruby will crash whenever a route is accessed.
|
|
|
|
|
# Visit https://github.com/ged/ruby-pg/issues/311 to enter the rabbit hole.
|
|
|
|
|
gssencmode: disable
|
2019-10-17 14:39:25 +02:00
|
|
|
host: localhost
|
|
|
|
|
username: openproject
|
|
|
|
|
password: openproject-dev-password
|
|
|
|
|
|
|
|
|
|
development:
|
|
|
|
|
<<: *default
|
|
|
|
|
database: openproject_dev
|
|
|
|
|
|
|
|
|
|
test:
|
|
|
|
|
<<: *default
|
|
|
|
|
database: openproject_test
|
|
|
|
|
```
|
|
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
To configure the environment variables such as the number of web server threads `OPENPROJECT_WEB_WORKERS`, copy
|
|
|
|
|
the `.env.example` to `.env` and add the environment variables you want to configure. The variables will be
|
|
|
|
|
automatically loaded to the application's environment.
|
2022-05-03 15:37:25 +02:00
|
|
|
|
2024-09-06 08:46:25 +02:00
|
|
|
> [!TIP]
|
|
|
|
|
> Instead of using the `gssencmode` flag in `config/database.yml`, you can add `export PGGSSENCMODE="disable"` to your
|
2026-03-31 11:21:01 +02:00
|
|
|
> Shell profile (`~/.zprofile` by default). This will prevent Ruby crashes for _all_ of your projects.
|
2024-09-06 14:43:29 +02:00
|
|
|
|
|
|
|
|
Some users report Ruby crashes despite having set this flag to disable. If this is the case for you as well,
|
|
|
|
|
try adding `export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=yes` to your Shell profile.
|
2024-09-06 08:46:25 +02:00
|
|
|
|
2024-09-05 08:51:34 +02:00
|
|
|
### Install other requirements
|
|
|
|
|
|
|
|
|
|
Some operations in OpenProject require additional software. These include PDF exports and interaction with an
|
|
|
|
|
LDAP server.
|
|
|
|
|
|
2024-09-05 12:20:23 +02:00
|
|
|
In order to develop OpenProject in these areas, you need to install `imagemagick` and `java`.
|
2024-09-05 08:51:34 +02:00
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
brew install imagemagick java
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
As of writing, you need to manually create a symlink to OpenJDK for the Java installation to take effect. Homebrew will
|
|
|
|
|
tell you how.
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
### Finish the Installation of OpenProject
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2021-06-02 19:41:36 +02:00
|
|
|
Install code dependencies, link plugin modules and export translation files.
|
2024-03-25 12:16:14 -05:00
|
|
|
|
2021-06-02 19:41:36 +02:00
|
|
|
- gem dependencies (If you get errors here, you're likely missing a development dependency for your distribution)
|
|
|
|
|
- node_modules
|
|
|
|
|
- link plugin frontend modules
|
|
|
|
|
- and export frontend localization files
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2021-06-02 19:41:36 +02:00
|
|
|
bin/setup_dev
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
2021-06-02 19:41:36 +02:00
|
|
|
Now, run the following tasks to migrate and seed the dev database, and prepare the test setup for running tests locally.
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2021-06-02 19:41:36 +02:00
|
|
|
RAILS_ENV=development bin/rails db:seed
|
|
|
|
|
```
|
2024-03-25 12:16:14 -05:00
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
### Run OpenProject through overmind
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
You can run all required workers of OpenProject through `overmind`, which combines them in a single tab. Optionally, you
|
|
|
|
|
may also
|
2023-05-24 17:03:51 -05:00
|
|
|
run `overmind` as a daemon and connect to services individually.
|
2024-06-24 15:54:37 +02:00
|
|
|
The `bin/dev` command will first check if `overmind` is available and run the application via `Procfile.dev`. Otherwise
|
|
|
|
|
it will use `foreman` if it is available.
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2023-05-17 15:01:14 +02:00
|
|
|
bin/dev
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
2023-05-17 15:01:14 +02:00
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
The application will be available at `http://127.0.0.1:3000`. To customize bind address and port copy the `.env.example`
|
|
|
|
|
provided in the root of this
|
|
|
|
|
project as `.env` and [configure values](https://github.com/DarthSim/overmind/tree/v2.4.0#overmind-environment) as
|
|
|
|
|
required.
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
By default a worker process will also be started. In development asynchronous execution of long-running background
|
|
|
|
|
tasks (sending emails, copying projects,
|
|
|
|
|
etc.) may be of limited use and it has known issues with regards to memory (see background worker section below). To
|
|
|
|
|
disable the worker process:
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2023-05-24 17:03:51 -05:00
|
|
|
echo "OVERMIND_IGNORED_PROCESSES=worker" >> .overmind.env
|
|
|
|
|
```
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
For more information refer to the great Overmind
|
|
|
|
|
documentation [usage section](https://github.com/DarthSim/overmind/tree/v2.4.0#usage).
|
2019-10-17 14:39:25 +02:00
|
|
|
|
|
|
|
|
You can access the application with the admin-account having the following credentials:
|
|
|
|
|
|
2024-04-29 13:52:04 +02:00
|
|
|
```text
|
|
|
|
|
Username: admin
|
|
|
|
|
Password: admin
|
|
|
|
|
```
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
### Run OpenProject manually
|
2019-10-17 14:39:25 +02:00
|
|
|
|
|
|
|
|
To run OpenProject manually, you need to run the rails server and the webpack frontend bundler to:
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Rails web server
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2019-11-15 14:46:07 +01:00
|
|
|
RAILS_ENV=development bin/rails server
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
This will start the development server on port `3000` by default.
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Angular frontend
|
2019-11-15 14:46:07 +01:00
|
|
|
|
|
|
|
|
To run the frontend server, please run
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2019-11-15 14:46:07 +01:00
|
|
|
RAILS_ENV=development npm run serve
|
2019-10-17 14:39:25 +02:00
|
|
|
```
|
|
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
This will watch for any changes within the `frontend/` and compile the application javascript bundle on demand. You will
|
|
|
|
|
need to watch this tab for the compilation output,
|
2019-11-15 14:46:07 +01:00
|
|
|
should you be working on the TypeScript / Angular frontend part.
|
|
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
You can then access the application either through `localhost:3000` (Rails server) or through the frontend
|
|
|
|
|
proxied `http://localhost:4200`, which will provide hot reloading for changed frontend code.
|
2019-10-17 14:39:25 +02:00
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Delayed Job background worker
|
2022-01-19 16:43:11 +01:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2024-03-07 13:59:24 +01:00
|
|
|
RAILS_ENV=development bundle exec good_job start
|
2022-01-19 16:43:11 +01:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
This will start a Delayed::Job worker to perform asynchronous jobs like sending emails.
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
### Additional test dependencies
|
2023-10-18 09:13:11 +02:00
|
|
|
|
|
|
|
|
The test suite requires a few additional dependencies to be installed. These are not required for running OpenProject in
|
|
|
|
|
development mode, but only for running the entire test suite.
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Java 7 or later
|
2023-10-18 09:13:11 +02:00
|
|
|
|
|
|
|
|
To test the integration with LDAP servers, we rely on [ladle](https://github.com/NUBIC/ladle) to spin up an LDAP server
|
2023-10-18 17:09:35 +02:00
|
|
|
when running tests. As this runs [ApacheDS](https://directory.apache.org/apacheds/) internally, it requires Java 7 or
|
2023-10-18 09:13:11 +02:00
|
|
|
later to be installed.
|
|
|
|
|
|
2023-10-18 09:27:10 +02:00
|
|
|
If java is not installed, some tests will stall for 60 seconds before timing out. To run the tests, install java with
|
|
|
|
|
|
2023-10-18 09:13:11 +02:00
|
|
|
```shell
|
|
|
|
|
brew install openjdk
|
|
|
|
|
|
|
|
|
|
# The installation instructions will tell you to add a symlink to the JDK for the `java` command to pick it up
|
|
|
|
|
sudo ln -sfn $(brew --prefix)/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
|
|
|
|
|
```
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Subversion
|
2023-10-18 09:27:10 +02:00
|
|
|
|
|
|
|
|
To test the integration with Subversion repositories, we rely on the `svnadmin` command to be available. If subversion
|
2026-03-31 11:21:01 +02:00
|
|
|
is not installed, the tests _will be skipped_. To run the tests, install subversion with
|
2023-10-18 09:27:10 +02:00
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
brew install subversion
|
|
|
|
|
```
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Git
|
2023-10-18 09:27:10 +02:00
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
To test the integration with Git repositories, we rely on the `git` command to be available. Git is either installed via
|
|
|
|
|
the Xcode Command Line Tools, with [Xcode](https://apps.apple.com/us/app/xcode/id497799835?mt=12) or via homebrew.
|
2023-10-18 09:27:10 +02:00
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
xcode-select --install
|
|
|
|
|
|
|
|
|
|
# or
|
|
|
|
|
|
|
|
|
|
brew install git
|
|
|
|
|
```
|
|
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
### Known issues
|
2022-09-15 08:38:09 +02:00
|
|
|
|
2024-04-29 17:06:08 +02:00
|
|
|
#### Spawning a lot of browser tabs
|
2022-09-15 08:38:09 +02:00
|
|
|
|
2024-03-25 12:16:14 -05:00
|
|
|
If you haven't run this command for a while, chances are that a lot of background jobs have queued up and might cause a
|
|
|
|
|
significant amount of open tabs (due to the way we deliver mails with the letter_opener gem). To get rid of the jobs
|
|
|
|
|
before starting the worker, use the following command. **This will remove all currently scheduled jobs, never use this
|
|
|
|
|
in a production setting.**
|
2022-01-20 08:15:11 +01:00
|
|
|
|
2023-08-23 14:53:53 +02:00
|
|
|
```shell
|
2022-01-20 08:15:11 +01:00
|
|
|
RAILS_ENV=development bin/rails runner "Delayed::Job.delete_all"
|
|
|
|
|
```
|