def string_after(process, key):
lines = p.stdout.decode('utf-8').splitlines()
for i in range(0, len(lines)):
- if lines[i].find(key) != -1:
- return lines[i+1].strip().replace('<string>', '').replace('</string>', '')
-
- status = string_after(p, 'Status')
- print('%s: got status %s' % (datetime.datetime.now(), status))
- if status == 'invalid':
- raise Error("Notarization failed")
- elif status == 'success':
- subprocess.run(['xcrun', 'stapler', 'staple', dmg])
- return
- elif status != "in progress":
+ if
+
+ last_line = p.stdout.decode('utf-8').splitlines()[-1].split()
+ if last_line != 'status: Accepted':
print("Could not understand notarytool response")
print(p)
+ print(f"Last line: {last_line}")
+ raise Error('Notarization failed')
+
+ subprocess.run(['xcrun', 'stapler', 'staple', dmg])
class OSXTarget(Target):