github-education-resources / classroom

GitHub Classroom automates repository creation and access control, making it easy for teachers to distribute starter code and collect assignments on GitHub.
https://classroom.github.com
1.34k stars 565 forks source link

Automatically create team from students #533

Closed khatchad closed 8 years ago

khatchad commented 8 years ago

I would like to have a team automatically created consisting of the students in my course. Specifically, when they accept an invite into the organization, they should automatically be added to a team called "students."

dinever commented 8 years ago

Hi @khatchad,

What do you want to achieve by having all students added to a team?

The reason we are not adding all students to the organization is about the default permission level. The default permission level for GitHub organization members is read, which means students can see each other's private repo. However, we'd prefer it to be none as we don't really want students to have read access to everything in the orgnization, and there is no API for us to modify the default permission level so we have to ask teachers to set it manually, which is not very ideal.

Related: #517

khatchad commented 8 years ago

Hi @dinever,

What do you want to achieve by having all students added to a team?

I want to share solutions with the students but I do not want to make the solution public. As such, I'd like to give read-only access to such repos to the student team.

The reason we are not adding all students to the organization is about the default permission level. The default permission level for GitHub organization members is read, which means students can see each other's private repo.

Is it possible to change that level? Because, I currently have all students in a student team as part of the org and they cannot see each others repos by default.

However, we'd prefer it to be none as we don't really want students to have read access to everything in the orgnization, and there is no API for us to modify the default permission level so we have to ask teachers to set it manually, which is not very ideal.

Ah, so perhaps I set it to none. I can't remember, but currently the org is setup correctly. The only problem was that I needed to create the student team manually.

johndbritton commented 8 years ago

I want to share solutions with the students but I do not want to make the solution public. As such, I'd like to give read-only access to such repos to the student team.

We've heard this feature request before and hope to offer a solution in Classroom. You may want to subscribe to https://github.com/education/classroom/issues/527 for updates.

Is it possible to change that level? Because, I currently have all students in a student team as part of the org and they cannot see each others repos by default.

Yes, but the setting is not currently available via the GitHub API and not available to Classroom to manage for you. You can manually change the setting at https://github.com/organizations/#{your_organization_login}/settings/member_privileges under the "Default repository permission" section.

johndbritton commented 8 years ago

@khatchad Does #527 cover your use case sufficiently? I think that feature will solve your problem, even if the implementation isn't that we create a students team in your organization.

If so, we can close this issue. Otherwise, it'd be helpful if you could provide some more details around why creating a students team is the preferred solution for you.

khatchad commented 8 years ago

@johndbritton Yes, I think that #527 covers this request. I think that a students team would be useful to share multiple solutions.

johndbritton commented 8 years ago

Yes, I think that #527 covers this request. I think that a students team would be useful to share multiple solutions.

Closing this in favor of #527, thanks for the feedback @khatchad.