EE - fix jenkins status check
When using Jenkins CI via the `JenkinsService` class, GitLab queries Jenkins for build status of a specific git commit shasum. This check however is done in an error prone way and fails for Jenkins jobs with multiple modules. Please note the three bubbles at the bottom of this screenshot: http://i.imgur.com/cptQdOG.png
This MR changes the checking code to make use of a HTML parser and selects the element of interest via its xpath. It was manually tested against Jenkins version 1.554 (LTS release as of today) with both maven and freestyle type jobs.
This is to fix the issue where the icon-comment icon is clicked in the
Reply button of a note; the icon is used as the target and incorrectly
assumed to be the button itself, which causes the reply form to spawn
inside the button.
Redirect between tree and blob
This checks if on requested non-existing tree path blob exists, redirects to blob path if the file exists, otherwise return not found.
See #1369
See merge request !953
Squashed commits:
[812406c] fixes bug from last refactoring
[53e9508] hides "delete" button if a key is a LDAPKey
[bafc66b] refactores update_ssh_keys in own method
[7895858] makes name of ssh public key configurable
This is done by using a separate LDAPKey model (inherited from Key)
for storing SSH keys which came from LDAP.
These keys can be viewed from user profile, but they can not be deleted.
Signed-off-by: Oleg Girko <oleg.girko@jollamobile.com> (+2 squashed commits)
Squashed commits:
[52b3816] Made SSH key synchronisation with LDAP configurable.
Now it can be turned on or off using configuration option
sync_ssh_keys in ldap section.
The default is off to preserve compatibility with old behaviour.
Signed-off-by: Oleg Girko <oleg.girko@jollamobile.com>
[02f988d] Synchronise LDAP users SSH keys from LDAP automatically.
SSH public keys are synchronised from sshPublicKey LDAP attribute
upon login attempt and during regular LDAP security checks.
New keys are added, old keys not present in LDAP are deleted.
Signed-off-by: Oleg Girko <oleg.girko@jollamobile.com> (+1 squashed commit)
Squashed commits:
[f087fbc] Make Gitlab::LDAP::Person.entry method public.
This is needed to allow access control methods to access
arbitrary LDAP attributes.
Signed-off-by: Oleg Girko <oleg.girko@jollamobile.com>
Improve email threading
This is a follow-up to !112 : it improves email threading, without changing the receiver of the emails.
* Subject of answers to an existing thread begins with `Re: ` (required by Mail.app)
* Send a 'In-Reply-To' header along the 'References' header
Remove source button checkbox always try to remove branch in target
project. For fork source & target projects are differents - so we hide
checkbox from UI. After MR accepted you can easily remove branch with
'Remove branch' button that do remove branch call to valid project
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>