app.json 3.28 KB
Newer Older
Effy Elden's avatar
Effy Elden committed
1
2
3
{
  "name": "Mastodon",
  "description": "A GNU Social-compatible microblogging server",
Jeffrey Phillips Freeman's avatar
Jeffrey Phillips Freeman committed
4
  "repository": "https://git.qoto.org/qoto/qoto",
5
  "logo": "https://github.com/tootsuite.png",
Effy Elden's avatar
Effy Elden committed
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  "env": {
    "HEROKU": {
      "description": "Leave this as true",
      "value": "true",
      "required": true
    },
    "LOCAL_DOMAIN": {
      "description": "The domain that your Mastodon instance will run on (this can be appname.herokuapp.com or a custom domain)",
      "required": true
    },
    "LOCAL_HTTPS": {
      "description": "Will your domain support HTTPS? (Automatic for herokuapp, requires manual configuration for custom domains)",
      "value": "false",
      "required": true
    },
    "PAPERCLIP_SECRET": {
      "description": "The secret key for storing media files",
      "generator": "secret"
    },
    "SECRET_KEY_BASE": {
      "description": "The secret key base",
      "generator": "secret"
    },
29
30
31
32
    "OTP_SECRET": {
      "description": "One-time password secret",
      "generator": "secret"
    },
Effy Elden's avatar
Effy Elden committed
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
    "SINGLE_USER_MODE": {
      "description": "Should the instance run in single user mode? (Disable registrations, redirect to front page)",
      "value": "false",
      "required": true
    },
    "S3_ENABLED": {
      "description": "Should Mastodon use Amazon S3 for storage? This is highly recommended, as Heroku does not have persistent file storage (files will be lost).",
      "value": "true",
      "required": false
    },
    "S3_BUCKET": {
      "description": "Amazon S3 Bucket",
      "required": false
    },
    "S3_REGION": {
      "description": "Amazon S3 region that the bucket is located in",
      "required": false
    },
    "AWS_ACCESS_KEY_ID": {
      "description": "Amazon S3 Access Key",
      "required": false
    },
    "AWS_SECRET_ACCESS_KEY": {
      "description": "Amazon S3 Secret Key",
      "required": false
    },
    "SMTP_SERVER": {
      "description": "Hostname for SMTP server, if you want to enable email",
      "required": false
    },
    "SMTP_PORT": {
      "description": "Port for SMTP server",
      "required": false
    },
    "SMTP_LOGIN": {
      "description": "Username for SMTP server",
      "required": false
    },
    "SMTP_PASSWORD": {
      "description": "Password for SMTP server",
      "required": false
    },
    "SMTP_DOMAIN": {
      "description": "Domain for SMTP server. Will default to instance domain if blank.",
      "required": false
78
79
80
81
    },
    "SMTP_FROM_ADDRESS": {
      "description": "Address to send emails from",
      "required": false
82
83
84
85
86
87
88
89
90
91
92
93
    },
    "SMTP_AUTH_METHOD": {
      "description": "Authentication method to use with SMTP server. Default is 'plain'.",
      "required": false
    },
    "SMTP_OPENSSL_VERIFY_MODE": {
      "description": "SMTP server certificate verification mode. Defaults is 'peer'.",
      "required": false
    },
    "SMTP_ENABLE_STARTTLS_AUTO": {
      "description": "Enable STARTTLS if SMTP server supports it? Default is true.",
      "required": false
Effy Elden's avatar
Effy Elden committed
94
95
96
    }
  },
  "buildpacks": [
Daigo 3 Dango's avatar
Daigo 3 Dango committed
97
98
99
    {
      "url": "https://github.com/heroku/heroku-buildpack-apt"
    },
Effy Elden's avatar
Effy Elden committed
100
101
102
103
104
105
106
107
108
109
110
111
112
113
    {
      "url": "heroku/nodejs"
    },
    {
      "url": "heroku/ruby"
    }
  ],
  "scripts": {
    "postdeploy": "bundle exec rails db:migrate && bundle exec rails db:seed"
  },
  "addons": [
    "heroku-postgresql",
    "heroku-redis"
  ]
114
}