<divclass="nr-head"><h2>Repository</h2><pclass="small mute">Where it lives and what it is called.</p></div>
11
<divclass="nr-body">
12
<divclass="row name-row">
13
<div><labelfor="owner">Owner</label><selectid="owner"name="owner"data-orgs="{% for o in orgs %}{{ o }} {% endfor %}"data-runners="{% for o in runner_owners %}{{ o }} {% endfor %}">{% for (o, b, from) in bookmarks %}<optionvalue="{{ o }}"data-bookmark="{{ b }}"data-bookmark-from="{{ from }}">{{ o }}</option>{% endfor %}</select></div>
<labelfor="description">Description <spanclass="small mute">(optional; the README and the wiki start with it)</span></label><inputtype="text"id="description"name="description">
<labelclass="choice-card"><inputtype="radio"name="visibility"value="public"checked><span><strong>Public</strong><spanclass="small mute">Anyone can see and clone it. You choose who may push.</span></span></label>
28
<labelclass="choice-card"><inputtype="radio"name="visibility"value="internal"><span><strong>Internal</strong><spanclass="small mute">Anyone signed in to this hub can see it.</span></span></label>
29
<labelclass="choice-card"><inputtype="radio"name="visibility"value="private"><span><strong>Private</strong><spanclass="small mute">Only you{% if !orgs.is_empty() %}, the organisation's members{% endif %} and the people you add.</span></span></label>
30
</div>
31
</section>
32
33
<sectionclass="nr-sec">
34
<divclass="nr-head"><h2>Starting files</h2><pclass="small mute">Optional. Left empty, it starts empty and takes its first push. The hub commits these as you, signed with its key as your delegate.</p></div>
35
<divclass="nr-body">
36
<labelclass="nr-toggle"><inputtype="checkbox"name="readme"value="1"><span><strong>README</strong><spanclass="small mute">Its name and description, as README.md.</span></span></label>
37
<divclass="row nr-pair">
38
<div><labelfor="licence">Licence</label><selectid="licence"name="licence"><optionvalue="">none</option>{% for (id, what) in licences %}<optionvalue="{{ id }}">{{ id }}: {{ what }}</option>{% endfor %}</select></div>
39
<div><labelfor="ignore">.oxyignore</label><selectid="ignore"name="ignore"><optionvalue="">none</option>{% for l in ignores %}<option>{{ l }}</option>{% endfor %}</select></div>
40
</div>
41
</div>
42
</section>
43
44
<sectionclass="nr-sec">
45
<divclass="nr-head"><h2>Wiki</h2><pclass="small mute">Pages beside the code, cloned as its <code>.wiki</code>.</p></div>
46
<divclass="nr-body">
47
<labelclass="nr-toggle"><inputtype="checkbox"name="wiki"value="1"><span><strong>Start the wiki</strong><spanclass="small mute">A Home page with its name and description, ready to edit. Left off, the first page anyone writes starts it.</span></span></label>
<labelclass="choice-card"><inputtype="radio"name="board"value=""checkeddata-board-none><span><strong>No board</strong><spanclass="small mute">Add its issues to a board later.</span></span></label>
56
<labelclass="choice-card"><inputtype="radio"name="board"value="new"data-board-new><span><strong>A new board</strong><spanclass="small mute">Backlog, Doing and Done; finished work moves to Done.</span></span></label>
57
{% if !boards.is_empty() %}<labelclass="choice-card"><inputtype="radio"name="board"value="existing"data-board-existing><span><strong>An existing board</strong><spanclass="small mute">One of the owner's open boards.</span></span></label>{% endif %}
{% if !boards.is_empty() %}<divclass="board-existing"><labelfor="board_n">Board</label><selectid="board_n"name="board_n"data-board-list>{% for (o, n, t) in boards %}<optionvalue="{{ n }}"data-owner="{{ o }}">{{ o }} #{{ n }}: {{ t }}</option>{% endfor %}</select></div>{% endif %}
<divclass="nr-head"><h2>OxygenFlow</h2><pclass="small mute">Pipelines: once it is on, every push with a <code>.flow/pipeline.kdl</code> starts a run, and its jobs show as checks.</p></div>
<labelclass="choice-card"><inputtype="radio"name="flow"value=""checked><span><strong>Not yet</strong><spanclass="small mute">The site's default. Switch it on later in Settings › Pipelines.</span></span></label>
68
<labelclass="choice-card{% if !admin %} off{% endif %}"><inputtype="radio"name="flow"value="on"{% if !admin %} disabled{% endif %}><span><strong>On, site runners</strong><spanclass="small mute">{% if admin %}The site's runners take its jobs.{% else %}A site administrator's choice.{% endif %}</span></span></label>
69
<labelclass="choice-card"data-flow-own><inputtype="radio"name="flow"value="own"><span><strong>On, own runners</strong><spanclass="small mute"data-flow-own-note>Only the owner's own runners take its jobs.</span></span></label>
<summary><h2>Storage</h2><spanclass="small mute">This server's disk, unless you keep it in your own bucket.</span></summary>
75
<divclass="nr-body">
76
<divclass="nr-cards two">
77
<labelclass="choice-card"><inputtype="radio"name="storage"value="hub"checked><span><strong>This server's disk</strong><spanclass="small mute">The default. Backed up with the hub.</span></span></label>
78
<labelclass="choice-card"><inputtype="radio"name="storage"value="bucket"><span><strong>My own bucket</strong><spanclass="small mute">Amazon S3, Google Cloud Storage or Azure; this server keeps a cache. It starts empty.</span></span></label>
<legend>Your bucket <smallclass="mute">(only when kept in your own bucket)</small></legend>
82
<pclass="small mute">The repository's data lives in the bucket and this server keeps a cache. The bucket, or the prefix in it, must be empty. It is checked before anything is created. The credentials are sealed on this server and used only for this repository; give them read, write, list and delete under the prefix and nothing more.</p>