mirror of
https://github.com/s3fs-fuse/s3fs-fuse.git
synced 2026-04-25 05:16:00 +03:00
[PR #1322] [MERGED] Interim fix for Travis macOS Build #1917
Labels
No labels
bug
bug
dataloss
duplicate
enhancement
feature request
help wanted
invalid
need info
performance
pull-request
question
question
testing
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/s3fs-fuse#1917
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/s3fs-fuse/s3fs-fuse/pull/1322
Author: @ggtakec
Created: 7/3/2020
Status: ✅ Merged
Merged: 7/10/2020
Merged by: @gaul
Base:
master← Head:update_travis_osx📝 Commits (1)
7c7c348Interim fix for Travis macOS Build📊 Changes
2 files changed (+37 additions, -8 deletions)
View changed files
📝
.travis.yml(+36 -7)📝
test/integration-test-main.sh(+1 -1)📄 Description
Relevant Issue (if applicable)
#1268
Details
Overview
Travis macOS Build uses Travis cache to reduce build time.
And I confirmed that the Travis macOS build was successful because the cache exists, but it failed when the cache was deleted.
And I also found other issues, this PR is an interim fix for those.
Background about macOS build on Travis-CI
The build of macOS uses macOS 10.12 which is the image of Travis CI(xcode9.2).
The reason for using this image is that it's a version that doesn't require an OS reboot after installing osxfuse.
OS images of 10.13 or later require reboot, and we cannot be built and tested s3fs.
So we need to continue to use 10.12.
And Homebrew is not currently offering this version of the binary package as Apple has dropped 10.12 support.
However, Homebrew offers build and install from source code instead of binary packages.
About changes
(1) If call brew tap without HOMEBREW_NO_AUTO_UPDATE=1, python3 cannot be installed
The failure reason is because Homebrew tries to install sqlite which is a python3 dependency, and fails.
Currently, Travis macOS image (xcode9.2) fails to download the source package from sqlite.org site due to
No routeorTimeout.The site has A and AAAA IP addresses, but both are in error.
When there is no cache on travis,
HOMEBREW_NO_AUTO_UPDATE=1was not attached, butHOMEBREW_NO_AUTO_UPDATE=1was provisionally specified in new code.Thus we can install python3.
(2) awscli cannot be installed via Homebrew
For 10.12, Homebrew doesn't seem to install aswcli.
So I changed it to install using pip.
(3) truncate package
s3fs travis build had installed Homebrew's truncate package, which has been replaced by gnu's gtruncate provided by the coreutils package.
Therefore, we do not install truncate.
(4) cppcheck compatible
If we install cppcheck after running brew tap without
HOMEBREW_NO_AUTO_UPDATE=1, cppcheck 2.1 will be installed.I found some errors detected in this version, so I fixed it(in curl.cpp).
In this PR code, HOMEBREW_NO_AUTO_UPDATE=1 is set, so 1.81 of cppcheck will be installed. However, the correction is added as a preventive measure.
(5) Modification of travis.yml
Incorporated some debugging messages and comments into .travis.yml.
Moreover, the part where the warning was detected by the validation of Travis (matrix->jobs etc.) was corrected.
(6) Modification of test code
If testing without python3, skip the
write_multipletest cases.I also fixed an incorrect call in
test_ut_ossfscase.Note
When merging this PR, please clear the cache of master on Travis-CI before merging.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.