1
0
mirror of https://github.com/vimagick/dockerfiles.git synced 2024-12-23 01:39:27 +02:00
dockerfiles/semaphore/keygen.sh

21 lines
724 B
Bash
Raw Normal View History

2023-12-29 03:14:38 +02:00
#!/bin/bash
#
# https://docs.semui.co/administration-guide/api
#
set -euo pipefail
API_ENDPOINT=http://192.168.1.100:3000
API_USERNAME=username
API_PASSWORD=password
cookie=$(jq -n --arg auth $API_USERNAME --arg password $API_PASSWORD '{$auth, $password}' | curl -s -c- $API_ENDPOINT/api/auth/login -d @- -o /dev/null | awk '$6=="semaphore"{print $7}')
if curl -s -H "Cookie: semaphore=$cookie" $API_ENDPOINT/api/user/tokens | jq -e 'length==0' > /dev/null; then
curl -s -X POST -H "Cookie: semaphore=$cookie" $API_ENDPOINT/api/user/tokens
fi
token=$(curl -s -H "Cookie: semaphore=$cookie" $API_ENDPOINT/api/user/tokens | jq -r .[0].id)
curl -s -H "Authorization: Bearer $token" $API_ENDPOINT/api/user/tokens | jq .