Code Monkey home page Code Monkey logo

assignme's People

Contributors

ssmirr avatar

Watchers

 avatar  avatar  avatar

Forkers

assignme

assignme's Issues

Consider moving this repository to GitHub Enterprise at NC State

As this has to do with work being done for NC State's CSC program, I'd advise that it be moved inside our GitHub Enterprise instance for a number of reasons. Mainly, I wasn't able to link against related work already done in this area that might influence / promote merging development efforts.

That said, I have a command-line utility that does bulk rate-limited permissions modification already, written in PHP. Send me an email at [email protected] and I'll send you a link to it. Worst-case, it might be a source of ideas if not used at all.

INC2665400: Script working on GitHub.com but not github.ncsu.edu

@ssmirr,

Dr. Heckman opened a ticket with us to help resolve some issues with this script not functioning as expected on GitHub Enterprise. She says you have gotten the script to work as expected on GitHub.com but were not able to reproduce your results on Enterprise.

Scanning through, the procedure I found that you're using to add repositories to a team lacks the optional parameter for specifying permission. The value of this parameter can be: push, pull or admin. If unspecified, the team's permission attribute will be used to determine what the default is. By default, this permission is set to push (write) for a new organization. There is no difference in this feature between GitHub.com and GitHub Enterprise currently.

Code referenced:
https://github.com/ssmirr/AssignMe/blob/master/assignme.js#L101-L115

I suggest adjusting this PUT request to include a request body that specifies the asserted permission setting to be pull. I would also highly-advise configuring your organization's default member permissions appropriately. Otherwise, you will run into a scenario where students, by default, will have read on every organizational repository. This is obviously not what you probably want.

Additionally, when you create at team, you can specify a default permission level for all added repositories. This may or may not be useful to add to your team provisioning procedure. I would advise doing so.

Lastly, there are several very good and well thought-out GitHub clients for Node.js that you could be using rather than having to maintain your own set of procedures. This would greatly-reduce the amount of code you have to own and increase the reliability of this script through automated tests backing that client. I would highly suggest moving a script like this towards that end as it will reduce the amount of "it works on my machine" scenarios as well.

This (mikedeboer/node-github) seems to be a reasonably popular choice for Node.js and can be installed via npm. I'd consider checking it out and relying on it to interface our GitHub Enterprise installation.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.