You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: docs/DevEnv.md
+47
Original file line number
Diff line number
Diff line change
@@ -59,3 +59,50 @@ $ make system-test
59
59
60
60
### 6. Commit changes to your fork; submit PR
61
61
Note: This is best done outside the VM using your git credentials setup on the host.
62
+
63
+
## Frequently asked questions
64
+
65
+
### How to use Godep?
66
+
Please see [here](./GoDep.md) for working with godep
67
+
68
+
### How to trigger a Jenkins CI run on my fork?
69
+
70
+
1. Go go http://contiv.ngrok.io/view/Netplugin/
71
+
2. Click on `log in` button on top right corner and log in as user: `guest`, password: `guest`
72
+
3. Click on `Netplugin_OnDemand_Build` job
73
+
4. Click on `Build with Parameters` link on the left side
74
+
5. In `GIT_URL` field, enter the URL to your fork of netplugin
75
+
6. In `GIT_BRANCH` field, enter the branch name in your fork
76
+
7. Click `Build` button
77
+
78
+
This will checkout a tree from your fork and run full Jenkins CI on the branch.
79
+
80
+
### How to work across multiple repos like netplugin, contivmodel and ofnet
81
+
82
+
Easiest way to work across multiple repos is by doing a `godep restore` first and then make changes.
83
+
84
+
1. SSH to vagrant VM, goto `/opt/gopath/src/github.com/contiv/netplugin` directory.
85
+
2. issue `godep restore` command to restore all dependent packages into `$GOPATH`
86
+
3. go to individual repo directory, for example `github.com/contiv/ofnet` and checkout your fork of the repository.
87
+
4. Make changes to netplugin and ofnet and rebuild netplugin/netmaster using `cd /opt/gopath/src/github.com/contiv/netplugin; go install ./netplugin ./netmaster`
88
+
5. restart netplugin/netmaster using `make host-restart`
89
+
6. Test your code
90
+
7. Repeat steps 4-6 multiple times as you need
91
+
92
+
Once you are ready to commit:
93
+
94
+
1. Commit changes in ofnet/contivmodel first. Push the changes to your fork and submit pull request.
95
+
2. Once the pull request is merged, checkout the latest version of ofnet/contivmodel from contiv repo.
96
+
3. update netplugin's godeps using `godep update github.com/contiv/ofnet` or `godep update github.com/contiv/contivmodel`. Note that If you are godep updating ofnet, you need to update all ofnet packages in one command. E.g. `godep update github.com/contiv/ofnet github.com/contiv/ofnet/ofctrl github.com/contiv/ofnet/ovsdbDriver github.com/contiv/ofnet/pqueue github.com/contiv/ofnet/rpcHub`
97
+
4. Build netplugin and run unit/system tests as mentioned above
98
+
5. Commit netplugin changes and submit a pull request
99
+
100
+
### What is the development workflow with Git: Fork, Branching, Commits, and Pull Request
101
+
102
+
We follow [this](https://github.com/sevntu-checkstyle/sevntu.checkstyle/wiki/Development-workflow-with-Git:-Fork,-Branching,-Commits,-and-Pull-Request) Workflow for submitting pull requests
103
+
104
+
### How to squash all commits before submitting pull request
105
+
106
+
It is recommended that all commits in a pull requests is squashed before they can be merged. Please see [here](http://makandracards.com/makandra/527-squash-several-git-commits-into-a-single-commit) for instruction on squashing your commits
107
+
108
+
Github recently added a feature to [automatically squash all merges](https://github.com/blog/2141-squash-your-commits). We are evaluating using this. Meanwhile please continue to squash all commits in a pull request.
0 commit comments