Skip to content

dyte-submissions/dyte-vit-2022-SnowSword1010

Repository files navigation

Open in Visual Studio Code

Contributors Forks Stargazers Issues MIT License LinkedIn

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage

About The Project

github_username: SnowSword1010, repo: dyte-vit-2022-SnowSword1010, twitter_handle: @jmayank2001, linkedin_username: mayank-1010, email_client: mayank.jain2019a@vitstudent.ac.in, email: jmayank2001@gmail.com, project_title: Dyte-CLI-App, project_description: A Cli tool for managing release process

(back to top)

Built With

(back to top)

Getting Started

Given a list of Github repositories, assuming all of them are node js projects with a package.json and package-lock.json in the root, and the name and version of a dependency, we want to give the current version of that dependency and tell if the version is greater than or equal to the version specified or not.

Secondly, for all the repositories that have the version lower than the one specified, if passed as additional param, let’s say -update, it should create a PR updating the version.

Prerequisites

  • Have python installed

Installation

  1. Clone the repo
    git clone https://github.com/dyte-submissions/dyte-vit-2022-SnowSword1010.git
  2. Create virtual environment
  python3 -m venv venv
  1. Activate virtual environment
source venv/bin/activate
  1. Install requirements
    pip3 install -r requirements.txt

(back to top)

Usage

  python3 main.py [-h] [-update] --i csv_filename --d dependency_name

h flag (optional): help update flag (optional): sets the update flag to true which comes in required when we want to update the dependency version to the one specified by the user. NOTE: Although the project demanded the creation of pull requests, I could not implement the entire thing due to time constraints. I cloned the repo and made changes into it locally instead.

--i flag (mandatory): used to specify the csv file name where data would be read from. --i examples/example1.csv could be used to test the utility. --d flag (mandatory): used to specify the dependency name. --d axios@0.23.4 can be used to test the utility

Flow Diagram: Flow diagram of the command line utility

Sample usage command:

  python3 main.py -h
  python3 main.py --i examples/example1.csv --d axios@0.23.4
  python3 main.py -update --i examples/example1.csv --d axios@0.23.4

Sample Screenshots

  1. Help Help menu

  2. Compare Versions Comparing dependency version

  3. Update Versions Updating dependency version

  4. A foreign version is provided (which does not exist in the project) Dependency not found message

  5. Mandatory paramters not specified Not enough params error message

Contact

Your Name - Mayank Jain @SnowSword1010 - mayank.jain2019a@vitstudent.ac.in

Project Link: https://github.com/dyte-submissions/dyte-vit-2022-SnowSword1010

(back to top)

About

dyte-vit-2022-SnowSword1010 created by GitHub Classroom

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages