Skip to content

Commit 827ac0a

Browse files
committed
First import
0 parents  commit 827ac0a

File tree

15 files changed

+2034
-0
lines changed

15 files changed

+2034
-0
lines changed

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
padro.conf
2+
script/hypnotoad.pid
3+
local/*
4+
public/packed/*
5+
log/*

INSTALL.md

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# Installation of Padro
2+
3+
## Dependencies
4+
5+
### Carton
6+
7+
Perl dependencies manager, it will get what you need, so don't bother for Perl modules dependencies (but you can read the file `cpanfile` if you want).
8+
9+
Best way to install Carton:
10+
11+
```shell
12+
sudo cpan Carton
13+
```
14+
15+
or
16+
17+
```shell
18+
sudo apt-get install carton
19+
```
20+
21+
## Installation
22+
23+
After installing Carton :
24+
25+
```shell
26+
git clone https://github.com/ldidry/padro.git
27+
cd padro
28+
carton install
29+
cp padro.conf.template padro.conf
30+
vi padro.conf
31+
```
32+
33+
## Configuration
34+
35+
The `padro.conf.template` is self-documented.
36+
37+
## Database initialisation
38+
39+
Padro will initialize the databases, but you need to create them!
40+
41+
```
42+
sudo su postgres
43+
psql -d template1
44+
```
45+
46+
Then
47+
48+
```
49+
CREATE USER padro_user WITH PASSWORD 'padro_pwd';
50+
CREATE DATABASE padro;
51+
GRANT ALL PRIVILEGES ON DATABASE padro to padro_user;
52+
CREATE USER minion_user WITH PASSWORD 'minion_pwd';
53+
CREATE DATABASE minion;
54+
GRANT ALL PRIVILEGES ON DATABASE minion to minion_user;
55+
```
56+
57+
## Starting Padro from command line
58+
59+
```
60+
carton exec hypnotoad script/padro
61+
```
62+
63+
## Starting the minion worker from command line
64+
65+
```
66+
carton exec script/padro minion worker
67+
```
68+
69+
## Putting Padro behind a reverse proxy
70+
71+
Well, if you have an Etherpad instance to use with Padro, I guess you'll find a doc to put Padro behind a reverse proxy.
72+
73+
No time for documenting that right now.
74+
75+
## Update
76+
77+
```
78+
git pull
79+
carton install
80+
carton exec hypnotoad script/padro
81+
```
82+
83+
Yup, that's all (Mojolicious magic).

LICENSE

Lines changed: 661 additions & 0 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Padro
2+
3+
**WARNING** This software is pre-alpha and not ready for production.
4+
5+
## What Padro means?
6+
7+
It means Pad Read Only.
8+
9+
## What does it do?
10+
11+
It downloads some pad informations and pad text from an [Etherpad](http://etherpad.org) instance.
12+
13+
It allows you to put Padro instead of your etherpad instance : the users will get their pad content and will be able to download text version and HTML version of their pad, but they will not be able to modify or create pads.
14+
15+
## License
16+
17+
Padro is licensed under the terms of the AGPL. See the LICENSE file.
18+
19+
## Installation and dependencies
20+
21+
See the INSTALL.md file.
22+
23+
## Get all the pads in one command
24+
25+
After intalling and lauching Padro, you can download all the pads with:
26+
27+
```
28+
carton exec script/padro get_all_pads
29+
```
30+
31+
Since it can take a really long time, depending on how many pads you have, the job is queued to the minion worker. To see the status of the queue, you can:
32+
33+
```
34+
carton exec script/padro minion job
35+
```

cpanfile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
requires "Mojolicious";
2+
requires "Mojolicious::Plugin::I18N";
3+
requires "Mojo::Pg";
4+
requires "Minion";
5+
requires "Etherpad::API";
6+
requires "Term::ProgressBar";

0 commit comments

Comments
 (0)