Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Title it something descriptive, paste in the output you got from cat, and save it! 

 

PyDM

Tutorial

Go to https://github.com/slaclab/devPanel

Click "Fork" in the upper right

...

corner

 Image Modified

Click the link that says [Your User Name]/devPanel (Mine says that I've already forked it, but yours should ask you where you want to fork it)

Image Modified

Click the green "Clone or Download" button and copy the ssh path. If you see what looks like a URL, click the blue "Use SSH" link right above it

Image Modified

Back on an OPI (or ssh'ed in), type "set_profile [Your Username]". This should take you to your personal physics directory. Make a new devPanel subdirectory

Image Modified

In that subdirectory, run "git init"

Image Modified

Still in that subdirectory, type "~/mgibbs/link_repo_to_github/link_repo_to_github.sh -i" and follow the prompts (if you don't feel like thinking about the AFS repo, you can use this default, but you should paste in the GitHub ssh link you got in Step 4 for your fork or you'll connect to mine! You'll get slightly different messages since I've already run this before)

Image Modified

Type "git pull origin master" and type in your password when prompted (again, messages will be slightly different since I've done this before)

Image Modified

Type "source use_pydm.sh"

 Image Modified

Type "mkdir [Your Name]" and head into that directory

 Image Modified

Type "designer &"

 Image Modified

Sometimes you get an error saying something about backup files. Ignore it(: In the program that opens, click "Widget" and then "Create"

 Image Modified

In the Widget box on the left, scroll all the way down and drag a drop a PyDMShellCommand somewhere in the widget that popped up in the last step

Image Modified

Right click anywhere in the widget that isn't the tiny shell command button, hover over "layout" at the bottom, and click "lay out in a grid"

 Image Modified

In the Object Inspector in the top right, rename that button something more descriptive by double clicking it, typing the new name, and pressing

...

enter

 Image Modified

Right click the button itself and click "Change text..."

 Image Modified

Rename it something more descriptive and press

...

enter

 Image Modified

In the property/value table in the middle right, scroll all the way down to "commands," double click the value box (it'll be blank at first, and then it'll be a button that says "Change String List"), Click "New", type "pydm ~/opsTools/devPanel/example/example.py", then click "OK". This will launch the production example panel!

 Image Modified

Save this file as devPanel[Your Name].ui

Image Modified

From here, open opsDevPanel.ui from the parent directory (~/[your username]/devPanel)

Image Modified

Drag and drop a PyDMRelatedDisplayButton onto the newly opened devPanel.

...

ui

 Image Modified

Right click rename the button itself and its object name like before

Image Modified

Add the path to your personal dev panel in your subdirectory and

...

save

 Image Modified

Back in your terminal in the devPanel directory, run "pydm opsDevPanel.ui" and you should see your creation! Feel free to play with it until it looks good to you!

Image ModifiedImage ModifiedImage Modified

Run "git status" to see what's changed. It should be opsDevPanel.ui and a new folder with your name

Image Modified

Run "git add [YOUR NEW FOLDER]" and "git add opsDevPanel.ui", then run another git status. They should both be staged for commit 

Image Modified

run git commit -m "adding [YOUR NAME]'s dev panel"

Image Modified

Run "git push origin master" and log in when

...

prompted

 Image Modified

Back on your fork on GitHub, click "New Pull Request"

 Image Modified

Click "Create Pull Request"

Image Modified

Add slaclab/ops as a reviewer (by clicking on the gear and then searching), and then click "Create pull request"

Image Modified

An admin will look at it to make sure that nothing important got deleted, and if they approve it, they'll merge it into production!