jonnyzzz / TeamCity.GitHub

Integration of TeamCity and GitHub
216 stars 63 forks source link

Default github url and credentials #51

Open WillAbides opened 10 years ago

WillAbides commented 10 years ago

We have a lot of developers creating configs that should report to our github enterprise server. It would be nice to have default url and credentials for them to use.

jonnyzzz commented 10 years ago

This looks like TeamCity-generic issue. Do you have some issue request into TeamCity?

WillAbides commented 10 years ago

I am speaking specifically about the properties in the "Report change status to GitHub" build feature configuration. I'm working on adding this myself right now.

jonnyzzz commented 10 years ago

I asked about TeamCity issue, because there could another build runners or build features that may require same

The implementation of the feature in the plugin could use TeamCityProperties class to check for specific default values. You should add it into getDefaultParameters method of the BuildFeature class implementation in the plugin. Be carefull with password value there

The main question is. Should used default values be changed for all created build features when default values were changed in the settings you gonna implement?

I'm looking forward for the patch from you

WillAbides commented 10 years ago

Thanks for the insight. I haven't worked on a plugin that has default values before, so I don't know what I'm getting into. After five minutes on the api docs, it looks like getDefaultParameters will work. I hope the secure: prefix works for that. I also need to figure out if a plugin can write to internal properties or if I need to just manually change the file.

jonnyzzz commented 10 years ago

You should not write into internal properties. My idea was that server administrator would write into the server properties once for the server. The task is done only once, so there is no need to generate UI for it

Please note that #getDefaultParameters are used once when build feature is created. So parameter values are copied into the created build feature. So if you need changeable parameters (I believe you do), you need to report parameter references as default values, e.g. %internal.corp.github.url% and so on. Next you need to implement ParametersProvider to report those property values from the internal properties of TeamCity. ​