patchew-project / patchew

A patch email tracking and testing system
MIT License
72 stars 24 forks source link

Patchew Documentation

About

Patchew, pronounced as /pæ'tʃu:/, is a system built to automatically chew patches that are submitted as emails on mailing lists.

What can it do, exactly?

It can:

Submit a feature request or a bug report

https://github.com/patchew-project/patchew/issues/new

Alternatively, send an email to patchew-devel@redhat.com if you prefer so.

Submit a patch

We accept PR on github for one-off/small contributions but it is encouraged to submit your patches with git-send-email to the Patchew development and discussion mailing list, patchew-devel@redhat.com.

Installing

Patchew can be installed in a podman container; it is possible to connect the container to a webserver running on the host via either port 80 or a FastCGI socket.

Either SQLite or PostgreSQLcan be used as the database backend; the latter requires a separate container.

The scripts/deploy scripts is a wrapper script that uses Ansible to install the various components of Patchew. For example:

# ./scripts/deploy --db localhost
# systemctl enable patchew-server-db
# ./scripts/deploy --server localhost
# systemctl enable patchew-server

A sample nginx configuration is as follows:

upstream patchew-server {
    server unix:/data/patchew-server/data/nginx.sock fail_timeout=0;
}

server {
    server_name patchew.org;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header Host            $host;
    location / {
      proxy_pass http://patchew-server;
    }
    proxy_connect_timeout       600;
    proxy_send_timeout          600;
    proxy_read_timeout          600;
    send_timeout                600;
    client_max_body_size 100M;
}

Known issues

License

See LICENSE file.