SAML 플러그인 문제를 해결했습니다
… 이것은 omniauth나 ruby-saml gem/라이브러리의 문제가 아니라 플러그인 자체의 문제입니다. (제가 무엇을 했는지 문서화를 시도할 것입니다. 기본적으로 불충분하고 오해의 소지가 있는 문서화와, 적절한 디버깅 없이 이루어진 일부 기이한 프로그래밍 솔루션, 그리고 일부 주석 추가가 원인입니다. 하지만 이슈 시스템이 없으면 이해하기 어려운 방식입니다.)
주제를 벗어나지 않기 위해, (제 제한적인 Discourse와 Ruby 지식을 바탕으로) 다음과 같이 진행할 것을 제안합니다:
- 컨테이너 파일(containers/app.yml)을 수동으로 편집합니다.
- 힌트: 컨테이너에 다른 이름을 사용하고 싶다면, containers 디렉터리에서 파일 이름을 변경하고, 해당 경로의 모든 명령을 실행하여 앱을 <your_name>으로 변경할 수 있습니다. (다른 방법으로 가능할 수도 있지만, 조사할 시간이 없었습니다.)
- GitHub에서 플러그인을 자신의 공간으로 포크하여 코드를 조작할 수 있습니다. 컨테이너 구성 파일에서 다른 어떤 플러그인과 동일한 방식으로 항상 호출할 수 있습니다.
- 많은 곳에
File.write('/var/www/discourse/log/production.log', 'Some text', mode: 'a')를 단순히 추가할 수 있으며, 이는 코드 해석이 해당 부분에 도달할 때마다 로그 파일에 기록됩니다. - Discourse를 개선하고 싶다면 GitHub에서 Discourse 프로젝트를 포크하고 자신의 위치에서 클론할 수도 있습니다.