def forwards(self, orm): from sentry.models import ProjectKey for project in orm['sentry.Project'].objects.all(): if orm['sentry.ProjectKey'].objects.filter(project=project, user=None).exists(): continue orm['sentry.ProjectKey'].objects.create( project=project, public_key=ProjectKey.generate_api_key(), secret_key=ProjectKey.generate_api_key(), )
def test_relay_nonexistent_project(call_endpoint, projectconfig_cache_set, task_runner): wrong_public_key = ProjectKey.generate_api_key() with task_runner(): result, status_code = call_endpoint(full_config=True, public_keys=[wrong_public_key]) assert status_code < 400 assert result == {"configs": {wrong_public_key: {"disabled": True}}} assert projectconfig_cache_set == [{str(wrong_public_key): result["configs"][wrong_public_key]}]
def test_relay_disabled_project( call_endpoint, default_project, projectconfig_cache_set, task_runner ): default_project.update(status=ObjectStatus.PENDING_DELETION) wrong_public_key = ProjectKey.generate_api_key() with task_runner(): result, status_code = call_endpoint(full_config=True, public_keys=[wrong_public_key]) assert status_code < 400 assert result == {"configs": {wrong_public_key: {"disabled": True}}} assert projectconfig_cache_set == [{str(wrong_public_key): result["configs"][wrong_public_key]}]
def save(self, *args, **kwargs): if not self.public_key: self.public_key = ProjectKey.generate_api_key() if not self.secret_key: self.secret_key = ProjectKey.generate_api_key() super(ProjectKey, self).save(*args, **kwargs)