legacy/adobe_tools/add_adobe.py (42 lines of code) (raw):

#!/usr/bin/python # Copyright (c) Facebook, Inc. and its affiliates. """Add Adobe products to user on-demand.""" import sys import adobe_api import adobe_tools target_product = sys.argv[1] me = ldap_lookup() # Replace this with your own user lookup method email = me.email firstname = me.first_name lastname = me.last_name country = 'US' def log(message): try: # Do I exist as a user? if not adobe_tools.user_exists(email): log("Creating account for %s" % email) # Add the user success = adobe_tools.add_federated_user( email, email, firstname, lastname, country ) if not success: log("Failed to create account for %s" % email) sys.exit(1) # Does the user already have the product? log("Checking to see if %s already has %s" % (email, target_product)) already_have = adobe_tools.does_user_have_product(email, target_product) if already_have: log("User %s already has product %s" % (email, target_product)) sys.exit(0) # Add desired product log("Adding %s entitlement to %s" % (target_product, email)) result = adobe_tools.add_products([target_product], email) if not result: log("Failed to add product %s to %s" % (target_product, email)) sys.exit(1) log("Done.") except adobe_api.AdobeAPIBadStatusException as e: log("Encountered exception: %s" % e) log( "You were most likely rate limited - " "this will automatically try again later. " "Alternatively, please contact Help Desk." ) exit(1)