1
0
Fork 0
A web application to manage political party
This repository has been archived on 2023-03-27. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
2018-12-13 06:32:57 +05:00
app Move mailer previews 2018-12-13 06:09:05 +05:00
bin Revert "Remove binstubs" 2018-11-23 00:53:09 +05:00
config Move mailer previews 2018-12-13 06:09:05 +05:00
db Fix code style 2018-12-12 05:35:40 +05:00
factories Add model AccountTelegramContact 2018-12-12 05:17:58 +05:00
features Add more specs 2018-12-13 06:32:57 +05:00
fixtures Add fixtures 2018-11-30 08:20:12 +05:00
lib Fix error 2018-12-10 06:52:10 +05:00
log Initialize Rails application 2018-11-23 00:33:08 +05:00
public Remove old content 2018-12-05 23:08:07 +05:00
script Install Cucumber 2018-11-30 12:26:46 +05:00
spec Move mailer previews 2018-12-13 06:09:05 +05:00
storage Initialize Rails application 2018-11-23 00:33:08 +05:00
tmp Initialize Rails application 2018-11-23 00:33:08 +05:00
vendor Initialize Rails application 2018-11-23 00:33:08 +05:00
.gitignore Add YARD 2018-12-03 17:51:04 +05:00
.rubocop.yml Add action Settings::TelegramContactsController#index 2018-12-12 05:25:13 +05:00
.ruby-gemset Some fixes 2018-11-23 00:35:04 +05:00
.ruby-version Add newline 2018-11-23 00:51:18 +05:00
.simplecov Fix coverage bug 2018-12-09 05:28:25 +05:00
.travis.yml Display geckodriver version 2018-12-13 05:00:07 +05:00
.yardopts Add YARD 2018-12-03 17:51:04 +05:00
Capfile Remove unnecessary comments 2018-12-06 00:47:58 +05:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2018-12-04 05:04:56 +05:00
config.ru Add frozen string literal comments 2018-11-23 00:58:35 +05:00
Gemfile Use Selenium WebDriver instead of Capybara WebKit 2018-12-13 04:57:14 +05:00
Gemfile.lock Use Selenium WebDriver instead of Capybara WebKit 2018-12-13 04:57:14 +05:00
LICENSE Add license 2018-11-29 17:49:45 +05:00
package-lock.json Install Viewer.js 2018-12-02 18:20:22 +05:00
package.json Install Viewer.js 2018-12-02 18:20:22 +05:00
Rakefile Merge test coverage results 2018-12-09 05:08:51 +05:00
README.md Use "puma" instead of "rails server" 2018-12-10 06:32:17 +05:00

Partynest

Build Status Coverage Status Maintainability Inline docs

A web application to manage political party members and supporters.

Table of contents

Deploy

Tested with Ubuntu Server 18.04 LTS.

System packages

  • build-essential
  • bundler
  • liblzma-dev
  • libpq-dev
  • nodejs
  • npm
  • patch
  • ruby
  • ruby-dev
  • rubygems-integration
  • zlib1g-dev

Steps

  • Create directory /opt/partynest/ writable by deploy user
  • Copy file config/master.key to /opt/partynest/shared/config/
  • Create PostgreSQL role partynest with password password
  • Create PostgreSQL database partynest_production owned by partynest

Example systemd services

Replace user with the name of user and group with the name of group which you want an application to run as.

Web server

[Unit]
After=syslog.target network.target
Description=Partynest web server

[Service]
ExecStart=/usr/bin/bundle exec puma --environment production
Group=group
Restart=always
RestartSec=1
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=partynest-web
Type=simple
User=user
WorkingDirectory=/opt/partynest/current

[Install]
WantedBy=multi-user.target

Job processing

[Unit]
After=syslog.target network.target
Description=Partynest job processing

[Service]
ExecStart=/usr/bin/bundle exec sidekiq --environment production
Group=group
Restart=always
RestartSec=1
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=partynest-worker
Type=simple
User=user
WorkingDirectory=/opt/partynest/current

[Install]
WantedBy=multi-user.target