this repo has no description
1{{ define "title" }}{{ .Tab }} settings &middot; {{ .RepoInfo.FullName }}{{ end }} 2 3{{ define "repoContent" }} 4 <section class="w-full grid grid-cols-1 md:grid-cols-4 gap-2"> 5 <div class="col-span-1"> 6 {{ template "repo/settings/fragments/sidebar" . }} 7 </div> 8 <div class="col-span-1 md:col-span-3 flex flex-col gap-6 p-2"> 9 {{ template "spindleSettings" . }} 10 {{ if $.CurrentSpindle }} 11 {{ template "secretSettings" . }} 12 {{ end }} 13 <div id="operation-error" class="text-red-500 dark:text-red-400"></div> 14 </div> 15 </section> 16{{ end }} 17 18{{ define "spindleSettings" }} 19 <div class="grid grid-cols-1 md:grid-cols-3 gap-4 items-center"> 20 <div class="col-span-1 md:col-span-2"> 21 <h2 class="text-sm pb-2 uppercase font-bold">Spindle</h2> 22 <p class="text-gray-500 dark:text-gray-400"> 23 Choose a spindle to execute your workflows on. Spindles can be 24 selfhosted, 25 <a class="text-gray-500 dark:text-gray-400 underline" href="https://tangled.sh/@tangled.sh/core/blob/master/docs/spindle/hosting.md"> 26 click to learn more. 27 </a> 28 </p> 29 </div> 30 <form hx-post="/{{ $.RepoInfo.FullName }}/settings/spindle" class="col-span-1 md:col-span-1 md:justify-self-end group flex gap-2 items-stretch"> 31 <select 32 id="spindle" 33 name="spindle" 34 required 35 class="p-1 max-w-64 border border-gray-200 bg-white dark:bg-gray-800 dark:text-white dark:border-gray-700" 36 {{ if not $.RepoInfo.Roles.IsOwner }}disabled{{ end }}> 37 <option value="" disabled selected > 38 Choose a spindle 39 </option> 40 {{ range $.Spindles }} 41 <option value="{{ . }}" class="py-1" {{ if eq . $.CurrentSpindle }}selected{{ end }}> 42 {{ . }} 43 </option> 44 {{ end }} 45 </select> 46 <button class="btn flex gap-2 items-center" type="submit" {{ if not $.RepoInfo.Roles.IsOwner }}disabled{{ end }}> 47 {{ i "check" "size-4" }} 48 {{ i "loader-circle" "w-4 h-4 animate-spin hidden group-[.htmx-request]:inline" }} 49 </button> 50 </form> 51 </div> 52{{ end }} 53 54{{ define "secretSettings" }} 55 <div class="grid grid-cols-1 md:grid-cols-3 gap-4 items-center"> 56 <div class="col-span-1 md:col-span-2"> 57 <h2 class="text-sm pb-2 uppercase font-bold">SECRETS</h2> 58 <p class="text-gray-500 dark:text-gray-400"> 59 Secrets are accessible in workflow runs via environment variables. Anyone 60 with collaborator access to this repository can add and use secrets in 61 workflow runs. 62 </p> 63 </div> 64 <div class="col-span-1 md:col-span-1 md:justify-self-end"> 65 {{ template "addSecretButton" . }} 66 </div> 67 </div> 68 <div class="flex flex-col rounded border border-gray-200 dark:border-gray-700 divide-y divide-gray-200 dark:divide-gray-700 w-full"> 69 {{ range .Secrets }} 70 {{ template "repo/settings/fragments/secretListing" (list $ .) }} 71 {{ else }} 72 <div class="flex items-center justify-center p-2 text-gray-500"> 73 no secrets added yet 74 </div> 75 {{ end }} 76 </div> 77{{ end }} 78 79{{ define "addSecretButton" }} 80 <button 81 class="btn flex items-center gap-2" 82 popovertarget="add-secret-modal" 83 popovertargetaction="toggle"> 84 {{ i "plus" "size-4" }} 85 add secret 86 </button> 87 <div 88 id="add-secret-modal" 89 popover 90 class="bg-white w-full md:w-96 dark:bg-gray-800 p-4 rounded border border-gray-200 dark:border-gray-700 drop-shadow dark:text-white backdrop:bg-gray-400/50 dark:backdrop:bg-gray-800/50"> 91 {{ template "addSecretModal" . }} 92 </div> 93{{ end}} 94 95{{ define "addSecretModal" }} 96<form 97 hx-put="/{{ $.RepoInfo.FullName }}/settings/secrets" 98 hx-indicator="#spinner" 99 hx-swap="none" 100 class="flex flex-col gap-2" 101> 102 <p class="uppercase p-0">ADD SECRET</p> 103 <p class="text-sm text-gray-500 dark:text-gray-400">Secrets are available as environment variables in the workflow.</p> 104 <input 105 type="text" 106 id="secret-key" 107 name="key" 108 required 109 placeholder="SECRET_NAME" 110 /> 111 <textarea 112 type="text" 113 id="secret-value" 114 name="value" 115 required 116 placeholder="secret value"></textarea> 117 <div class="flex gap-2 pt-2"> 118 <button 119 type="button" 120 popovertarget="add-secret-modal" 121 popovertargetaction="hide" 122 class="btn w-1/2 flex items-center gap-2 text-red-500 hover:text-red-700 dark:text-red-400 dark:hover:text-red-300" 123 > 124 {{ i "x" "size-4" }} cancel 125 </button> 126 <button type="submit" class="btn w-1/2 flex items-center"> 127 <span class="inline-flex gap-2 items-center">{{ i "plus" "size-4" }} add</span> 128 <span id="spinner" class="group"> 129 {{ i "loader-circle" "ml-2 w-4 h-4 animate-spin hidden group-[.htmx-request]:inline" }} 130 </span> 131 </button> 132 </div> 133 <div id="add-secret-error" class="text-red-500 dark:text-red-400"></div> 134</form> 135{{ end }}