Difference between revisions of "Dirac Development"

From GridPP Wiki
Jump to: navigation, search
(Fixing a bug/adding a feature :-))
(Replaced content with "This page is left empty in protest at not being able to delete it. <hr> [https://www.gridpp.ac.uk/wiki/Dirac Back] to the Dirac overview page.")
 
(9 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== Official Documentation ==
+
This page is left empty in protest at not being able to delete it.
[https://github.com/DIRACGrid/DIRAC/wiki/GitSetup GitSetup] <br>
+
[http://diracgrid.org/files/docs/DeveloperGuide/DevelopmentEnvironment/DeveloperInstallation/index.html DeveloperInstallation] <br>
+
[http://diracgrid.org/files/docs/DeveloperGuide/AddingNewComponents/index.html AddingNewComponents] <br>
+
  
== Dirac in a box (Basic Setup) ==
 
* Setup yourself up with a hostcert and a EMI UI, eg by following [https://www.gridpp.ac.uk/wiki/Dirac_on_a_vm_at_cern these] instructions.
 
* Open the relevant ports:
 
<pre>
 
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT
 
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9130:9200 -j ACCEPT
 
</pre>
 
* Install git (and emacs ;-).
 
* Make a dirac user, and copy the hostcert/key into .globus
 
* su - dirac
 
* Set git up correctly:
 
<pre>
 
    git config --global user.name "Your Name"
 
    git config --global user.email you@example.com
 
</pre>
 
* You also need the ssh key you use on github
 
* To save you from typos (the script does not deal well with that :-D ) use "ssh-add -t 1h"
 
* wget http://www.hep.ph.ic.ac.uk/~dbauer/dirac/dirac_in_a_box.py
 
* <pre> ./dirac_in_a_box.py /opt/dirac/ git@github.com:ic-hep </pre>
 
* Ignore "Exception _mysql_exceptions.ProgrammingError" errors
 
* [https://www.gridpp.ac.uk/wiki/Testing_a_Dirac_server Test] your server.
 
 
== Fixing a bug/adding a feature :-) ==
 
* take ownership of the [https://github.com/ic-hep/DIRAC/issues bug/feature] you want to fix
 
* make a branch: Example: The branch is bug1 and the modified file is ConfigurationSystem/Client/CSCLI.py:
 
<pre>
 
cd /opt/dirac/DIRAC
 
git status (should say "# On branch rel-v6r12")
 
git pull
 
git branch bug1
 
git checkout bug1
 
git status (should say "# On branch bug1")
 
</pre>
 
* now add your code/restart the relevant components and test your code :-)
 
<pre>
 
git add ConfigurationSystem/Client/CSCLI.py
 
git commit -m "CLI to accept ctrl-D"
 
git status
 
</pre>
 
* and push it back to github
 
<pre>
 
git push -u origin bug1
 
</pre>
 
* Now go to the git repo webpage and issue a pull request (ensuring to send the request to our (ic-hep) repo, not the main DIRAC repo - check the defaults !!)
 
*  Finally: Switch back to main branch
 
<pre>
 
git checkout rel-v6r12
 
</pre>
 
and delete the local copy of the bug1  <pre> git branch -d bug1 </pre>
 
 
<br>
 
 
<hr>
 
<hr>
 
[https://www.gridpp.ac.uk/wiki/Dirac Back] to the Dirac overview page.
 
[https://www.gridpp.ac.uk/wiki/Dirac Back] to the Dirac overview page.

Latest revision as of 14:07, 12 June 2024

This page is left empty in protest at not being able to delete it.


Back to the Dirac overview page.