aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 296e210925ad37dda81a0e13b418daafbd20554c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
 [![pipeline
 status](https://gitlab.com/gabrielgio/reddit-nextcloud-importer/badges/main/pipeline.svg)](https://gitlab.com/gabrielgio/reddit-nextcloud-importer/-/commits/main)
 [![coverage
 report](https://gitlab.com/gabrielgio/reddit-nextcloud-importer/badges/main/coverage.svg)](https://gitlab.com/gabrielgio/reddit-nextcloud-importer/-/commits/main)
 
# Reddit Nextcloud importer

A process to import images and videos from saved post on reddit to a instance of
Nextcloud.


# Environment variables

* `CLIENT_ID` and `CLIENT_SECRET`: crendentials needed to access Reddit's API.
  To get those info you'd need:
  * Go to [authorized application page](https://www.reddit.com/prefs/apps)
  * Click on `Create another app...` button at the bottom of the page.
  * Input the information and pick `script`.
  * You can use `http://localhost:8080` on `redirect uri` field as you won't
  need it.
  
* `REDDIT_USERNAME` and `REDDIT_PASSWORD`: user credenctial to access Reddit's
  API. Because you chose `script` that user need to be listed as a developer in
  the application page. To add a new user as a developer go to [authorized
  application page](https://www.reddit.com/prefs/apps) and click on the `edit`
  button on the application you just created. It will open a field `add
  developer`.

* `NEXTCLOUD_HOST`: the host domain a port for the nextcloud instance.

* `NEXTCLOUD_USERNAME` and `NEXTCLOUD_PASSWORD`: user credential for the
  nextcloud instance.
  
* `NEXTCLOUD_PATH`: root folder for where all the images will be saved.

* `FROM_BEGINNING`: it will download all the files since the first availabile
  saved post.
  
* `LOG_LEVEL`: it will set the log level:
  * info
  * error

# Running as docker container

To run as docker you need to pass all the environment variables listed above:

```BASH
docker run -d --rm \
  -e CLIENT_ID=$CLIENT_ID \
  -e CLIENT_SECRET=$CLIENT_SECRET \
  -e REDDIT_USERNAME=$REDDIT_USERNAME \
  -e REDDIT_PASSWORD=$REDDIT_PASSWORD \
  -e NEXTCLOUD_HOST=$REDDIT_HOST \
  -e NEXTCLOUD_USERNAME=$NEXTCLOUD_USERNAME \
  -e NEXTCLOUD_PASSWORD=$NEXTCLOUD_PASSWORD \
  -e NEXTCLOUD_PATH=$NEXTCLOUD_PATH \
  registry.gitlab.com/gabrielgio/reddit-nextcloud-importer:latest
```