Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- set -e
- : "${OS_USERNAME:?Error: must set OS_USERNAME environment variable}"
- : "${OS_PASSWORD:?Error: must set OS_PASSWORD environment variable}"
- : "${OS_USER_DOMAIN_NAME:?Error: must set OS_USER_DOMAIN_NAME environment variable}"
- : "${OS_PROJECT_DOMAIN_NAME:?Error: must set OS_PROJECT_DOMAIN_NAME environment variable}"
- : "${OS_AUTH_URL:?Error: must set OS_AUTH_URL environment variable}"
- : "${OS_PROJECT_NAME:?Error: must set OS_PROJECT_NAME environment variable}"
- generate_post_data()
- {
- cat <<EOF
- {
- "auth": {
- "identity": {
- "methods": [
- "password"
- ],
- "password": {
- "user": {
- "domain": {
- "name": "$OS_USER_DOMAIN_NAME"
- },
- "name": "$OS_USERNAME",
- "password": "$OS_PASSWORD"
- }
- }
- },
- "scope": {
- "project": {
- "name": "$OS_PROJECT_NAME",
- "domain": {
- "name": "$OS_PROJECT_DOMAIN_NAME"
- }
- }
- }
- }
- }
- EOF
- }
- response=$(curl -is \
- -H "Accept: application/json" \
- -H "Content-Type:application/json" \
- -X POST --data "$(generate_post_data)" "$OS_AUTH_URL/auth/tokens")
- token=$(echo "$response" | awk '/X-Subject-Token/ {print $2}')
- [ -z "$token" ] && echo -e "Error fetching token:\n$response" && exit 1;
- echo "$token";
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement