Merge pull request #7379 from MikeMcQuaid/actions-linuxbrew

workflows/tests: handle system Linuxbrew.
This commit is contained in:
Mike McQuaid 2020-04-17 17:06:13 +01:00 committed by GitHub
commit 5128075fb6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -19,42 +19,44 @@ jobs:
- name: Set up Homebrew PATH
run: |
if [ "$RUNNER_OS" = "macOS" ]; then
echo "::add-path::/usr/local/bin:/usr/bin:/bin"
if [ "$RUNNER_OS" = "Linux" ]; then
echo "::add-path::/home/linuxbrew/.linuxbrew/bin"
else
echo "::add-path::/home/linuxbrew/.linuxbrew/bin:/usr/bin:/bin"
echo "::add-path::/usr/local/bin"
fi
- name: Set up Homebrew
run: |
if [ "$RUNNER_OS" = "Linux" ]; then
HOMEBREW_REPOSITORY=/home/linuxbrew/.linuxbrew/Homebrew
sudo mkdir -p /home/linuxbrew/.linuxbrew
cd ..
sudo mv "brew" "$HOMEBREW_REPOSITORY"
sudo ln -s "$HOMEBREW_REPOSITORY" "brew"
cd /home/linuxbrew/.linuxbrew
sudo mkdir -p bin etc include lib opt sbin share var/homebrew/linked Cellar
sudo ln -s ../Homebrew/bin/brew /home/linuxbrew/.linuxbrew/bin/
sudo chown -R "$USER" /home/linuxbrew
# Install taps needed for 'brew tests'
export HOMEBREW_NO_AUTO_UPDATE=1
brew tap homebrew/bundle
else
HOMEBREW_REPOSITORY="$(brew --repo)"
sudo mkdir -p "$HOMEBREW_REPOSITORY/Library/Taps"
mv "$HOMEBREW_REPOSITORY/Library/Taps" "$PWD/Library"
sudo rm -rf "$HOMEBREW_REPOSITORY"
sudo ln -s "$PWD" "$HOMEBREW_REPOSITORY"
brew update-reset Library/Taps/homebrew/homebrew-core
sudo ln -sf "$PWD" "$HOMEBREW_REPOSITORY"
# Install taps needed for 'brew tests'
export HOMEBREW_NO_AUTO_UPDATE=1
brew tap homebrew/cask
brew tap homebrew/bundle
brew tap homebrew/services
cd /home/linuxbrew/.linuxbrew
sudo mkdir -p bin etc include lib opt sbin share var/homebrew/linked Cellar
sudo ln -sf ../Homebrew/bin/brew /home/linuxbrew/.linuxbrew/bin/
sudo chown -R "$USER" /home/linuxbrew
brew update-reset Homebrew/Library/Taps/homebrew/homebrew-core
else
HOMEBREW_REPOSITORY="$(brew --repo)"
mv "$HOMEBREW_REPOSITORY/Library/Taps" "$PWD/Library"
sudo rm -rf "$HOMEBREW_REPOSITORY"
sudo ln -sf "$PWD" "$HOMEBREW_REPOSITORY"
brew update-reset Library/Taps/homebrew/homebrew-core
fi
- name: Set up Ruby
if: matrix.os == 'ubuntu-latest'
uses: actions/setup-ruby@v1
with:
ruby-version: '2.6'
- name: Run brew config
run: brew config
@ -81,6 +83,17 @@ jobs:
sudo chmod -R g-w,o-w /home/linuxbrew /home/runner /opt
fi
- name: Install taps
run: |
# Install taps needed for 'brew tests' and 'brew man'
export HOMEBREW_NO_AUTO_UPDATE=1
sudo chown -R "$USER" Library/Taps
brew tap homebrew/bundle
brew tap homebrew/services
if [ "$RUNNER_OS" = "macOS" ]; then
brew tap homebrew/cask
fi
- name: Run brew style
run: brew style --display-cop-names
@ -150,7 +163,8 @@ jobs:
run: |
if [ "$RUNNER_OS" = "Linux" ]; then
docker-compose -f Dockerfile.yml run --rm -v $GITHUB_WORKSPACE:/tmp/test-bot sut
docker tag homebrew_sut brew
# TODO: reenable when we figure out issue
# docker tag homebrew_sut brew
else
brew test-bot
fi