팀과 역할
하나의 조직에서 여러 프로젝트를 관리하며, 각 멤버에게는 세 가지 역할 중 하나를 지정합니다.
프로젝트는 항상 조직(org)에 속합니다. 처음 로그인하면 개인 조직이 생성되며, 조직 slug는 배포 주소의 뒤쪽 이름에 사용됩니다.
runlot org create acme "Acme Inc."
runlot org listname을 생략하면 slug를 조직 이름으로 사용합니다.
역할
| 역할 | 권한 |
|---|---|
admin | 모든 작업: 멤버 관리, 삭제, 복원, 접근 제어 변경 |
member | 배포, 마이그레이션, 시크릿 관리, 로그 조회 |
viewer | 목록, 로그, 사용량 등 읽기 작업 |
복원, 데이터 삭제, 접근 제어 변경처럼 되돌릴 수 없거나 데이터에 영향을 주는 명령(pg restore, pg delete, storage delete, auth delete, access set)은 admin만 실행할 수 있습니다.
초대
이메일 주소 하나만 있으면 됩니다. 상대방이 Runlot에 가입한 적이 없어도 초대할 수 있습니다.
runlot member invite [email protected] --role member --org acme
runlot member invites --org acme
runlot member uninvite [email protected] --org acme대시보드에서는 조직의 멤버 탭에서 같은 일을 할 수 있습니다.
초대 메일에는 수락 링크가 하나 들어 있습니다.
- 링크는 7일 뒤에 만료됩니다.
- 한 번만 사용할 수 있습니다.
- 관리자가 언제든 취소할 수 있으며, 아직 발송되지 않은 메일은 발송되지 않습니다.
같은 주소로 다시 초대하면 새 초대가 만들어지지 않고 기존 초대가 다시 발송됩니다. 이때 링크가 새로 발급되므로 이전 링크는 더 이상 동작하지 않습니다. 역할을 바꿔서 다시 보내면 새 역할이 적용됩니다.
메일 발송은 잠시 뒤에 이루어집니다. 목록에서 보내는 중으로 보이면 아직 발송 대기 중이라는 뜻입니다.
이미 조직의 멤버인 사람이 초대 링크를 열면 역할은 바뀌지 않습니다. 역할을 바꾸려면 아래 member role을 사용하세요.
멤버 관리
runlot member ls --org acme
runlot member role [email protected] viewer --org acme
runlot member rm [email protected] --org acme
runlot member leave --org acmemember role과 member rm은 admin만 실행할 수 있습니다. member leave는 역할과 관계없이 누구나 실행할 수 있습니다. 스스로 조직에서 나가는 것은 다른 사람의 권한을 바꾸지 않기 때문입니다.
조직의 마지막 admin은 역할을 낮추거나 제거할 수 없고, 스스로 나갈 수도 없습니다. 조직을 관리할 사용자가 남지 않기 때문이며, 시도하면 last_admin 오류가 발생합니다. 나가려면 먼저 다른 사람을 admin으로 지정하세요.
runlot org add-member는 계속 사용할 수 있지만, 이미 로그인한 적이 있는 계정을 provider:subject로 지정해야 하는 자동화용 명령입니다. 사람을 부를 때는 member invite를 사용하세요.
대상 조직 선택 순서
CLI는 다음 우선순위로 대상 조직을 선택합니다.
--org옵션runlot.json의"org"값- 둘 다 없으면 오류
org, dns, domains처럼 조직 단위로 동작하는 명령은 프로젝트 디렉토리와 관계없이 실행하므로 --org 옵션을 지정해야 합니다.