github-collaborator-manager | A tool to manage GitHub repo collaborators with files

 by   gene1wood Python Version: Current License: AGPL-3.0

kandi X-RAY | github-collaborator-manager Summary

kandi X-RAY | github-collaborator-manager Summary

github-collaborator-manager is a Python library. github-collaborator-manager has no bugs, it has no vulnerabilities, it has build file available, it has a Strong Copyleft License and it has low support. You can download it from GitHub.

GitHub Collaborator Manager (GCM) allows you to create a file in each of your private repos which lists the collaborators that that repo should have. These collaborator files can list either GitHub users, or other repos which have collaborator files in them so that you can set a repo to have the same collaborators as another repo. Each time a collaborator file is updated, AWS Lambda updates the GitHub settings for that repo (and all dependent repos) to reflect the added or removed collaborators.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              github-collaborator-manager has a low active ecosystem.
              It has 78 star(s) with 5 fork(s). There are 5 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 3 open issues and 1 have been closed. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of github-collaborator-manager is current.

            kandi-Quality Quality

              github-collaborator-manager has 0 bugs and 0 code smells.

            kandi-Security Security

              github-collaborator-manager has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              github-collaborator-manager code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              github-collaborator-manager is licensed under the AGPL-3.0 License. This license is Strong Copyleft.
              Strong Copyleft licenses enforce sharing, and you can use them when creating open source projects.

            kandi-Reuse Reuse

              github-collaborator-manager releases are not available. You will need to build from source code and install.
              Build file is available. You can build the component from source.
              Installation instructions, examples and code snippets are available.
              github-collaborator-manager saves you 85 person hours of effort in developing the same functionality from scratch.
              It has 219 lines of code, 6 functions and 2 files.
              It has low code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed github-collaborator-manager and discovered the below as its top functions. This is intended to give you an instant insight into github-collaborator-manager implemented functionality, and help decide if they suit your requirements.
            • Fetch a list of collaborators .
            • Returns a list of the collaborators for the given repo .
            • Process AWS Lambda Event .
            • Get the collaborator file associated with a repository .
            • Validate and return the owner and repo name .
            • Convert seconds to timestamps .
            Get all kandi verified functions for this library.

            github-collaborator-manager Key Features

            No Key Features are available at this moment for github-collaborator-manager.

            github-collaborator-manager Examples and Code Snippets

            No Code Snippets are available at this moment for github-collaborator-manager.

            Community Discussions

            No Community Discussions are available at this moment for github-collaborator-manager.Refer to stack overflow page for discussions.

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install github-collaborator-manager

            Provision a GitHub personal token with repo scope permissions.
            Provision a GitHub personal token with repo scope permissions.
            Create a config.yaml with GitHub personal token. The file would look like this: github_token: 0123456789abcdef0123456789abcdef01234567
            Zip up github_collaborator_manager, it's dependencies and the config.yaml tmpdir=`mktemp -d` pip install agithub PyYAML python-dateutil --target "$tmpdir" cwd=`pwd` pushd "$tmpdir" zip -r "${cwd}/github_collaborator_manager.zip" * popd rm -rf "$tmpdir" zip --junk-paths github_collaborator_manager.zip github_collaborator_manager/__init__.py chmod 644 github_collaborator_manager/config.yaml;zip --junk-paths github_collaborator_manager.zip github_collaborator_manager/config.yaml;chmod 600 github_collaborator_manager/config.yaml
            Create an AWS IAM role to be used by a AWS Lambda function with LambdaBasicExecution echo '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"Service":["lambda.amazonaws.com"]},"Action":["sts:AssumeRole"]}]}' | aws iam create-role --role-name github-collaborator-manager --assume-role-policy-document file:///dev/stdin aws iam attach-role-policy --role-name github-collaborator-manager --policy-arn arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
            Deploy the zip artifact to Lambda role_arn="`aws iam get-role --role-name github-collaborator-manager --output text --query 'Role.Arn'`" lambda_arn="`aws lambda create-function --function-name github-collaborator-manager --runtime python2.7 --timeout 30 --role $role_arn --handler __init__.lambda_handler --zip-file fileb://github_collaborator_manager.zip --query 'FunctionArn' --output text`" echo "Created Lambda function $lambda_arn"
            Create SNS Topic topic_arn=`aws sns create-topic --name GithubWebhookTopic --output text --query 'TopicArn'` aws sns create-topic --name GithubWebhookTopic --output table --query '{"Sns topic":TopicArn}' a=(${topic_arn//:/ });echo "Sns region : ${a[3]}"
            Update Lambda function resource policy to grant SNS rights to invoke it aws lambda add-permission --function-name github-collaborator-manager --statement-id GiveSNSPermissionToInvokeFunction --action lambda:InvokeFunction --principal sns.amazonaws.com --source-arn $topic_arn
            Subscribe the Lambda function to the SNS topic aws sns subscribe --topic-arn $topic_arn --protocol lambda --notification-endpoint $lambda_arn
            Create IAM User to be used by GitHub aws iam create-user --user-name github-sns-publisher echo "{\"Version\": \"2012-10-17\",\"Statement\": [{\"Action\": [\"sns:Publish\"],\"Resource\": [\"${topic_arn}\"],\"Effect\": \"Allow\"}]}" | aws iam put-user-policy --user-name github-sns-publisher --policy-name PublishToSNS --policy-document file:///dev/stdin aws iam create-access-key --user-name github-sns-publisher --output table --query 'AccessKey.{"Aws Key":AccessKeyId, "Aws secret":SecretAccessKey}'

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/gene1wood/github-collaborator-manager.git

          • CLI

            gh repo clone gene1wood/github-collaborator-manager

          • sshUrl

            git@github.com:gene1wood/github-collaborator-manager.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link