들어가며
- 스파클링소다 4.0 설치시 setup/11.gitlab 과정에서 gitlab을 설치하고 브라우저에 접속하여 access 토큰을 발행합니다.
- 때문에 설치시 브라우저 환경이 반드시 제공되어야 하는 옵션이 필요했습니다.
- 이번 아티클은 브라우저 접속하지 않고 access 토큰을 발행하는 방법을 알아봅니다.
내용
- gitlab을 설치후 진행합니다.
- gitlab-server 파드 내부로 접속합니다.
kubectl exec -it `kubectl get po |grep -i gitlab-server |awk '{print $1}'` bash
- 파드 접속후 workdir 경로의 bin/ 디렉토리 하위로 이동합니다.
- rails 콘솔을 활성화 합니다.
sudo -u git -H bundle exec rails console -e production
출력은 아래와 같습니다.
- access 토큰을 발행합니다.
irb(main):002:0> demo = User.find_by_username("root") irb(main):003:0> demo.email => "[email protected]" irb(main):004:0> irb(main):005:0> token = demo.personal_access_tokens.create(scopes: ['api', 'read_api', 'write_repository', 'sudo', 'read_user', 'read_repository'], name: 'ned-token', expires_at: 365.days.from_now) irb(main):006:0> token.set_token('ned-token-123') => nil irb(main):007:0> token.save! => true irb(main):008:0> puts token #<PersonalAccessToken:0x00005594ae0594c8> => nil
위 내용중 사용자가 지정한 set_token('ned-token-123')의 'ned-token-123'값이 sodaflow-app에서 사용될 토큰이므로 기록해둡니다.
token = demo.personal_access_tokens.create 함수에서 토큰을 생성합니다. 각 필드는 브라우저 상에서 선택하는 api 기능을 작성하며, name 값은(설치 매뉴얼에서는 sodaflow-token으로 지정) 토큰의 이름이 됩니다.
- 오류없이 정상 수행되었다면 토큰 발급이 완료되었으므로 설치를 이어서 진행하면 됩니다.
* gitlab 브라우저 접근하여 발행된 토큰 확인이 가능합니다.
마치며
- 참고사이트 1 (gitlab-rails 명령을 사용하여 프로그래밍 방식으로 토큰 발행 가이드)
https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#create-a-personal-access-token-programmatically - 참고사이트 2 (gitlab-rails 명령 그외 기능 cheat-sheet. *rails 명령을 통해 토큰 발급외에도 gitlab-server 관리가능)
https://www.balticlsc.eu/gitlab/help/administration/troubleshooting/gitlab_rails_cheat_sheet.md#create-personal-access-token
아티클이 유용했나요?
훌륭합니다!
피드백을 제공해 주셔서 감사합니다.
도움이 되지 못해 죄송합니다!
피드백을 제공해 주셔서 감사합니다.
피드백 전송
소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.