name = generate_random_name(); } public function createGitHubApp() { try { $this->validate([ "name" => 'required|string', "organization" => 'nullable|string', "api_url" => 'required|string', "html_url" => 'required|string', "custom_user" => 'required|string', "custom_port" => 'required|int', "is_system_wide" => 'required|bool', ]); $payload = [ 'name' => $this->name, 'organization' => $this->organization, 'api_url' => $this->api_url, 'html_url' => $this->html_url, 'custom_user' => $this->custom_user, 'custom_port' => $this->custom_port, 'team_id' => currentTeam()->id, ]; if (isCloud()) { $payload['is_system_wide'] = $this->is_system_wide; } $github_app = GithubApp::create($payload); if (session('from')) { session(['from' => session('from') + ['source_id' => $github_app->id]]); } return $this->redirectRoute('source.github.show', ['github_app_uuid' => $github_app->uuid], navigate: true); } catch (\Throwable $e) { return handleError($e, $this); } } }