Projects STRLCPY got-your-back Commits 185fdb39
🤬
Revision indexing in progress... (symbol navigation in revisions will be accurate after indexed)
  • ■ ■ ■ ■ ■ ■
    gyb.py
    skipped 746 lines
    747 747   
    748 748  GYB_PROJECT_APIS = 'https://raw.githubusercontent.com/jay0lee/got-your-back/master/project-apis.txt?'
    749 749  def enableProjectAPIs(project_name, checkEnabled, httpc):
     750 + parent = f'projects/{project_name}'
    750 751   anonhttpc = _createHttpObj()
    751 752   headers = {'User-Agent': getGYBVersion(' | ')}
    752 753   s, c = anonhttpc.request(GYB_PROJECT_APIS, 'GET', headers=headers)
    skipped 1 lines
    754 755   print('ERROR: tried to retrieve %s but got %s' % (GYB_PROJECT_APIS, s.status))
    755 756   sys.exit(0)
    756 757   apis = c.decode("utf-8").splitlines()
    757  - serveman = googleapiclient.discovery.build('servicemanagement', 'v1',
     758 + serveu = googleapiclient.discovery.build('serviceusage', 'v1',
    758 759   http=httpc, cache_discovery=False,
    759 760   discoveryServiceUrl=googleapiclient.discovery.V2_DISCOVERY_URI)
    760 761   if checkEnabled:
    761  - enabledServices = callGAPIpages(serveman.services(), 'list', 'services',
    762  - consumerId=project_name, fields='nextPageToken,services(serviceName)')
     762 + enabledServices = callGAPIpages(serveu.services(), 'list', 'services',
     763 + parent=parent, filter='state:ENABLED',
     764 + fields='nextPageToken,services(name)')
    763 765   for enabled in enabledServices:
    764  - if 'serviceName' in enabled:
    765  - if enabled['serviceName'] in apis:
    766  - print(' API %s already enabled...' % enabled['serviceName'])
    767  - apis.remove(enabled['serviceName'])
    768  - else:
    769  - print(' API %s (non-GYB) is enabled (which is fine)' % enabled['serviceName'])
     766 + service_name = enabled.get('name', '').split('/')[-1]
     767 + if service_name in apis:
     768 + print(' API %s already enabled...' % service_name)
     769 + apis.remove(service_name)
     770 + elif service_name:
     771 + print(' API %s (non-GYB) is enabled (which is fine)' % service_name)
    770 772   for api in apis:
    771 773   while True:
    772 774   print(' enabling API %s...' % api)
     775 + service_name = f'{parent}/services/{api}'
    773 776   try:
    774  - callGAPI(serveman.services(), 'enable',
     777 + callGAPI(serveu.services(), 'enable',
    775 778   throw_reasons=['failedPrecondition'],
    776  - serviceName=api, body={'consumerId': project_name})
     779 + name=service_name)
    777 780   break
    778 781   except googleapiclient.errors.HttpError as e:
    779 782   print('\nThere was an error enabling %s. Please resolve error as described below:' % api)
    skipped 221 lines
    1001 1004   print(status['error'])
    1002 1005   sys.exit(2)
    1003 1006   break
    1004  - enableProjectAPIs(project_name, False, httpc)
     1007 + enableProjectAPIs(project_id, False, httpc)
    1005 1008   iam = googleapiclient.discovery.build('iam', 'v1', http=httpc,
    1006 1009   cache_discovery=False,
    1007 1010   discoveryServiceUrl=googleapiclient.discovery.V2_DISCOVERY_URI)
    skipped 1216 lines
Please wait...
Page is in error, reload to recover