salt/pkg/osx/build.sh

82 lines
3.1 KiB
Bash
Raw Normal View History

#!/bin/bash
2015-12-21 20:07:53 +00:00
############################################################################
#
# Title: Build Salt Script for macOS
2015-12-21 20:07:53 +00:00
# Authors: CR Oldham, Shane Lee
# Date: December 2015
#
# Description: This script downloads and installs all dependencies and build
# tools required to create a .pkg file for installation on macOS.
2015-12-21 20:07:53 +00:00
# Salt and all dependencies will be installed to /opt/salt. A
# .pkg file will then be created based on the contents of
# /opt/salt
#
# Requirements:
# - XCode Command Line Tools (xcode-select --install)
#
# Usage:
# This script can be passed 3 parameters
# $1 : <version> : the version of salt to build
2015-12-21 20:07:53 +00:00
# (a git tag, not a branch)
# (defaults to git-repo state)
# $2 : <package dir> : the staging area for the package
# defaults to /tmp/salt_pkg
2015-12-21 20:07:53 +00:00
#
# Example:
# The following will build Salt v2015.8.3 and stage all files
# in /tmp/custom_pkg:
2015-12-21 20:07:53 +00:00
#
# ./build.sh v2015.8.3 /tmp/custom_pkg
2015-12-21 20:07:53 +00:00
#
############################################################################
echo -n -e "\033]0;Build: Variables\007"
############################################################################
# Check passed parameters, set defaults
############################################################################
if [ "$1" == "" ]; then
VERSION=`git describe`
2015-12-21 20:07:53 +00:00
else
VERSION=$1
fi
2015-12-21 20:07:53 +00:00
if [ "$2" == "" ]; then
PKGDIR=/tmp/salt_pkg
else
PKGDIR=$2
fi
2015-12-21 20:07:53 +00:00
############################################################################
# Additional Parameters Required for the script to function properly
############################################################################
SRCDIR=`git rev-parse --show-toplevel`
PKGRESOURCES=$SRCDIR/pkg/osx
2015-12-21 20:07:53 +00:00
############################################################################
# Make sure this is the Salt Repository
############################################################################
if [[ ! -e "$SRCDIR/.git" ]] && [[ ! -e "$SRCDIR/scripts/salt" ]]; then
echo "This directory doesn't appear to be a git repository."
echo "The macOS build process needs some files from a Git checkout of Salt."
2015-12-21 20:07:53 +00:00
echo "Run this script from the root of the Git checkout."
exit -1
fi
2015-12-21 20:07:53 +00:00
############################################################################
# Create the Build Environment
############################################################################
echo -n -e "\033]0;Build: Build Environment\007"
2017-07-19 17:22:07 +00:00
sudo $PKGRESOURCES/build_env_2.sh
2015-12-21 20:07:53 +00:00
############################################################################
# Install Salt
############################################################################
echo -n -e "\033]0;Build: Install Salt\007"
sudo /opt/salt/bin/python $SRCDIR/setup.py install
2015-12-21 20:07:53 +00:00
############################################################################
# Build Package
############################################################################
echo -n -e "\033]0;Build: Package Salt\007"
sudo $PKGRESOURCES/build_pkg.sh $VERSION $PKGDIR