73b4ab21ad
This builds an OS X package and deploys it to a GitHub release when a tag is pushed. It also generates a tarball reporting the build environment and configuration. The build log is still separate. This is not yet final, it deploys to cgull/mosh and not mobile-shell/mosh. It should not affect Linux or OS X CI builds (other than the change to the Travis Xcode 7.1 image). Included changes: The Travis Xcode 7 image seems to have added tmux while we were gone, breaking our Homebrew setup. There seems to be no clean reliable way to determine whether a Homebrew package is installed or needs updating. Reinstalling is less efficient but seems to work reliably. The OS X build is now split between four files: .travis.yml contains Travis-specific CI/release build configuration. macosx/brew.sh contains Homebrew-specific package manager installs and reporting. macosx/osx-xcode.sh contains Apple-specific OS/X and Xcode reporting. macosx/build.sh does the actual package build.
31 lines
904 B
Bash
Executable File
31 lines
904 B
Bash
Executable File
#!/bin/sh
|
|
|
|
#
|
|
# OS X and Xcode support script.
|
|
#
|
|
|
|
#
|
|
# Describe the OS X and Xcode installation, patches, etc as best as possible.
|
|
#
|
|
# Beware: System Profiler dumps significant private and security information.
|
|
#
|
|
describe()
|
|
{
|
|
# Most of the XML in this report is plist files, which can be read more easily with plutil -p
|
|
pkgutil --pkgs-plist > packages-plist.xml
|
|
mkdir package-info-plist/
|
|
for i in $(pkgutil --pkgs); do pkgutil --pkg-info-plist=$i > package-info-plist/$i.xml; done
|
|
xcodebuild -version > xcodebuild-version.txt
|
|
# CLT info can be found in package-info-plist/com.apple.pkg.CLTools_Executables.xml
|
|
xcode-select --print-path > xcode-path.txt
|
|
# System Profiler's XML can be read more easily with plutil -p, or
|
|
# opened with the System Profiler GUI.
|
|
system_profiler -xml -detailLevel full > system-profile.spx 2>/dev/null
|
|
}
|
|
|
|
#
|
|
# Do something.
|
|
#
|
|
set -e
|
|
"$@"
|