Skip to content

Instantly share code, notes, and snippets.

@jturel
Created October 27, 2021 14:24
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jturel/2e18c3784f3abeefcbfb3905f5372e66 to your computer and use it in GitHub Desktop.
Save jturel/2e18c3784f3abeefcbfb3905f5372e66 to your computer and use it in GitHub Desktop.
ISS setup script
#!/bin/bash
set -x
HAMMER_USER=admin
HAMMER_PASSWORD=changeme
DEFAULT_ORG=Default_Organization
ISS_ORG=ISS
ISS_CA=ISS_CA
ISS_TOKEN=ISS_TOKEN
ISS_SERVER=$(hostname)
REPO_LABEL=satellite-tools-6.9-for-rhel-8-x86_64-rpms
hammer -u $HAMMER_USER -p $HAMMER_PASSWORD organization list | grep $ISS_ORG
if [ $? -eq 1 ]; then
hammer -u $HAMMER_USER -p $HAMMER_PASSWORD organization create --name $ISS_ORG
fi
ISS_ORG_ID=$(hammer -u $HAMMER_USER -p $HAMMER_PASSWORD organization show --label=$ISS_ORG | grep "Id:" | awk '{print $2}')
# create CA Content credential
#hammer -u $HAMMER_USER -p $HAMMER_PASSWORD content-credential list --organization-label=$ISS_ORG | grep $ISS_CA
#if [ $? -eq 1 ]; then
#hammer -u $HAMMER_USER -p $HAMMER_PASSWORD content-credential create --name $ISS_ORG --organization-label=$ISS_ORG
#fi
# create personal access token
ACCESS_TOKEN=$(hammer -u $HAMMER_USER -p $HAMMER_PASSWORD user access-token create --user=$HAMMER_USER --name=$ISS_TOKEN-$RANDOM | tail -1)
# update cdn config for ISS_ORG
curl http://localhost:3000/katello/api/v2/organizations/$ISS_ORG_ID/cdn_configuration -u $HAMMER_USER:$HAMMER_PASSWORD -X PUT -H 'Content-type: application/json' \
-d '{"username": "'"$HAMMER_USER"'", "password": "'"$ACCESS_TOKEN"'", "organization_label": "'"$DEFAULT_ORG"'", "url": "https://'"$ISS_SERVER"'"}'
REPO_SET_ID=$(hammer -u $HAMMER_USER -p $HAMMER_PASSWORD repository-set list --organization-label=$ISS_ORG --search "label = $REPO_LABEL" | tail -2 | head -1 | awk '{ print $1 }')
hammer -u $HAMMER_USER -p $HAMMER_PASSWORD repository-set available-repositories --id $REPO_SET_ID --organization-id $ISS_ORG_ID
hammer -u $HAMMER_USER -p $HAMMER_PASSWORD repository-set enable --organization-label=$ISS_ORG --id $REPO_SET_ID
# repo should be enabled now
hammer -u $HAMMER_USER -p $HAMMER_PASSWORD repository-set available-repositories --id $REPO_SET_ID --organization-id $ISS_ORG_ID
REPO_ID=$(hammer -u $HAMMER_USER -p $HAMMER_PASSWORD repository list --organization-id $ISS_ORG_ID | grep Satellite | awk '{ print $1 }')
hammer -u $HAMMER_USER -p $HAMMER_PASSWORD repository sync --id $REPO_ID
#hammer -u $HAMMER_USER -p $HAMMER_PASSWORD repository-set disable --organization-label=$ISS_ORG --id $REPO_SET_ID
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment