Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   IT / Communications (http://www.chiefdelphi.com/forums/forumdisplay.php?f=85)
-   -   Team 254 Open-Source Release: Cheesy Parts (http://www.chiefdelphi.com/forums/showthread.php?t=117806)

Andrew Schreiber 25-07-2013 15:15

Re: Team 254 Open-Source Release: Cheesy Parts
 
Quote:

Originally Posted by Jon Jack (Post 1284278)
If you were interested in just checking in and out files, then yes you could use Git. However, Git is intended to be used with text files, not binary files like the ones created by SolidWorks.

In SolidWorks different files are associated with each other. For example, an Assembly will have many parts associated with it. Git has no way of recognizing these types of relationships. So if I'm using Git and I wanted to check out an assembly and all the parts associated with it, then I'd have to manually check out each part. If I wanted to do this in PDM then all I'd have to do is check out the assembly and check a box that checks out all associated files.

There is a tool called git-annex that is meant to work with large binary files. I haven't personally set up a repository but I have had the experience of using it for a project at work. We were using it to track multiple terabytes of video data and it worked well.

jacob9706 25-07-2013 15:30

Re: Team 254 Open-Source Release: Cheesy Parts
 
Looks handy!
One sugestion I have is add the ability to upload a photo for each part. This would be great if students did not know a part by name and were able to see a cad drawing or a picture from a previous season related to the part when they clicked on a part!
Simple to implement but will drasticly improve the look and feel of the "part description" page!

Pat Fairbank 26-07-2013 01:25

Re: Team 254 Open-Source Release: Cheesy Parts
 
Quote:

Originally Posted by Zach O (Post 1284466)
Just got it running. Thanks Pat - this looks awesome.

Quick support question: When I try restarting/stopping/starting (after the first time) it using the parts_server_control script, I get an error

https://gist.github.com/ZachOrr/6081673

Suggestions?

Zach, I can't reproduce this -- maybe it's something to do with the way RVM handles gems? I just realized I'm not requiring "bundler/setup" at the top of the control script like I should be, so maybe just running it as "bundle exec ruby parts_server_control.rb" will do the trick.

Zach O 26-07-2013 11:10

Re: Team 254 Open-Source Release: Cheesy Parts
 
Quote:

Originally Posted by Pat Fairbank (Post 1284588)
Zach, I can't reproduce this -- maybe it's something to do with the way RVM handles gems? I just realized I'm not requiring "bundler/setup" at the top of the control script like I should be, so maybe just running it as "bundle exec ruby parts_server_control.rb" will do the trick.

Weird - running "bundle exec ruby parts_server_control.rb restart" told me it couldn't find the gems it needed, and prompted me to "bundle install", in which it reinstalled all the gems and will restart/start/stop properly now (with or without the bundle exec in front of the ruby command).

I wonder how I got it running in the first place. Anyways. Thank Pat!

DampRobot 26-07-2013 14:58

Re: Team 254 Open-Source Release: Cheesy Parts
 
Is rubygems.org down a lot? For some reason, it looks like I can't connect to it, and I can't ping it, although the rubygems.org site works just fine.

craigboez 13-08-2013 16:17

Re: Team 254 Open-Source Release: Cheesy Parts
 
254

Thanks for posting this. Its obvious that a lot of effort went into the development of this system. I've just finally gotten around to playing around with the working demo and am very impressed. While tinkering I came up with a few questions:
  • How do you integrate this with your purchasing group to procure all the raw materials and parts? It looks like some of the parts just have descriptions while some add a part number and/or manufacturer name. How does the person purchasing know what to order and where from?
  • Who is in charge of setting up new parts, choosing when to group things into a subassembly, what to name something, etc?
  • Who keeps this updated throughout the season? Is it one single person, a group? Is it updated hourly, daily, weekly?
  • Did this system solve the issues you were attempting to address?

My team tends to run pretty lean, and often the same mentors aren't there on consecutive nights. When that happens things slow down as we try to figure out what needs to happen next. A system like this could really help us keep things more focused from night to night. I'm curious to learn more about how you used it and how well it worked.

Pat Fairbank 14-08-2013 01:29

Re: Team 254 Open-Source Release: Cheesy Parts
 
Quote:

Originally Posted by craigboez (Post 1287117)
254

Thanks for posting this. Its obvious that a lot of effort went into the development of this system. I've just finally gotten around to playing around with the working demo and am very impressed. While tinkering I came up with a few questions:
  • How do you integrate this with your purchasing group to procure all the raw materials and parts? It looks like some of the parts just have descriptions while some add a part number and/or manufacturer name. How does the person purchasing know what to order and where from?
  • Who is in charge of setting up new parts, choosing when to group things into a subassembly, what to name something, etc?
  • Who keeps this updated throughout the season? Is it one single person, a group? Is it updated hourly, daily, weekly?
  • Did this system solve the issues you were attempting to address?

My team tends to run pretty lean, and often the same mentors aren't there on consecutive nights. When that happens things slow down as we try to figure out what needs to happen next. A system like this could really help us keep things more focused from night to night. I'm curious to learn more about how you used it and how well it worked.

Craig,

We didn't have purchasing integration for 2013, but we're working on it for 2014. We kept track of parts needing to be ordered in a Google spreadsheet, and someone would periodically check Cheesy Parts and make sure everything that was in "needs to be ordered" status was added to the spreadsheet. Obviously, this was a bit painful.

The designers each make the naming/grouping decisions for the parts that they are working on. The addition of the parts to the system is done sometime between when a file is created and when it is first saved to PDM. You can't really save something without knowing what to call it, and so since Cheesy Parts assigns the part numbers this pretty much enforces itself.

Everyone on the team has access to the system, so the responsibility for keeping it updated is shared. Generally, whoever worked on the part last is responsible for updating its status accordingly. This wasn't totally successful, but the worst offenders were some of the mentors...

I can't speak for the rest of the team, but in the project manager / shop supervisor role that I mostly find myself in during build season, it was a huge help when confronted with a bunch of students to find tasks for, and in keeping the stress levels down.

AdamHeard 14-08-2013 20:11

Re: Team 254 Open-Source Release: Cheesy Parts
 
For someone who has no idea what they're doing with websites, someone mind posting instructions on how to install this? As if I were five please.

DampRobot 14-08-2013 20:57

Re: Team 254 Open-Source Release: Cheesy Parts
 
Quote:

Originally Posted by AdamHeard (Post 1287294)
For someone who has no idea what they're doing with websites, someone mind posting instructions on how to install this? As if I were five please.

For just installing, see one of my previous posts on this thread. I have pretty much zero programming experience, so hopefully my instructions make sense for you.

Just FYI, I've had trouble reinstalling it after Pat updated the software, and haven't gotten it working since.

nicolelin 26-04-2014 03:13

Re: Team 254 Open-Source Release: Cheesy Parts
 
Quote:

Originally Posted by Zach O (Post 1284091)
Just curious - has anyone tried setting this up locally yet?

Yeah, my team is going to try to integrate this system into our management of parts. We've got it running on Linux (Ubuntu). It's much easier to install MySQL and actually start playing around with it

This is a super great idea, and thanks to the Poofs for releasing this open-source.

schlegels 20-10-2014 09:42

Re: Team 254 Open-Source Release: Cheesy Parts
 
Quote:

Originally Posted by AdamHeard (Post 1287294)
For someone who has no idea what they're doing with websites, someone mind posting instructions on how to install this? As if I were five please.

I'm in the same boat as you. I am hesitate to try and follow DampRobot's instructions unless I can get confirmation that he has been able to get it working again. Our kids would really like to get this up and running for the team but I'm not sure how to get it installed.

marshall 20-10-2014 10:44

Re: Team 254 Open-Source Release: Cheesy Parts
 
Quote:

Originally Posted by Pat Fairbank (Post 1284089)
Yeah, PDM integration is something I'd like to add if possible. One issue we have is Cheesy Parts getting out of sync with the CAD because some people are too lazy to create entries in it before saving their parts to PDM (cough EJ cough), so being able to query PDM and automagically create Cheesy Parts entries in that case would be nice. It's not going to be a walk in the cake, though, since the only way I've heard of to integrate with PDM is through some .NET DLL.

We're using a t1.micro EC2 instance running Ubuntu 12.04. It would probably be fairly trivial to deploy Cheesy Parts instead as a Heroku or AppFog app, though -- I just like the extra control that a virtual private server provides.

Thank you for posting this!

We're going to deploy this on Heroku and try to set it up. Our lead CAD mentor might be in touch with you guys for running PDM. We had a lot of issues with it last year and have abandoned it for now (Using Google Drive instead).

Also, for what it is worth, https://www.digitalocean.com is cheaper than Amazon for micro instance sized stuff and provides roughly the same amount of control. We run our primary site off of digital ocean. It's really because I'm a Linux Container nerd though and not so much about the price.

Also, it just so happens our other main mentor is a Ruby wizard so she is taking on setting this up on Heroku.

Again, thank you for posting this.

Jared 26-10-2014 17:08

Re: Team 254 Open-Source Release: Cheesy Parts
 
I'm having a hard time installing this. I've done it in the past on ubuntu, and everything worked the first time perfectly, but now I'm installing it on new machine, which doesn't have all the dependencies I usually work with.

When I run "bundle exec rake db:migrate", it fails, with the error "cannot load such file -- db". I've tried with ruby 1.9.1 and 1.9.3, and the same error happens. What am I missing?

Jared 26-10-2014 18:32

Re: Team 254 Open-Source Release: Cheesy Parts
 
Quote:

Originally Posted by Jared (Post 1405804)
I'm having a hard time installing this. I've done it in the past on ubuntu, and everything worked the first time perfectly, but now I'm installing it on new machine, which doesn't have all the dependencies I usually work with.

When I run "bundle exec rake db:migrate", it fails, with the error "cannot load such file -- db". I've tried with ruby 1.9.1 and 1.9.3, and the same error happens. What am I missing?

Things are messed up with relative paths in the requires for some reason.
I solved it by removing line 16 in the Rakefile (require "db"), and replacing
Code:

Sequel::Migrator.run(DB, "db/migrations")
with
Code:

Sequel::Migrator.run(Sequel.mysql2({ :host => "**host**", :user => "**mysql user**", :password => "**mysql  password**", :database => "**mysql database**" }), "db/migrations")
Replace the things surrounded by *'s with the actual values.

There was also an issue with require in the add starting user file. I needed to add a ./ before the path name.

Finally, the version of sequel (the ruby gem) that installed automatically was totally the wrong version and needed to be updated.


All times are GMT -5. The time now is 15:08.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi