mbox series

[v3,0/1] ci: update caskroom/cask/perforce to new location

Message ID pull.400.v3.git.1571789978.gitgitgadget@gmail.com (mailing list archive)
Headers show
Series ci: update caskroom/cask/perforce to new location | expand

Message

Philippe Blain via GitGitGadget Oct. 23, 2019, 12:19 a.m. UTC
Running CI on Mac OS X in Azure Pipelines is currently broken due to a moved
homebrew package.

Change since v2:

 * The commit message was improved (thanks Gábor).

Change since v1: -The step is now more robust (by pulling homebrew-cask and
trying again if the pull failed).

Thanks, -Stolee

Johannes Schindelin (1):
  ci(osx): use new location of the `perforce` cask

 ci/install-dependencies.sh | 5 +++++
 1 file changed, 5 insertions(+)


base-commit: 108b97dc372828f0e72e56bbb40cae8e1e83ece6
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-400%2Fderrickstolee%2Fci-caskroom-v3
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-400/derrickstolee/ci-caskroom-v3
Pull-Request: https://github.com/gitgitgadget/git/pull/400

Range-diff vs v2:

 1:  372ab24acf ! 1:  9d80e845bf ci(osx): use new location of the `perforce` cask
     @@ -2,9 +2,8 @@
      
          ci(osx): use new location of the `perforce` cask
      
     -    The CI builds are failing for Mac OS X due to a change in the
     -    location of the perforce cask. The command outputs the following
     -    error:
     +    The Azure Pipelines builds are failing for macOS due to a change in the
     +    location of the perforce cask. The command outputs the following error:
      
              + brew install caskroom/cask/perforce
              Error: caskroom/cask was moved. Tap homebrew/cask-cask instead.
     @@ -12,11 +11,27 @@
          So let's try to call `brew cask install perforce` first (which is what
          that error message suggests, in a most round-about way).
      
     -    The "caskroom" way was added in 672f51cb (travis-ci:
     -    fix Perforce install on macOS, 2017-01-22) and the justification
     -    is that the call "brew cask install perforce" can fail due to a checksum
     -    mismatch: the recipe simply downloads the official Perforce distro, and
     -    whenever that is updated, the recipe needs to be updated, too.
     +    Prior to 672f51cb we used to install the 'perforce' package with 'brew
     +    install perforce' (note: no 'cask' in there). The justification for
     +    672f51cb was that the command 'brew install perforce' simply stopped
     +    working, after Homebrew folks decided that it's better to move the
     +    'perforce' package to a "cask". Their justification for this move was
     +    that 'brew install perforce' "can fail due to a checksum mismatch ...",
     +    and casks can be installed without checksum verification. And indeed,
     +    both 'brew cask install perforce' and 'brew install
     +    caskroom/cask/perforce' printed something along the lines of:
     +
     +      ==> No checksum defined for Cask perforce, skipping verification
     +
     +    It is unclear why 672f51cb used 'brew install caskroom/cask/perforce'
     +    instead of 'brew cask install perforce'. It appears (by running both
     +    commands on old Travis CI macOS images) that both commands worked all
     +    the same already back then.
     +
     +    In any case, as the error message at the top of this commit message
     +    shows, 'brew install caskroom/cask/perforce' has stopped working
     +    recently, but 'brew cask install perforce' still does, so let's use
     +    that.
      
          CI servers are typically fresh virtual machines, but not always. To
          accommodate for that, let's try harder if `brew cask install perforce`
     @@ -31,6 +46,7 @@
          https://dev.azure.com/gitgitgadget/git/_build?definitionId=11&_a=summary
          will be finished once the next Perforce upgrade comes around.
      
     +    Helped-by: SZEDER Gábor <szeder.dev@gmail.com>
          Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
          Signed-off-by: Derrick Stolee <dstolee@microsoft.com>