GitHub OAuth를 추가하면 GitHub 로그인이 활성화 되고, 대시보드 사용자는 연동한 GitHub 계정의 저장소를 선택해 서비스를 배포할 수 있게 됩니다.


GitHub Apps 생성

GitHub에 로그인 후, Settings > Developer Settings > GitHub Apps 페이지에서 New GitHub App을 클릭하면, GitHub App 생성 과정이 시작됩니다.

기본정보 입력

GitHub App을 생성하기 위한 정보를 아래와 같이 입력하세요.

  • GitHub App name : GitHub App 이름
  • Homepage URL
    • GitHub OAuth를 적용할 홈페이지 URL
    • Ingress로 배포한 URL인 https://app.[도메인]
  • Callback URL(Add Callbak URL로 항목 추가)
    • https://app.[도메인]/api/oauth/github/callback
    • https://app.[도메인]/api/oauth/github/connect/callback

이 화면에서 입력한 GitHub App nameale 에 GitHub OAuth 등록시 사용됩니다.

https://app.[도메인]/api/ale 의 API엔드포인트 주소입니다.

Webhook 비활성화

Webhook 항목의 Active 체크를 해제하여 비활성화하세요.

권한 부여 및 APP 생성

Permission 항목에서 아래의 권한을 부여하고, Create GitHub App 버튼으로 APP을 생성하세요.

GitHub App 정보 조회

ale 에 GitHub OAuth를 추가하기 위해 GitHub App Name 이외에 4개의 ID, Key 값이 필요합니다.

  • App ID
  • Client ID
  • Cleint Secret
  • Private Key

App ID, Client ID 조회

권한 부여 후 App이 생성되면, App ID 와 Client ID를 조회할 수 있습니다.

Client Secret 조회

같은 화면에서 Generate a new client secret을 클릭해 Client Secret을 생성하고 조회하세요.

Private Key 조회

화면 하단부의 Generate a private key를 클릭하면 pem 파일이 다운로드 됩니다.

GitHub App 공개 설정

생성된 GitHub App의 공개 설정에 관한 기본값은 비공개이며, App을 생성한 계정이 속한 조직의 사용자만 GitHub App을 사용할 수 있게됩니다. GitHub 조직과 상관없이 GitHub App을 사용할 수 있게 하려면 아래를 참고하세요.

ale 운영 시스템에 등록

운영 시스템에 접속해 설정 > 인증수단 > GitHub 드롭다운을 클릭한 후, 앞 단계에서 조회한 값들을 각 필드에 입력하고 적용하기를 클릭하세요.

  • 로그인 사용 : OAuth 로그인 적용 여부
  • APP_NAME : GitHub App 이름
  • APP_ID : App ID
  • CLIENT_ID : Client ID
  • CLIENT_SECRET : Client secret
  • APP_PRIVATE_KEY: Private ket pem 파일 값

적용 완료 후 대시보드에 접속하면 다음과 같이 GitHub 계정으로 로그인 버튼이 표시됩니다.

Github 계정으로 로그인

사용자의 첫번째 GitHub login 시, Authorize [GitHub App 이름]를 클릭하면 가입 신청이 진행되고, 관리자 승인 관련 메세지가 표시됩니다.

가입 신청한 사용자의 승인(활성화)는 사용자 관리 페이지를 참고하세요.

만약 브라우저에 로그인 된 GitHub 계정이 GitHub App을 생성했던 계정과 동일하다면 위와 같은 창이 표시되지 않습니다. 새로운 브라우저 세션에서 GitHub App을 생성했던 계정이 아닌 다른 GitHub 계정으로 인증을 진행하세요.

GitHub App을 비공개로 설정한 경우, 로그인하려는 다른 계정이 GitHub App을 생성한 계정의 조직에 속해있어야 GitHub 계정으로 로그인할 수 있습니다.

관리자 승인 이후 GitHub login을 시도하면 가입 완료하기 페이지가 표시됩니다. 스페이스 및 이름을 적절하게 작성하고 완료하기를 클릭하세요.

대시보드 접속과 함께 지정한 이름의 스페이스가 생성되며, 운영 시스템에서 미리 정한 Default 값의 리소스가 부여됩니다.

사용자 등록 및 관리에 관한 내용은 사용자 관리 페이지를 참고하세요.