summaryrefslogtreecommitdiff
path: root/script
Commit message (Collapse)AuthorAgeFilesLines
* coverity: check for Coverity token only if necessaryPatrick Steinhardt2016-10-311-3/+3
| | | | | | | | | | | | | | When running a Coverity build, we have to provide an authentication token in order to proof that we are actually allowed to run analysis in the name of a certain project. As this token should be secret, it is only set on the main repository, so when we were requested to run the Coverity script on another repository we do error out. But in fact we do also error out if the Coverity analysis should _not_ be run if there is no authentication token provided. Fix the issue by only checking for the authentication token after determining if analysis is indeed requested.
* coverity: only analyze the master branch of the main repositoryPatrick Steinhardt2016-10-281-3/+3
| | | | | | | | | | | | | We used to only execute Coverity analysis on the 'development' branch before commit 998f001 (Refine build limitation, 2014-01-15), which refined Coverity build limitations. While we do not really use the 'development' branch anymore, it does still make sense to only analyze a single branch, as otherwise Coverity might get confused. Re-establish the restriction such that we only analyze libgit2's 'master' branch. Also fix the message announcing why we do not actually analyze a certain build.
* coverity: fix download URLPatrick Steinhardt2016-10-281-2/+1
|
* script: cibuild: build examplesPatrick Steinhardt2016-10-101-1/+1
|
* travis: take the newer ssh-keygen format into accountcmn/osx-ssh-keyCarlos Martín Nieto2016-10-051-2/+7
| | | | | | The Mac machines have updated their SSH version and so the ssh-keygen format has changed. Ask it for MD5, which is the one that is output as hex.
* cibuild: set -xCarlos Martín Nieto2016-10-051-0/+2
| | | | | This lets us see the details of what we're doing instead of just seeing the output of unknown commands in the build output.
* Merge pull request #3815 from pks-t/pks/coverity-modelEdward Thomson2016-07-241-0/+75
|\ | | | | Coverity user model
| * coverity: model functions printing into git_bufPatrick Steinhardt2016-06-071-0/+38
| | | | | | | | | | | | The `git_buf` structure seems to be too complicated to correctly grasp for Coverity. As such, add simpler models trying to guide Coverity and remove false positives related to these functions.
| * coverity: add user modelPatrick Steinhardt2016-06-071-0/+37
| | | | | | | | | | | | | | | | | | | | | | The static analysis engine coverity allows for user models overriding how it treats functions when analyzing code. Like this, one can greatly reduce the rate of false positives and thus make it easier to spot actual errors. Add a user model that overrides function models for `git_buf_len` and `git_vector_insert`, which together amount for a majority of false positives.
* | ci: install homebrew's curl on macethomson/mac_buildEdward Thomson2016-07-242-1/+2
| |
* | ci: install homebrew's zlib on macEdward Thomson2016-07-222-0/+5
|/
* CI: start the proxy before the build so it's readyCarlos Martín Nieto2016-04-191-7/+8
| | | | | | It takes a bit for the propxy to get ready to accept connections, so start it before the build so we can be reasonably sure that it's going to be ready in time.
* proxy: test proxy support on TravisCarlos Martín Nieto2016-04-191-0/+14
|
* Merge pull request #3647 from pks-t/pks/coverity-fixes-round6Carlos Martín Nieto2016-03-141-2/+16
|\ | | | | Coverity fixes round 6
| * coverity: report errors when uploading tarballPatrick Steinhardt2016-03-111-2/+16
| | | | | | | | | | | | | | | | | | | | | | Curl by default does not report errors by setting the error code. As the upload can fail through several conditions (e.g. the rate limit, leading to unauthorized access) we should indicate this information in Travis CI. To improve upon the behavior, use `--write-out=%{http_code}` to write out the HTTP code in addition to the received body and return an error if the code does not equal 201.
* | Remove CI support for mingw32cmn/remove-mingw32Carlos Martín Nieto2016-03-142-16/+1
|/ | | | | The tests have never run successfully and we do have successful builds of mingw-w64, so remove these CI builds which do not add value.
* tests: create a ctest target for cred_callbackcmn/auth-retryCarlos Martín Nieto2016-03-031-2/+2
|
* test: make sure we retry the auth callback on all platformsCarlos Martín Nieto2016-03-031-0/+4
| | | | | | | | | | We were missing this test on Windows, which meant we didn't notice that we never fixed the single authentication attempt it tries, nor its wrong return code. Enable this for the unix platforms as well over HTTP. We previously were doing it locally but disabled it on OS X due to issues with its sshd not accepting password authentication.
* common: introduce GITERR_CHECK_ALLOC_BUFPatrick Steinhardt2016-02-231-0/+1
| | | | | | | | We commonly have to check if a git_buf has been allocated correctly or if we ran out of memory. Introduce a new macro similar to `GITERR_CHECK_ALLOC` which checks if we ran OOM and if so returns an error. Provide a `#nodef` for Coverity to mark the error case as an abort path.
* coverity: hint git_vector_foreach does not deref NULL contentsPatrick Steinhardt2016-02-231-0/+6
| | | | | | | | | | | | Coverity does not comprehend the connection between a vector's size and the contents pointer, that is that the vector's pointer is non-NULL when its size is positive. As the vector code should be reasonably well tested and users are expected to not manually modify a vector's contents it seems save to assume that the macros will never dereference a NULL pointer. Fix Coverity warnings by overriding the foreach macros with macros that explicitly aborting when (v)->contents is NULL.
* coverity: hint that string length is at least 2Patrick Steinhardt2016-02-181-0/+2
| | | | | | | | | | | | When checking if a string is prefixed by a drive letter (e.g. "C:") we verify this by inspecting the first and second character of the string. Coverity thinks this is a defect as we do not check the string's length first, but in fact we only check the second character if the first character is part of the alphabet, that is it cannot be '\0'. Fix this by overriding the macro and explicitly checking the string's length.
* coverity: add nodefs for abort macrosPatrick Steinhardt2016-02-181-0/+17
| | | | | | | Add nodefs for macros that abort the current flow due to errors. This includes macros that trigger on integer overflows and for the version check macro. This aids Coverity as we point out that these paths will cause a fatal error.
* coverity: use https URL for posting buildPatrick Steinhardt2016-02-101-2/+1
| | | | | | | | | When posting our instrumented build results to Coverity we have to include sensitive information, in particular our authorization token. Currently we use an unencrypted channel to post this information, leading to the token being transferred in plain. Fix this by using a secured connection instead.
* coverity: provide nodef for GITERR_CHECK_ALLOCPatrick Steinhardt2016-02-102-0/+10
| | | | | | | | | | | | Coverity currently lists a lot of errors with regard to GITERR_CHECK_ALLOC causing resource leaks. We know this macro is only invoked when we want to abort because we are out of memory. Coverity allows for overriding the default model where we know that certain functions guarantee a desired behavior. The user_nodefs.h is used to override the behavior of macros. Re-define GITERR_CHECK_ALLOC inside of it to specify its abort nature.
* travis: don't install CMake on OS XCarlos Martín Nieto2015-07-061-1/+1
| | | | Homebrew will error out because it's already installed.
* travis: update the homebrew dbCarlos Martín Nieto2015-07-061-0/+1
| | | | | We need to make sure we are asking for the current version of packages, or we might get 404s from the download service.
* Remove dependency installation file for travis builds.Arthur Schreiber2015-06-271-6/+0
| | | | We're installing dependencies via the APT addon now.
* Don't try to start ssh.Arthur Schreiber2015-06-261-2/+0
|
* travis: fail if we fail the push testsCarlos Martín Nieto2015-06-121-2/+2
| | | | | | These tests were not being taken into consideration for the failure of the test. They've been failing for a while now, but we hadn't noticed as Travis was reporting the builds successful.
* set PKG_CONFIG_LIBDIR in toolchain-mingw32.cmakeTony Kelman2015-03-171-0/+2
|
* Win32: Enable WinHTTP for MinGWPhilip Kelley2015-03-162-5/+24
|
* Revert "Implement fail-fast for Travis as well"Edward Thomson2015-03-103-12/+2
| | | | This reverts commit ba6c53b91b1d9c9dc49b7c0d8e8efbd9842c31dc.
* Add MinGW-w64 to matrixTony Kelman2015-03-041-2/+19
| | | | | | | | cache mingw-w64 downloads quiet curl and 7zip run appveyor steps in cmd for mingw
* Implement fail-fast for Travis as wellTony Kelman2015-03-043-2/+12
|
* add mingw to appveyor matrixTony Kelman2015-03-041-0/+6
| | | | | | | | | | | | use MSYS makefiles generator add bash script for running mingw on appveyor add --login and fix run paths use msys style path to appveyor-mingw.sh add mingw path to /etc/fstab
* Merge pull request #2710 from Therzok/shellcheckScriptsEdward Thomson2014-11-212-14/+15
|\ | | | | Run shell scripts through shellcheck
| * Run shell scripts through shellcheckUngureanu Marius2014-11-202-14/+15
| |
* | travis: disable the cert callback on OSXcmn/disable-ssh-checkCarlos Martín Nieto2014-11-201-1/+4
|/ | | | | | The sshd on OSX has stopped responding to the setting which this test assumes is there, so let's disable it until we can figure out what's happening.
* script: use a parallel build on TravisCarlos Martín Nieto2014-09-161-1/+1
|
* Merge remote-tracking branch 'upstream/master' into cmn/host-cert-infoCarlos Martín Nieto2014-09-161-2/+0
|\
| * travis: no need to clean out the test repositoryCarlos Martín Nieto2014-08-291-2/+0
| | | | | | | | | | This was added to avoid the remote's default branch to be considered to the be notes one which the first network test leaves behind.
* | ssh: add test for host keyCarlos Martín Nieto2014-09-161-1/+4
|/ | | | | Test that the certificate check callback gets the right fingerprint from the host we're connecting to.
* Merge remote-tracking branch 'upstream/master' into cmn/ssh-retryCarlos Martín Nieto2014-08-271-1/+4
|\
| * ssh: provide a factory function for setting ssh pathscmn/ssh-factory-for-pathsCarlos Martín Nieto2014-07-071-1/+4
| | | | | | | | | | | | | | | | | | git allows you to set which paths to use for the git server programs when connecting over ssh; and we want to provide something similar. We do this by providing a factory function which can be set as the remote's transport callback which will set the given paths upon creation.
* | travis: enable password authentication on OSXcmn/ssh-retryCarlos Martín Nieto2014-06-261-1/+7
| | | | | | | | | | | | | | | | Our ssh tests assume that the server supports password authentication in a few places. This is convenient as we're not testing authentication methods, but what happens around them. Tell sshd on OSX to accept this form of authentication.
* | ssh: request credentials again on authentication failureCarlos Martín Nieto2014-06-261-1/+1
|/ | | | | Instead of completely giving up on the first failure, ask for credentials as long as we fail to authenticate.
* travis: build on osx toocmn/dual-osCarlos Martín Nieto2014-05-212-0/+11
|
* ciscript: don't use an empty string as a numberCarlos Martín Nieto2014-04-301-1/+1
| | | | | | | An empty string is not a valid number, and some shells complain. Check instead if $COVERITY is non-empty, which is a common convention and what we're doing anyway.
* Only run clone-failure test on private repoBen Straub2014-02-051-1/+1
|
* Refine build limitationBen Straub2014-01-151-2/+7
|