GithubHelp home page GithubHelp logo

ministryofjustice / operations-engineering-user-insights Goto Github PK

View Code? Open in Web Editor NEW
0.0 4.0 0.0 13 KB

To manage and analyse user activity within the Ministry of Justice's GitHub organisation. By tracking individual user interactions and contributions within teams and repositories, this system enables automated management of inactive or departed team members, enhancing security and access control.

License: MIT License

Python 100.00%
operations-engineering python

operations-engineering-user-insights's Introduction

Operations Engineering User Insights

repo standards badge

Overview

The 'operations-engineering-user-insights' repository is a part of the Ministry of Justice's initiative to automate the management of user activity within its GitHub organisation. This system efficiently tracks, analyzes, and manages user interactions within teams and repositories, enhancing both security and access control.

Features

  1. User Activity Tracking: Monitors individual user interactions, contributions, and last activity dates within teams and repositories.
  2. Inactivity Management: Automatically removes users who have been inactive for a specified period (e.g., a year and six months) or who have left the team.
  3. Notification System: Sends prompt and reliable notifications to remaining team members when a user is removed due to inactivity or departure from the team.
  4. Access Control List Maintenance: Ensures that only active and authorized team members have access to the repositories, maintaining a secure environment.

Functional Requirements

  • Develop a system that tracks the last activity of each user within the team or repository.
  • Set a rule in this system to automatically remove users who have been inactive for a year and six months or who have left the team.
  • Notify the remaining team members when a user is removed due to inactivity or leaving the team.

Non-Functional Requirements

  • The system must accurately track user activity.
  • The notification process should be prompt and reliable.

Acceptance Criteria

  • Users who have left the team or have been inactive for a year and six months are automatically removed from the team or repository.
  • The rest of the team is notified when a user is removed.

Getting Started

To get started with this project, follow the instructions below:

  1. Clone the repository.
  2. Set up the required environment variables.
  3. Install the dependencies using pip install -r requirements.txt.
  4. Run the system following the guidelines provided in the documentation.

Contributing

We welcome contributions from anyone in the community. Please read our CONTRIBUTING.md for guidelines on how to contribute.

Support and Questions

For support or any questions, please reach out to the Operations Engineering team at [email protected].

License

This project is licensed under the MIT License. See the LICENSE file for details.

operations-engineering-user-insights's People

Contributors

dependabot[bot] avatar jasonbirchall avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

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.