GithubHelp home page GithubHelp logo

tps-report's Introduction

"Third Party Software" Report

Table of Contents

  1. About the Project
  2. Project Status
  3. Getting Started
  4. Deployment
  5. Contributing

About the Project

"Third Party Software" Report is a web-based application designed to provide a heat map of in-use third party software to software development teams.

This solves the pain point of having to consciously stay on top of new releases for all the software they may have in use.

image

Project Status

Actions Status

Getting Started

System dependencies

  • Node.js v12.16.2 + Yarn
  • Ruby v2.6.3

Quick Start

  1. Run setup script to install Gem dependencies, JavaScript dependencies, and bootstrap a local SQLite Database
bin/setup
  1. Before making changes, run tests to make sure all dependencies are satisfied and applications works correctly.
bin/rspec
  1. Run the application.
bin/rails server
  1. Go to http://localhost:3000

Deployment

TBD

Contributing

We encourage you to contribute to TPS Report! Please check out the Contributing page for guidelines about how to proceed.

tps-report's People

Contributors

dependabot[bot] avatar jadametz avatar praymann avatar

Watchers

 avatar  avatar

tps-report's Issues

in_use_release has to be an exact match of the tag/release, else the ReconcileSoftware fails

The bug here exposes itself is a weird way too, as the Software still successfully creates even though a "Create Failed" message is surfaced to the end-user. If they try again, they just get a 422 response since that org/name is already taken.

It might be slick here to catch this, and try again with a v#{in_use_release} to see if the end-user just forgot about the repository's naming convention.

Started POST "/api/v1/software/create" for ::1 at 2020-08-14 09:48:24 -0500
Processing by Api::V1::SoftwareController#create as JSON
  Parameters: {"name"=>"kops", "org"=>"kubernetes", "full_name"=>"kubernetes/kops", "in_use_release"=>"1.16.2", "software"=>{"name"=>"kops", "org"=>"kubernetes", "full_name"=>"kubernetes/kops", "in_use_release"=>"1.16.2"}}
Unpermitted parameters: :format, :software
   (0.0ms)  begin transaction
  ↳ app/controllers/api/v1/software_controller.rb:8
  Software Exists (0.2ms)  SELECT  1 AS one FROM "softwares" WHERE "softwares"."name" = ? AND "softwares"."org" = ? LIMIT ?  [["name", "kops"], ["org", "kubernetes"], ["LIMIT", 1]]
  ↳ app/controllers/api/v1/software_controller.rb:8
  Software Exists (0.1ms)  SELECT  1 AS one FROM "softwares" WHERE "softwares"."full_name" = ? LIMIT ?  [["full_name", "kubernetes/kops"], ["LIMIT", 1]]
  ↳ app/controllers/api/v1/software_controller.rb:8
  Software Create (2.0ms)  INSERT INTO "softwares" ("name", "org", "full_name", "created_at", "updated_at", "in_use_release") VALUES (?, ?, ?, ?, ?, ?)  [["name", "kops"], ["org", "kubernetes"], ["full_name", "kubernetes/kops"], ["created_at", "2020-08-14 14:48:24.348402"], ["updated_at", "2020-08-14 14:48:24.348402"], ["in_use_release", "1.16.2"]]
  ↳ app/controllers/api/v1/software_controller.rb:8
   (1.1ms)  commit transaction
  ↳ app/controllers/api/v1/software_controller.rb:8
[ActiveJob] [ReconcileSoftware] [097ca3d3-c869-431f-b448-05a85257e07a] Performing ReconcileSoftware (Job ID: 097ca3d3-c869-431f-b448-05a85257e07a) from Async(default) with arguments: #<GlobalID:0x00007ff798bcac18 @uri=#<URI::GID gid://tps-report/Software/9>>
[ActiveJob] [ReconcileSoftware] [097ca3d3-c869-431f-b448-05a85257e07a] Error performing ReconcileSoftware (Job ID: 097ca3d3-c869-431f-b448-05a85257e07a) from Async(default) in 1396.76ms: NoMethodError (undefined method `published_at' for nil:NilClass):
/Users/dpramann/repos/tps-report/app/models/software.rb:34:in `reconcile_with_github'
/Users/dpramann/repos/tps-report/app/models/software.rb:14:in `reconcile!'
/Users/dpramann/repos/tps-report/app/jobs/reconcile_software.rb:5:in `perform'
/Users/dpramann/.rvm/gems/ruby-2.6.3/gems/activejob-5.2.4.2/lib/active_job/execution.rb:39:in `block in perform_now'
/Users/dpramann/.rvm/gems/ruby-2.6.3/gems/activesupport-5.2.4.2/lib/active_support/callbacks.rb:109:in `block in run_callbacks'

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.