-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathexample.sh
More file actions
executable file
·71 lines (63 loc) · 2.12 KB
/
Copy pathexample.sh
File metadata and controls
executable file
·71 lines (63 loc) · 2.12 KB
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
#!/bin/sh
set -e
# This example assumes that you build the native executable. If you didn't, please
# run `mvnd clean package -Pnative -DskipTests` first.
if [ ! -x "target/hub" ]; then
echo "hub binary not found" >&2
exit 1
fi
function hub() {
target/hub "$@"
}
export HUB_CLI_API_BASE=http://localhost:8080/api
export HUB_CLI_CLIENT_ID=cryptomatorhub-cli
export HUB_CLI_CLIENT_SECRET=top-secret
export HUB_CLI_ACCESS_TOKEN=$(hub login client-credentials)
export HUB_CLI_P12_FILE=cli.p12
export HUB_CLI_P12_PASSWORD=test
if [ ! -f ${HUB_CLI_P12_FILE} ]; then
HUB_CLI_SETUP_CODE=$(hub setup)
echo "setup code: ${HUB_CLI_SETUP_CODE}"
fi
if [ ! -e vault ]; then
VAULT_ID=$(hub vault create --name=vault --path=.)
echo -n "created vault ${VAULT_ID} with recovery key: "
hub vault recoverykey --vault-id=${VAULT_ID}
else
hub vault list | jq .
read -p "enter vault id: " VAULT_ID
fi
hub vault update --vault-id=${VAULT_ID} --description="updated by hub-cli at $(date "+%Y-%m-%d %H:%M:%S")"
echo "this is your admin's id:"
hub user list | jq --raw-output '.[] | select(.name=="admin") | .id'
if [[ -n "${USER_ID}" ]]; then
hub vault add-user --vault-id=${VAULT_ID} --user-id=${USER_ID} --role=OWNER
exit 0;
elif [[ -n "${GROUP_ID}" ]]; then
hub vault add-group --vault-id=${VAULT_ID} --group-id=${GROUP_ID} --role=OWNER
exit 0;
fi
while true; do
CHOICE="x"
read -p "add [u]ser or [g]roup as owner or [r]emove user/group? " CHOICE
if [[ "${CHOICE}" == "u" ]]; then
echo -n "users: "
hub user list | jq .
read -p "enter user id: " USER_ID
hub vault add-user --vault-id=${VAULT_ID} --user-id=${USER_ID} --role=OWNER
elif [[ "${CHOICE}" == "g" ]]; then
echo -n "groups: "
hub group list | jq .
read -p "enter group id: " GROUP_ID
hub vault add-group --vault-id=${VAULT_ID} --group-id=${GROUP_ID} --role=OWNER
elif [[ "${CHOICE}" == "r" ]]; then
echo -n "groups: "
hub group list | jq .
echo -n "users: "
hub user list | jq .
read -p "enter user or group id: " AUTHORITY_ID
hub vault remove-member --vault-id=${VAULT_ID} --member-id=${AUTHORITY_ID}
else
break
fi
done