def _send_user_email_registration(self, user: UserToCreate) -> None: response = None text = self._build_user_text(user) url = f'https://api.eu.mailgun.net/v3/{config.MAILGUN_DOMAIN}/messages' try: response = self._session.post(url=url, data={ 'from': f'lms@{config.MAILGUN_DOMAIN}', 'to': user, 'subject': ( 'Learn Python - ', _('מערכת הגשת התרגילים'), ), 'html': text, }, auth=('api', config.MAILGUN_API_KEY)) response.raise_for_status() except Exception: log.exception( 'Failed to create user %s. response: %s', user.email, response.content, ) raise
def run_registration(self): for user in self._users_to_create: try: self._get_or_create_user_in_model(user) self._send_user_email_registration(user) except Exception: log.exception( 'Failed to create user %s, continue to next user', user.email) self._failed_users.append(user)