최신 버전으로 업그레이드하려고 하는데, 일부 테마 컴포넌트 관련 문제가 있습니다.
이들은 모두 제가 직접 만든 컴포넌트이며, GitHub에서 GitLab로 이동했습니다. 이제 discourse 내부가 아닌 외부에서 discourse를 업그레이드하려고 하면, 해당 컴포넌트가 더 이상 사용 불가능하다는 이유로 오류가 발생합니다. discourse 안에서 삭제하려고 시도했지만 삭제되지 않습니다.
지금 질문은 다음과 같습니다: 서버에서 직접 삭제할 수 있는 경로는 어디인가요? 찾지 못하고 있습니다.
safe-mode를 시도해 보았지만, safe-mode에서는 포럼에 접근할 수 없습니다.
수정:
app.yml과 같이 모든 테마와 컴포넌트가 저장된 파일이 있는지요? 있다면 그 목록을 삭제한 후 discourse를 다시 구축하여 해당 컴포넌트 없이 실행할 수 있을까요?
이렇게 하면 Discourse가 무한 루프에 빠지기 때문에 불가능합니다. 그래서 다른 방법으로 삭제하는 법을 물어본 것입니다.
안전 모드에도 진입할 수 없습니다.
백업이 너무 오래되어 재설치도 불가능합니다. ./launcher rebuild app을 실행한 후, 게스트가 포럼에 접근할 수 없음을 확인했습니다.
rake themes:uninstall https://github.com/link/to/git.git
rake aborted!
Don't know how to build task 'themes:uninstall' (See the list of available tasks with `rake --tasks`)
Did you mean? themes:install
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
(See full trace by running task with --trace)
아니면 rake로 항목을 삭제하는 올바른 명령어는 무엇인가요?
rake --tasks와 rake -AT를 사용하면 명령어 목록을 볼 수 있지만, 테마나 컴포넌트를 삭제하는 명령어는 없습니다.
rails c를 사용하면 테마를 비활성화할 수는 있지만, 재시작해도 여전히 이전의 손상된 테마가 유지됩니다.
나도 이 문제에 대해 한동안 생각해 왔는데, 내 의견은 일부 커뮤니티에는 적합하지만 모든 커뮤니티에는 그렇지 않다는 것입니다. 일부 커뮤니티는 사용자 정의/테마를 사이트 정체성의 근본적인 부분으로 취급하며, 사이트 배포 시 사용자 정의 설정에 문제가 있는지 정말로 알고 싶어 합니다. 반면 다른 커뮤니티는 바닐라 Discourse 설치에 몇 가지 사용자 정의/컴포넌트를 살짝 얹어 사용하는 경우가 많으며, 며칠간 이러한 요소 없이도 충분히 운영할 수 있습니다.
아마도 Auto update when Discourse is updated 체크박스는 새로운 테마/컴포넌트를 설치할 때 기본적으로 꺼져 있어야 하지 않을까요? 현재는 기본적으로 켜져 있는데, 기본적으로 꺼져 있어야 한다고 생각합니다. 하지만 이 부분은 더 넓은 논의가 필요합니다…
아니요, 위 코드 스니펫(특히 2번째 줄)은 현재 설치된 모든 테마/컴포넌트에 대해 배포 시 자동 업데이트를 비활성화하므로, 테마 자동 업데이트로 인한 JS/CSS 오류를 포함한 모든 빌드 문제를 해결해야 합니다. #howto에는 2번째 줄만 포함해야 합니다.