aboutsummaryrefslogtreecommitdiff
path: root/static/admin/config.yml
blob: 181f85195e5f17dad62b406c795c8432ad67d9c1 (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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
# This is the main configuration file for Netlify CMS.
# Netlify CMS is used as the admin panel for cState.
#
# While some settings here can be kept as is, you may
# want to change some for a more customized solution.
#
# You can look at what each option does and how to
# toggle between them on the Netlify CMS repo docs:
#
# https://github.com/netlify/netlify-cms/blob/master/docs/quick-start.md

backend:
  name: git-gateway
media_folder: "static/img"
public_folder: "/img"
display_url: /

# Do not change this!
collections:
  - name: "issues"
    label: "Incidents"
    label_singular: "Incident"
    description: "📚 Welcome to the cState admin panel! Here you can create new incidents or manage existing ones. Go ahead and give it a shot."
    folder: "content/issues"
    create: true
    slug: "{{year}}-{{month}}-{{day}}-{{slug}}"
    fields:
      - {label: "Mark as incident", name: "section", widget: "hidden", default: "issue"}
      - {label: "Title", name: "title", widget: "string"}
      - {label: "Start date & time (your time)", name: "date", widget: "datetime"}
      - {label: "Mark as resolved", name: "resolved", widget: "boolean", required: false}
      - {label: "End date & time (your time)", name: "resolvedWhen", widget: "datetime", required: false}
      - label: "Affected systems (use exact name, separated by commas)"
        name: "affected"
        widget: "list"
        required: false
      - label: "Severity"
        name: "severity"
        widget: "select"
        options:
          - { label: "High (Down)", value: "down" }
          - { label: "Medium (Disrupted)", value: "disrupted" }
          - { label: "Low (Announcement)", value: "notice" }
      - label: "Markdown body (sequence of events, description, post-mortem)"
        name: "body"
        widget: "markdown"
        default: "*Investigating* - We are investigating a potential issue that might affect the uptime of one our of services. We are sorry for any inconvenience this may cause you. This incident post will be updated once we have more information."
  - name: "settings"
    label: "Settings"
    description: "âš  Please be warned that by editing settings from Netlify CMS you are _OVERWRITING_ what you have in the original Git repository, meaning any CURRENT SETTINGS OR COMMENTS left will be deleted."
    delete: false # Prevent users from deleting documents in this collection
    editor:
      preview: false
    files:
      - name: "general"
        label: "âš™ Configuration File"
        file: "config.yml"
        fields:
          # MAIN
          - label: 'Site title'
            hint: 'What is your status page called? Shows up in the browser bar and meta.'
            name: 'title'
            widget: 'string'
          - label: 'Build future posts'
            name: 'buildFuture'
            widget: 'boolean'
            hint: 'Should posts, which have a publish date from the future, be built? Useful for sharing upcoming maintenance, etc.'
            required: false
            default: true
          - label: 'Site display language'
            hint: 'Docs: https://github.com/cstate/cstate/wiki/Translations#available-translations'
            name: 'defaultContentLanguage'
            widget: 'select'
            default: 'en'
            options:
            - { label: "🇺🇸 English (default)", value: "en" }
            - { label: "🇱🇹 Lithuanian (official)", value: "lt" }
            - { label: "🇫🇷 French", value: "fr" }
          - label: 'Site language in code for html[lang]'
            hint: 'Use the ISO 639-1 defined abbreviations. Examples: en, lt, de. Fully explained here: https://github.com/mistermantas/cstate/wiki/Customization#changing-site-language'
            name: 'languageCode'
            widget: 'string'
            default: 'en'
          - label: 'Base URL / Hostname'
            name: 'baseURL'
            widget: 'string'
            hint: 'Where is the site hosted? What is the hostname or path to the root? Slash forces relative links but may not work in all setups.'
            default: '/'
          # PARAMS
          - label: "Params"
            name: "params"
            widget: "object"
            fields:
              # Components
              - label: "System components"
                name: "systems"
                widget: "list"
                allow_add: true
                fields:
                - {label: "Name", name: "name", widget: string}
                - {label: "Description", name: "description", widget: string, required: false}
                - {label: "Partial", hint: "Custom HTML feature: https://github.com/cstate/cstate/wiki/Customization#custom-html", name: "partial", widget: string, required: false}
              # Components
              - label: "Tabs"
                hint: 'You can add extra tabs below the main homepage summary, for example, to external sites, monitoring services, as shown in the example below. Try Uptime Robot!'
                name: "customTabs"
                widget: "list"
                allow_add: true
                fields:
                - {label: "Name", name: "name", widget: string}
                - {label: "Link", name: "link", widget: string}
              # Dates
              - label: 'Long date format'
                name: 'dateFormat'
                widget: 'string'
                hint: 'Default: January 2, 2006 at 3:04 PM. Hugo formatting docs: https://gohugo.io/functions/format/#hugo-date-and-time-templating-reference'
                default: 'January 2, 2006 at 3:04 PM'
              - label: 'Short date format'
                name: 'shortDateFormat'
                widget: 'string'
                hint: 'Default: 15:04 — Jan 2. Hugo formatting docs: https://gohugo.io/functions/format/#hugo-date-and-time-templating-reference'
                default: '15:04 — Jan 2'
              # Design toggles
              - label: 'Use large header design'
                name: 'useLargeHeaderDesign'
                widget: 'boolean'
                hint: 'What header design should we use? https://github.com/cstate/cstate/wiki/Customization#changing-header'
                required: false
                default: false
              - label: 'Show logo'
                name: 'useLogo'
                widget: 'boolean'
                required: false
                default: true
              - label: 'Logo image'
                hint: 'Upload your logo here. If the logo option is switched off, this will not show.'
                name: 'logo'
                widget: 'image'
              # Description
              - label: 'Site description'
                hint: 'This is the description that is shown on the footer and meta tags.'
                name: 'description'
                widget: 'text'
                default: 'We continuously monitor the status of our services and if there are any interruptions, a note will be posted here.'
              # Refresh
              - label: 'Auto refresh status'
                name: 'autoRefresh'
                widget: 'boolean'
                hint: 'This does nothing but refresh the page around every 5 minutes; it does not send alerts! May also have issues on some browsers.'
                required: false
                default: true
              # Incidents per page
              - label: 'Incident posts shown in one page'
                name: 'incidentPostsPerPage'
                widget: 'number'
                valueType: 'int'
                min: 1
                max: 100
                default: 10
              # Brand color
              - label: 'Header: always keep brand color the same'
                name: 'alwaysKeepBrandColor'
                hint: 'You may choose whether the brand color should stay unchanged once there are disruptions or outages on the header.'
                widget: 'boolean'
                default: true
              # Colors
              - label: 'Site HEX color: Brand'
                hint: 'Should not have # mark. Default: 181818'
                name: 'brand'
                widget: 'string'
                default: '181818'
              - label: 'Site HEX color: Operational / OK'
                hint: 'Should not have # mark. Default: 228B22'
                name: 'ok'
                widget: 'string'
                default: '228B22'
              - label: 'Site HEX color: Disrupted'
                hint: 'Should not have # mark. Default: FF8C00'
                name: 'disrupted'
                widget: 'string'
                default: 'FF8C00'
              - label: 'Site HEX color: Down / Offline / Major'
                hint: 'Should not have # mark. Default: DC143C'
                name: 'down'
                widget: 'string'
                default: 'DC143C'
              - label: 'Site HEX color: Notice'
                hint: 'Should not have # mark. Default: 708090'
                name: 'notice'
                widget: 'string'
                default: '708090'
              # Google Analytics
              - label: 'Google Analytics tracking code'
                hint: 'By default, cState does not use Google Analytics. If you choose to use it, you may change the placeholder code below to your own and thereby enable the tracking service. If you set the value back to UA-00000000-1, the code will once again be removed.'
                name: 'googleAnalytics'
                widget: 'string'
                default: 'UA-00000000-1'
          # REQUIRED BUT HIDDEN
          - label: 'theme'
            name: 'theme'
            widget: 'hidden'
            default: 'cstate'
          - label: 'preserveTaxonomyNames'
            name: 'preserveTaxonomyNames'
            widget: 'hidden'
            default: 'true'
          - label: "taxonomies"
            name: taxonomies
            widget: "hidden"
            fields:
              - {label: "affected", name: "affected", widget: "hidden", default: "affected"}