mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
Improvements to osx packaging scripts
This commit is contained in:
parent
5e44639334
commit
9eeb6da7bd
16 changed files with 746 additions and 222 deletions
183
pkg/osx/build.sh
Normal file → Executable file
183
pkg/osx/build.sh
Normal file → Executable file
|
@ -1,10 +1,64 @@
|
|||
#!/bin/bash
|
||||
############################################################################
|
||||
#
|
||||
# Title: Build Salt Script for OSX
|
||||
# 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 OSX.
|
||||
# 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 : <package dir> : the staging area for the package
|
||||
# defaults to /tmp/salt-pkg
|
||||
# $2 : <version> : the version of salt to build
|
||||
# (a git tag, not a branch)
|
||||
# (defaults to git-repo state)
|
||||
#
|
||||
# Example:
|
||||
# The following will build Salt v2015.8.3 and stage all files
|
||||
# in /tmp/pkg:
|
||||
#
|
||||
# ./build.sh /tmp/pkg v2015.8.3
|
||||
#
|
||||
############################################################################
|
||||
|
||||
# Usage
|
||||
# ./build.sh <package dir> <version to build> <git tag>
|
||||
echo -n -e "\033]0;Build: Variables\007"
|
||||
|
||||
SRCDIR=`pwd`
|
||||
############################################################################
|
||||
# Check passed parameters, set defaults
|
||||
############################################################################
|
||||
if [ "$1" == "" ]; then
|
||||
PKGDIR=/tmp/pkg
|
||||
else
|
||||
PKGDIR=$1
|
||||
fi
|
||||
|
||||
if [ "$2" == "" ]; then
|
||||
VERSION=`git describe`
|
||||
else
|
||||
VERSION=$2
|
||||
fi
|
||||
|
||||
|
||||
############################################################################
|
||||
# Additional Parameters Required for the script to function properly
|
||||
############################################################################
|
||||
|
||||
SRCDIR=`git rev-parse --show-toplevel`
|
||||
PKGRESOURCES=$SRCDIR/pkg/osx
|
||||
|
||||
|
||||
############################################################################
|
||||
# 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 OS X build process needs some files from a Git checkout of Salt."
|
||||
|
@ -12,116 +66,23 @@ if [[ ! -e "$SRCDIR/.git" ]] && [[ ! -e "$SRCDIR/scripts/salt" ]]; then
|
|||
exit -1
|
||||
fi
|
||||
|
||||
PKGDIR=$1
|
||||
|
||||
rm -rf build
|
||||
mkdir -p build
|
||||
BUILDDIR=`pwd`/build
|
||||
|
||||
PKGRESOURCES=$SRCDIR/pkg/osx
|
||||
|
||||
mkdir -p /opt/salt/python
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "-------- Retrieving libsodium"
|
||||
wget https://download.libsodium.org/libsodium/releases/libsodium-1.0.2.tar.gz
|
||||
wget https://download.libsodium.org/libsodium/releases/libsodium-1.0.2.tar.gz.sig
|
||||
|
||||
echo "-------- Verifying PGP signature"
|
||||
gpg --keyserver pgp.mit.edu --recv-key 2B6F76DA
|
||||
gpg --verify libsodium-1.0.2.tar.gz.sig
|
||||
|
||||
echo "-------- Building libsodium"
|
||||
tar -xvf libsodium-1.0.2.tar.gz
|
||||
cd libsodium-1.0.2
|
||||
./configure --prefix=/opt/salt/python
|
||||
make
|
||||
make check
|
||||
make install
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "-------- Retrieving zeromq"
|
||||
wget http://download.zeromq.org/zeromq-4.0.5.tar.gz
|
||||
wget http://download.zeromq.org/SHA1SUMS
|
||||
|
||||
echo "-------- Building zeromq"
|
||||
tar -zxvf zeromq-4.0.5.tar.gz
|
||||
cd zeromq-4.0.5
|
||||
./configure --prefix=/opt/salt/python
|
||||
make
|
||||
make check
|
||||
make install
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "-------- Retrieving SWIG 3.0.4"
|
||||
# SWIG
|
||||
wget http://downloads.sourceforge.net/project/swig/swig/swig-3.0.4/swig-3.0.4.tar.gz
|
||||
|
||||
echo "-------- Building SWIG 3.0.4"
|
||||
tar -zxvf swig-3.0.4.tar.gz
|
||||
cd swig-3.0.4
|
||||
./configure --prefix=/opt/salt/python
|
||||
make
|
||||
make install
|
||||
|
||||
export PATH=/opt/salt/python/bin:$PATH
|
||||
|
||||
echo "-------- Installing Salt dependencies with pip"
|
||||
pip install -r $PKGRESOURCES/requirements.txt
|
||||
|
||||
# if $3 exists it will be a git reference, install with pip install git+
|
||||
# otherwise install with pip install salt==
|
||||
echo "-------- Installing Salt into the virtualenv"
|
||||
if [ "$3" == "" ]; then
|
||||
pip install salt==$2
|
||||
else
|
||||
e pip install $3
|
||||
fi
|
||||
|
||||
cd /opt/salt/python/bin
|
||||
mkdir -p /opt/salt/bin
|
||||
for f in /opt/salt/python/bin/salt-* do
|
||||
ln -s $f /opt/salt/bin
|
||||
done
|
||||
|
||||
cp $PKGRESOURCES/scripts/start-*.sh /opt/salt/bin
|
||||
|
||||
mkdir -p $PKGDIR/opt
|
||||
cp -r /opt/salt $PKGDIR/opt
|
||||
mkdir -p $PKGDIR/Library/LaunchDaemons $PKGDIR/etc
|
||||
|
||||
cp $PKGRESOURCES/scripts/com.saltstack.salt.minion.plist $PKGDIR/Library/LaunchDaemons
|
||||
cp $PKGRESOURCES/scripts/com.saltstack.salt.master.plist $PKGDIR/Library/LaunchDaemons
|
||||
cp $PKGRESOURCES/scripts/com.saltstack.salt.syndic.plist $PKGDIR/Library/LaunchDaemons
|
||||
cp $PKGRESOURCES/scripts/com.saltstack.salt.api.plist $PKGDIR/Library/LaunchDaemons
|
||||
|
||||
cp $SRCDIR/conf/minion $PKGDIR/etc/salt/minion.dist
|
||||
cp $SRCDIR/conf/master $PKGDIR/etc/salt/master.dist
|
||||
|
||||
cd $PKGRESOURCES
|
||||
cp distribution.xml.dist distribution.xml
|
||||
SEDSTR="s/@VERSION@/$2/"
|
||||
echo $SEDSTR
|
||||
sed -i '' $SEDSTR distribution.xml
|
||||
|
||||
pkgbuild --root $PKGDIR --identifier=com.saltstack.salt --version=$2 --ownership=recommended salt-src-$2.pkg
|
||||
productbuild --resources=$PKGDIR --distribution=distribution.xml --package-path=salt-src-$2.pkg --version=$2 salt-$2.pkg
|
||||
############################################################################
|
||||
# Create the Build Environment
|
||||
############################################################################
|
||||
echo -n -e "\033]0;Build: Build Environment\007"
|
||||
source $PKGRESOURCES/build_env.sh
|
||||
|
||||
|
||||
# copy the wrapper script to /opt/salt/bin
|
||||
# ln -s all the different wrapper names to that script
|
||||
# Copy the launchd plists to $1/Library/LaunchDaemons
|
||||
# Copy the sample config files to $1/etc
|
||||
|
||||
# pkgbuild and productbuild will use $2 to name files.
|
||||
|
||||
#pkgbuild
|
||||
|
||||
#productbuild
|
||||
|
||||
# Q.E.D.
|
||||
############################################################################
|
||||
# Install Salt
|
||||
############################################################################
|
||||
echo -n -e "\033]0;Build: Install Salt\007"
|
||||
sudo /opt/salt/bin/python $SRCDIR/setup.py install
|
||||
|
||||
|
||||
############################################################################
|
||||
# Build Package
|
||||
############################################################################
|
||||
echo -n -e "\033]0;Build: Package Salt\007"
|
||||
source $PKGRESOURCES/build_pkg.sh $PKGDIR $VERSION
|
||||
|
|
324
pkg/osx/build_env.sh
Executable file
324
pkg/osx/build_env.sh
Executable file
|
@ -0,0 +1,324 @@
|
|||
#!/bin/bash
|
||||
|
||||
############################################################################
|
||||
#
|
||||
# Title: Build Environment Script for OSX
|
||||
# Authors: CR Oldham, Shane Lee
|
||||
# Date: December 2015
|
||||
#
|
||||
# Description: This script sets up a build environment for salt on OSX.
|
||||
#
|
||||
# Requirements:
|
||||
# - XCode Command Line Tools (xcode-select --install)
|
||||
#
|
||||
# Usage:
|
||||
# This script is not passed any parameters
|
||||
#
|
||||
# Example:
|
||||
# The following will set up a build environment for salt on OSX
|
||||
#
|
||||
# ./dev_env.sh
|
||||
#
|
||||
############################################################################
|
||||
|
||||
trap 'quit_on_error $LINENO $BASH_COMMAND' ERR
|
||||
|
||||
quit_on_error() {
|
||||
echo "$(basename $0) caught error on line : $1 command was: $2"
|
||||
exit -1
|
||||
}
|
||||
|
||||
############################################################################
|
||||
# Parameters Required for the script to function properly
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: Variables\007"
|
||||
|
||||
# This is needed to allow the some test suites (zmq) to pass
|
||||
ulimit -n 1200
|
||||
|
||||
SRCDIR=`git rev-parse --show-toplevel`
|
||||
SCRIPTDIR=`pwd`
|
||||
PKG_CONFIG_PATH=/opt/salt/lib/pkgconfig
|
||||
CFLAGS="-I/opt/salt/include"
|
||||
LDFLAGS="-L/opt/salt/lib"
|
||||
|
||||
############################################################################
|
||||
# Determine Which XCode is being used (XCode or XCode Command Line Tools)
|
||||
############################################################################
|
||||
# Prefer Xcode command line tools over any other gcc installed (e.g. MacPorts,
|
||||
# Fink, Brew)
|
||||
# Check for Xcode Commane Line Tools first
|
||||
if [ -d '/Library/Developer/CommandLineTools/usr/bin' ]; then
|
||||
PATH=/Library/Developer/CommandLineTools/usr/bin:/opt/salt/bin:$PATH
|
||||
MAKE=/Library/Developer/CommandLineTools/usr/bin/make
|
||||
else
|
||||
PATH=/Applications/Xcode.app/Contents/Developer/usr/bin:/opt/salt/bin:$PATH
|
||||
MAKE=/Applications/Xcode.app/Contents/Developer/usr/bin/make
|
||||
fi
|
||||
export PATH
|
||||
|
||||
############################################################################
|
||||
# Ensure Paths are present and clean
|
||||
############################################################################
|
||||
echo -n -e "\033]0;Build_Evn: Clean\007"
|
||||
# Make sure /opt/salt is clean
|
||||
sudo rm -rf /opt/salt
|
||||
sudo mkdir -p /opt/salt
|
||||
sudo chown $USER:staff /opt/salt
|
||||
|
||||
# Make sure build staging is clean
|
||||
rm -rf build
|
||||
mkdir -p build
|
||||
BUILDDIR=$SCRIPTDIR/build
|
||||
|
||||
############################################################################
|
||||
# Download and install pkg-config
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: pkg-config\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Retrieving pkg-config"
|
||||
echo "#####################################################################"
|
||||
curl -O# http://pkgconfig.freedesktop.org/releases/pkg-config-0.29.tar.gz
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Building pkg-config"
|
||||
echo "#####################################################################"
|
||||
tar -zxvf pkg-config-0.29.tar.gz
|
||||
cd pkg-config-0.29
|
||||
env LDFLAGS="-framework CoreFoundation -framework Carbon" ./configure --prefix=/opt/salt --with-internal-glib
|
||||
$MAKE
|
||||
$MAKE check
|
||||
sudo $MAKE install
|
||||
|
||||
|
||||
############################################################################
|
||||
# Download and install libsodium
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: libsodium\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Retrieving libsodium"
|
||||
echo "#####################################################################"
|
||||
curl -O# https://download.libsodium.org/libsodium/releases/libsodium-1.0.7.tar.gz
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Building libsodium"
|
||||
echo "#####################################################################"
|
||||
tar -xvf libsodium-1.0.7.tar.gz
|
||||
cd libsodium-1.0.7
|
||||
./configure --prefix=/opt/salt
|
||||
$MAKE
|
||||
$MAKE check
|
||||
sudo $MAKE install
|
||||
|
||||
|
||||
############################################################################
|
||||
# Download and install zeromq
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: zeromq\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Retrieving zeromq"
|
||||
echo "#####################################################################"
|
||||
curl -O# http://download.zeromq.org/zeromq-4.1.3.tar.gz
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Building zeromq"
|
||||
echo "#####################################################################"
|
||||
tar -zxvf zeromq-4.1.3.tar.gz
|
||||
cd zeromq-4.1.3
|
||||
./configure --prefix=/opt/salt
|
||||
$MAKE
|
||||
$MAKE check
|
||||
sudo $MAKE install
|
||||
|
||||
|
||||
############################################################################
|
||||
# Download and install OpenSSL
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: OpenSSL\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Retrieving OpenSSL 1.0.2e"
|
||||
echo "#####################################################################"
|
||||
curl -O# http://openssl.org/source/openssl-1.0.2e.tar.gz
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Building OpenSSL 1.0.2e"
|
||||
echo "#####################################################################"
|
||||
tar -zxvf openssl-1.0.2e.tar.gz
|
||||
cd openssl-1.0.2e
|
||||
./Configure darwin64-x86_64-cc --prefix=/opt/salt --openssldir=/opt/salt/openssl
|
||||
$MAKE
|
||||
$MAKE test
|
||||
sudo $MAKE install
|
||||
|
||||
|
||||
############################################################################
|
||||
# Download and install GDBM
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: GDBM\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Retrieving gdbm 1.11"
|
||||
echo "#####################################################################"
|
||||
curl -O# ftp://ftp.gnu.org/gnu/gdbm/gdbm-1.11.tar.gz
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Building gdbm 1.11"
|
||||
echo "#####################################################################"
|
||||
tar -zxvf gdbm-1.11.tar.gz
|
||||
cd gdbm-1.11
|
||||
./configure --prefix=/opt/salt --enable-libgdbm-compat
|
||||
$MAKE
|
||||
$MAKE check
|
||||
sudo $MAKE install
|
||||
|
||||
|
||||
############################################################################
|
||||
# Download and install Gnu Readline
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: Gnu Readline\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Retrieving GNU Readline"
|
||||
echo "#####################################################################"
|
||||
curl -O# ftp://ftp.cwru.edu/pub/bash/readline-6.3.tar.gz
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Building GNU Readline 6.3"
|
||||
echo "#####################################################################"
|
||||
tar -zxvf readline-6.3.tar.gz
|
||||
cd readline-6.3
|
||||
./configure --prefix=/opt/salt
|
||||
$MAKE
|
||||
sudo $MAKE install
|
||||
|
||||
|
||||
############################################################################
|
||||
# Download and install Python
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: Python\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Retrieving Python 2.7.11"
|
||||
echo "#####################################################################"
|
||||
curl -O# https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tar.xz
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Building Python 2.7.11"
|
||||
echo "#####################################################################"
|
||||
echo "Note there are some test failures"
|
||||
tar -zxvf Python-2.7.11.tar.xz
|
||||
cd Python-2.7.11
|
||||
./configure --prefix=/opt/salt --enable-shared --enable-toolbox-glue --with-ensurepip=install
|
||||
$MAKE
|
||||
# $MAKE test
|
||||
sudo $MAKE install
|
||||
|
||||
|
||||
############################################################################
|
||||
# Download and install CMake
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: CMake\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Retrieving CMake 3.4.1"
|
||||
echo "#####################################################################"
|
||||
curl -O# https://cmake.org/files/v3.4/cmake-3.4.1.tar.gz
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Building CMake 3.4.1"
|
||||
echo "#####################################################################"
|
||||
tar -zxvf cmake-3.4.1.tar.gz
|
||||
cd cmake-3.4.1
|
||||
./bootstrap
|
||||
$MAKE
|
||||
sudo $MAKE install
|
||||
|
||||
|
||||
############################################################################
|
||||
# Download and install libgit2
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: libgit2\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Retrieving libgit2 0.23.4"
|
||||
echo "#####################################################################"
|
||||
curl -O# https://codeload.github.com/libgit2/libgit2/tar.gz/v0.23.4
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Building libgit2 0.23.4"
|
||||
echo "#####################################################################"
|
||||
tar -zxvf v0.23.4
|
||||
cd libgit2-0.23.4
|
||||
mkdir build && cd build
|
||||
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/salt
|
||||
sudo cmake --build . --target install
|
||||
|
||||
|
||||
############################################################################
|
||||
# Download and install salt python dependencies
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: PIP Dependencies\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Installing Salt Dependencies with pip (normal)"
|
||||
echo "#####################################################################"
|
||||
sudo -H /opt/salt/bin/pip install \
|
||||
-r $SRCDIR/pkg/osx/req.txt \
|
||||
--no-cache-dir
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Installing Salt Dependencies with pip (build_ext)"
|
||||
echo "#####################################################################"
|
||||
sudo -H /opt/salt/bin/pip install \
|
||||
-r $SRCDIR/pkg/osx/req_ext.txt \
|
||||
--global-option=build_ext \
|
||||
--global-option="-I/opt/salt/include" \
|
||||
--no-cache-dir
|
||||
|
||||
echo "---------------------------------------------------------------------"
|
||||
echo "Create Symlink to certifi for openssl"
|
||||
echo "---------------------------------------------------------------------"
|
||||
ln -s /opt/salt/lib/python2.7/site-packages/certifi/cacert.pem /opt/salt/openssl/cert.pem
|
||||
|
||||
echo -n -e "\033]0;Build_Evn: Finished\007"
|
||||
|
||||
cd $BUILDDIR
|
||||
|
||||
echo "#####################################################################"
|
||||
echo "Build Environment Script Completed"
|
||||
echo "#####################################################################"
|
176
pkg/osx/build_pkg.sh
Executable file
176
pkg/osx/build_pkg.sh
Executable file
|
@ -0,0 +1,176 @@
|
|||
#!/bin/bash
|
||||
############################################################################
|
||||
#
|
||||
# Title: Build Package Script for OSX
|
||||
# Authors: CR Oldham, Shane Lee
|
||||
# Date: December 2015
|
||||
#
|
||||
# Description: This creates an OSX package for Salt from the contents of
|
||||
# /opt/salt
|
||||
#
|
||||
# Requirements:
|
||||
# - XCode Command Line Tools (xcode-select --install)
|
||||
#
|
||||
# Usage:
|
||||
# This script can be passed 2 parameters
|
||||
# $1 : <package dir> : the staging area for the package defaults to
|
||||
# /tmp/salt-pkg
|
||||
# $2 : <version> : the version name to give the package (overrides
|
||||
# version of the git repo) (Defaults to the git repo version)
|
||||
#
|
||||
# Example:
|
||||
# The following will build Salt and stage all files in /tmp/pkg:
|
||||
#
|
||||
# ./build.sh /tmp/pkg
|
||||
#
|
||||
############################################################################
|
||||
|
||||
trap 'quit_on_error $LINENO $BASH_COMMAND' ERR
|
||||
|
||||
quit_on_error() {
|
||||
echo "$(basename $0) caught error on line : $1 command was: $2"
|
||||
exit -1
|
||||
}
|
||||
|
||||
############################################################################
|
||||
# Check passed parameters, set defaults
|
||||
############################################################################
|
||||
if [ "$1" == "" ]; then
|
||||
PKGDIR=/tmp/pkg
|
||||
else
|
||||
PKGDIR=$1
|
||||
fi
|
||||
|
||||
if [ "$2" == "" ]; then
|
||||
VERSION=`git describe`
|
||||
else
|
||||
VERSION=$2
|
||||
fi
|
||||
|
||||
############################################################################
|
||||
# Additional Parameters Required for the script to function properly
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Pkg: Variables\007"
|
||||
|
||||
SRCDIR=`git rev-parse --show-toplevel`
|
||||
|
||||
############################################################################
|
||||
# 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 OS X build process needs some files from a Git checkout of Salt."
|
||||
echo "Run this script from the root of the Git checkout."
|
||||
exit -1
|
||||
fi
|
||||
|
||||
############################################################################
|
||||
# Ensure Paths are present and clean
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Pkg: Clean Staging Area\007"
|
||||
|
||||
# Clean folder in the staging area
|
||||
rm -rf $PKGDIR
|
||||
mkdir -p $PKGDIR
|
||||
|
||||
PKGRESOURCES=$SRCDIR/pkg/osx
|
||||
|
||||
############################################################################
|
||||
# Create Symbolic Links to Salt Binaries
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Pkg: Create Symbolic Links\007"
|
||||
|
||||
cd /opt/salt
|
||||
for f in /opt/salt/bin/salt-*; do
|
||||
if [ ! -f $f ]; then
|
||||
ln -s $f /opt/salt
|
||||
fi
|
||||
done
|
||||
|
||||
if [ ! -f /opt/salt/bin/spm ]; then
|
||||
ln -s /opt/salt/bin/spm /opt/salt
|
||||
fi
|
||||
if [ ! -f /opt/salt/bin/raetflo ]; then
|
||||
ln -s /opt/salt/bin/raetflo /opt/salt
|
||||
fi
|
||||
if [ ! -f /opt/salt/bin/ioflo ]; then
|
||||
ln -s /opt/salt/bin/ioflo /opt/salt
|
||||
fi
|
||||
if [ ! -f /opt/salt/bin/ioflo2 ]; then
|
||||
ln -s /opt/salt/bin/ioflo2 /opt/salt
|
||||
fi
|
||||
|
||||
############################################################################
|
||||
# Copy Start Scripts from Salt Repo to /opt/salt
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Pkg: Copy Start Scripts\007"
|
||||
|
||||
cp $PKGRESOURCES/scripts/start-*.sh /opt/salt
|
||||
|
||||
############################################################################
|
||||
# Copy Service Definitions from Salt Repo to the Package Directory
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Pkg: Copy Service Definitions\007"
|
||||
|
||||
mkdir -p $PKGDIR/opt
|
||||
cp -r /opt/salt $PKGDIR/opt
|
||||
mkdir -p $PKGDIR/Library/LaunchDaemons $PKGDIR/etc
|
||||
|
||||
cp $PKGRESOURCES/scripts/com.saltstack.salt.minion.plist $PKGDIR/Library/LaunchDaemons
|
||||
cp $PKGRESOURCES/scripts/com.saltstack.salt.master.plist $PKGDIR/Library/LaunchDaemons
|
||||
cp $PKGRESOURCES/scripts/com.saltstack.salt.syndic.plist $PKGDIR/Library/LaunchDaemons
|
||||
cp $PKGRESOURCES/scripts/com.saltstack.salt.api.plist $PKGDIR/Library/LaunchDaemons
|
||||
|
||||
############################################################################
|
||||
# Copy Additional Resources from Salt Repo to the Package Directory
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Pkg: Copy Additional Resources\007"
|
||||
|
||||
mkdir -p $PKGDIR/resources
|
||||
cp $PKGRESOURCES/saltstack.png $PKGDIR/resources
|
||||
cp $PKGRESOURCES/*.rtf $PKGDIR/resources
|
||||
|
||||
############################################################################
|
||||
# Copy Config Files from Salt Repo to the Package Directory
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Pkg: Copy Config Files\007"
|
||||
|
||||
mkdir -p $PKGDIR/etc/salt
|
||||
cp $SRCDIR/conf/minion $PKGDIR/etc/salt/minion.dist
|
||||
cp $SRCDIR/conf/master $PKGDIR/etc/salt/master.dist
|
||||
|
||||
############################################################################
|
||||
# I don't know what this does, it doesn't look like the .xml file goes anywhere
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Pkg: Add Version to .xml\007"
|
||||
|
||||
cd $PKGRESOURCES
|
||||
cp distribution.xml.dist distribution.xml
|
||||
SEDSTR="s/@VERSION@/$VERSION/"
|
||||
echo $SEDSTR
|
||||
sed -i '' $SEDSTR distribution.xml
|
||||
|
||||
############################################################################
|
||||
# Build the Package
|
||||
############################################################################
|
||||
|
||||
echo -n -e "\033]0;Build_Pkg: Build Package\007"
|
||||
|
||||
pkgbuild --root $PKGDIR \
|
||||
--identifier=com.saltstack.salt \
|
||||
--version=$VERSION \
|
||||
--ownership=recommended salt-src-$VERSION.pkg
|
||||
|
||||
productbuild --resources=$PKGDIR/resources \
|
||||
--distribution=distribution.xml \
|
||||
--package-path=salt-src-$VERSION.pkg \
|
||||
--version=$VERSION salt-$VERSION.pkg
|
||||
|
53
pkg/osx/build_sig.sh
Executable file
53
pkg/osx/build_sig.sh
Executable file
|
@ -0,0 +1,53 @@
|
|||
#!/bin/bash
|
||||
############################################################################
|
||||
#
|
||||
# Title: Sign Package Script for OSX
|
||||
# Authors: Shane Lee
|
||||
# Date: December 2015
|
||||
#
|
||||
# Description: This signs an OSX Installer Package (.pkg)
|
||||
# /opt/salt
|
||||
#
|
||||
# Requirements:
|
||||
# - XCode Command Line Tools (xcode-select --install)
|
||||
# - A valid signing certificate in the login.keychain. Signing Certificates
|
||||
# can be optained from the Apple Developer site.
|
||||
#
|
||||
# Usage:
|
||||
# This script must be passed 2 parameters
|
||||
# $1 : <source package> : the package that will be signed
|
||||
# $2 : <signed package> : the name to give the signed package (can't be
|
||||
# the same as the source package)
|
||||
#
|
||||
# Example:
|
||||
# The following will sign the 'salt-v2015.8.3.pkg' file and save it as
|
||||
# 'salt-v2015.8.3.signed.pkg'
|
||||
#
|
||||
# ./build_sig.sh salt-v2015.8.3.pkg salt-v2015.8.3.signed.pkg
|
||||
#
|
||||
############################################################################
|
||||
|
||||
############################################################################
|
||||
# Check input parameters
|
||||
############################################################################
|
||||
if [ "$1" == "" ]; then
|
||||
echo "Must supply an source package"
|
||||
else
|
||||
INPUT=$1
|
||||
fi
|
||||
|
||||
if [ "$2" == "" ]; then
|
||||
echo "Must supply an signed package name"
|
||||
else
|
||||
OUTPUT=$2
|
||||
fi
|
||||
|
||||
############################################################################
|
||||
# Import the Salt Developer Signing certificate
|
||||
############################################################################
|
||||
security import "Developer ID Installer.p12" -k ~/Library/Keychains/login.keychain
|
||||
|
||||
############################################################################
|
||||
# Signe the package
|
||||
############################################################################
|
||||
productsign --sign "Developer ID Installer: Salt Stack, Inc. (VK797BMMY4)" $INPUT $OUTPUT
|
|
@ -1 +0,0 @@
|
|||
<h1>Salt is Installed!</h1>
|
9
pkg/osx/conclusion.rtf
Normal file
9
pkg/osx/conclusion.rtf
Normal file
|
@ -0,0 +1,9 @@
|
|||
{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf130
|
||||
{\fonttbl\f0\froman\fcharset0 Times-Roman;}
|
||||
{\colortbl;\red255\green255\blue255;\red0\green0\blue0;}
|
||||
\deftab720
|
||||
\pard\pardeftab720\sl560\sa321\partightenfactor0
|
||||
|
||||
\f0\b\fs48 \cf2 \expnd0\expndtw0\kerning0
|
||||
\outl0\strokewidth0 \strokec2 Salt is Installed!\
|
||||
}
|
|
@ -1,29 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<installer-gui-script minSpecVersion="1">
|
||||
<title>Salt 2015.5.2</title>
|
||||
<organization>com.saltstack.salt</organization>
|
||||
<domains enable_localSystem="true"/>
|
||||
<options rootVolumeOnly="true" />
|
||||
<!-- Define documents displayed at various steps -->
|
||||
<welcome file="welcome.html" mime-type="text/html" />
|
||||
<license file="license.html" mime-type="text/html" />
|
||||
<conclusion file="conclusion.html" mime-type="text/html" />
|
||||
<!-- List all component packages -->
|
||||
<pkg-ref id="com.saltstack.salt"
|
||||
version="2015.5.2"
|
||||
auth="root">salt-src-2015.5.2.pkg</pkg-ref>
|
||||
<!-- List them again here. They can now be organized
|
||||
as a hierarchy if you want. -->
|
||||
<choices-outline>
|
||||
<line choice="com.saltstack.salt"/>
|
||||
</choices-outline>
|
||||
<!-- Define each choice above -->
|
||||
<choice
|
||||
id="com.saltstack.salt"
|
||||
visible="false"
|
||||
title="Salt 2015.5.2"
|
||||
description="Salt 2015.5.2"
|
||||
start_selected="true">
|
||||
<pkg-ref id="com.saltstack.salt"/>
|
||||
</choice>
|
||||
</installer-gui-script>
|
|
@ -5,10 +5,10 @@
|
|||
<domains enable_localSystem="true"/>
|
||||
<options rootVolumeOnly="true" />
|
||||
<!-- Define documents displayed at various steps -->
|
||||
<background file="saltstack.png" mime-type="image/png" scaling="tofit"/>
|
||||
<welcome file="welcome.html" mime-type="text/html" />
|
||||
<license file="license.html" mime-type="text/html" />
|
||||
<conclusion file="conclusion.html" mime-type="text/html" />
|
||||
<background file="saltstack.png" mime-type="image/png" scaling="proportional"/>
|
||||
<welcome file="welcome.rtf" mime-type="text/rtf" />
|
||||
<license file="license.rtf" mime-type="text/rtf" />
|
||||
<conclusion file="conclusion.rtf" mime-type="text/rtf" />
|
||||
<!-- List all component packages -->
|
||||
<pkg-ref id="com.saltstack.salt"
|
||||
version="@VERSION@"
|
||||
|
@ -27,4 +27,4 @@
|
|||
start_selected="true">
|
||||
<pkg-ref id="com.saltstack.salt"/>
|
||||
</choice>
|
||||
</installer-gui-script>
|
||||
</installer-gui-script>
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
<h1>Salt - Remote execution system</h1>
|
||||
<p>Copyright 2014-2015 SaltStack Team</p>
|
||||
<p>Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at</p>
|
||||
|
||||
<p> http://www.apache.org/licenses/LICENSE-2.0</p>
|
||||
|
||||
<p>Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.</p>
|
||||
|
15
pkg/osx/license.rtf
Normal file
15
pkg/osx/license.rtf
Normal file
|
@ -0,0 +1,15 @@
|
|||
{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf130
|
||||
{\fonttbl\f0\froman\fcharset0 Times-Roman;}
|
||||
{\colortbl;\red255\green255\blue255;\red0\green0\blue0;}
|
||||
\deftab720
|
||||
\pard\pardeftab720\sl560\sa321\partightenfactor0
|
||||
|
||||
\f0\b\fs48 \cf2 \expnd0\expndtw0\kerning0
|
||||
\outl0\strokewidth0 \strokec2 Salt - Remote execution system\
|
||||
\pard\pardeftab720\sl280\sa240\partightenfactor0
|
||||
|
||||
\b0\fs24 \cf2 Copyright 2014-2015 SaltStack Team\
|
||||
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at\
|
||||
http://www.apache.org/licenses/LICENSE-2.0\
|
||||
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.\
|
||||
}
|
34
pkg/osx/req.txt
Normal file
34
pkg/osx/req.txt
Normal file
|
@ -0,0 +1,34 @@
|
|||
apache-libcloud==0.19.0
|
||||
backports.ssl_match_hostname==3.4.0.2
|
||||
backports_abc==0.4
|
||||
certifi
|
||||
cffi==1.3.1
|
||||
CherryPy==3.2.3
|
||||
click==4.1
|
||||
enum34==1.1.1
|
||||
gitdb==0.6.4
|
||||
GitPython==1.0.1
|
||||
idna==2.0
|
||||
ioflo==1.4.9
|
||||
ipaddress==1.0.15
|
||||
Jinja2==2.8
|
||||
libnacl==1.4.3
|
||||
linode-python==1.1.1
|
||||
Mako==1.0.3
|
||||
MarkupSafe==0.23
|
||||
msgpack-python==0.4.6
|
||||
pyasn1==0.1.9
|
||||
pycparser==2.14
|
||||
pycrypto==2.6.1
|
||||
python_dateutil==2.4.2
|
||||
python-gnupg==0.3.8
|
||||
PyYAML==3.11
|
||||
pyzmq==15.1.0
|
||||
raet==0.6.5
|
||||
requests==2.9.0
|
||||
singledispatch==3.4.0.3
|
||||
six==1.10.0
|
||||
smmap==0.9.0
|
||||
timelib==0.2.4
|
||||
tornado==4.3
|
||||
vultr==0.1.2
|
4
pkg/osx/req_ext.txt
Normal file
4
pkg/osx/req_ext.txt
Normal file
|
@ -0,0 +1,4 @@
|
|||
cryptography==1.1.2
|
||||
pyOpenSSL==0.15.1
|
||||
pygit2==0.23.2
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
pyopenssl
|
||||
m2crypto
|
||||
pycrypto
|
||||
libnacl
|
||||
raet
|
||||
requests
|
||||
cherrypy==3.2.3
|
||||
jinja2
|
||||
tornado
|
||||
pyyaml
|
||||
msgpack-python
|
||||
apache-libcloud
|
||||
linode-python
|
||||
vultr
|
||||
pyzmq
|
||||
Mako
|
Binary file not shown.
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 12 KiB |
|
@ -1,46 +0,0 @@
|
|||
<p>
|
||||
<a href="http://saltstack.com">SaltStack</a> is extremely fast and scalable
|
||||
systems and configuration management software for predictive orchestration,
|
||||
cloud and data center automation, server provisioning, application deployment
|
||||
and more. </p>
|
||||
<p>Documentation for Salt is available at
|
||||
<a href="http://docs.saltstack.com">http://docs.saltstack.com</a>
|
||||
</p>
|
||||
<p> This package will install Salt on your Mac. Salt
|
||||
installs into /opt/salt. You may want to add /opt/salt/bin to your
|
||||
PATH environment variable.</p>
|
||||
|
||||
<p>LaunchD plist files will be installed in /Library/LaunchDaemons.
|
||||
To enable startup of Salt processes on boot, run one or more of the following
|
||||
as root:</p>
|
||||
|
||||
<table border=0 cellpadding='5'>
|
||||
<tr><td>salt-minion</td>
|
||||
<td>launchctl load /Library/LaunchDaemons/com.saltstack.salt.minion.plist</td></tr>
|
||||
<tr><td>salt-master</td>
|
||||
<td>launchctl load /Library/LaunchDaemons/com.saltstack.salt.master.plist</td></tr>
|
||||
<tr><td>salt-syndic</td>
|
||||
<td>launchctl load /Library/LaunchDaemons/com.saltstack.salt.syndic.plist</td></tr>
|
||||
<tr><td>salt-api</td>
|
||||
<td>launchctl load /Library/LaunchDaemons/com.saltstack.salt.api.plist</td></tr>
|
||||
</table>
|
||||
|
||||
<p>Sample configuration files (master.dist and minion.dist) will be
|
||||
installed to /etc/salt. Create copies of them without the '.dist' in
|
||||
the filename and edit as you see fit.</p>
|
||||
|
||||
<p>This Salt package uses a custom-built Python. To install additional
|
||||
Python modules for Salt, use the associated 'pip' binary. For example,
|
||||
if you need LDAP support in Salt you will need the 'python-ldap' module.
|
||||
Install it with
|
||||
<blockquote>
|
||||
/opt/salt/python/bin/pip install python-ldap
|
||||
</blockquote>
|
||||
<p>
|
||||
Note that some Python modules need a compiler available. Installing
|
||||
Apple's xCode command line tools should provide the necessary utilities.
|
||||
Alternatively, <a href="http://macports.org">MacPorts</a>,
|
||||
<a href="http://finkproject.org">Fink</a>, or <a href="http://brew.sh">
|
||||
Homebrew</a> may provide what you need.
|
||||
|
||||
|
54
pkg/osx/welcome.rtf
Normal file
54
pkg/osx/welcome.rtf
Normal file
|
@ -0,0 +1,54 @@
|
|||
{\rtf1\ansi\ansicpg1252\cocoartf1404\cocoasubrtf130
|
||||
{\fonttbl\f0\froman\fcharset0 Times-Roman;}
|
||||
{\colortbl;\red255\green255\blue255;\red0\green0\blue233;\red0\green0\blue0;\red109\green109\blue109;
|
||||
}
|
||||
\deftab720
|
||||
\pard\pardeftab720\sl280\sa240\partightenfactor0
|
||||
{\field{\*\fldinst{HYPERLINK "http://saltstack.com/"}}{\fldrslt
|
||||
\f0\fs24 \cf2 \expnd0\expndtw0\kerning0
|
||||
\ul \ulc2 \outl0\strokewidth0 \strokec2 SaltStack}}
|
||||
\f0\fs24 \cf3 \expnd0\expndtw0\kerning0
|
||||
\outl0\strokewidth0 \strokec3 is extremely fast and scalable systems and configuration management software for predictive orchestration, cloud and data center automation, server provisioning, application deployment and more. \
|
||||
Documentation for Salt is available at {\field{\*\fldinst{HYPERLINK "http://docs.saltstack.com/"}}{\fldrslt \cf2 \ul \ulc2 \strokec2 http://docs.saltstack.com}} \
|
||||
This package will install Salt on your Mac. Salt installs into /opt/salt. You may want to add /opt/salt/bin to your PATH environment variable.\
|
||||
LaunchD plist files will be installed in /Library/LaunchDaemons. To enable startup of Salt processes on boot, run one or more of the following as root:\
|
||||
|
||||
\itap1\trowd \taflags0 \trgaph108\trleft-108 \trbrdrt\brdrnil \trbrdrl\brdrnil \trbrdrr\brdrnil
|
||||
\clvertalc \clshdrawnil \clwWidth1100\clftsWidth3 \clmart10 \clmarl10 \clmarb10 \clmarr10 \clbrdrt\brdrnil \clbrdrl\brdrnil \clbrdrb\brdrnil \clbrdrr\brdrnil \clpadt100 \clpadl100 \clpadb100 \clpadr100 \gaph\cellx4320
|
||||
\clvertalc \clshdrawnil \clwWidth6880\clftsWidth3 \clmart10 \clmarl10 \clmarb10 \clmarr10 \clbrdrt\brdrnil \clbrdrl\brdrnil \clbrdrb\brdrnil \clbrdrr\brdrnil \clpadt100 \clpadl100 \clpadb100 \clpadr100 \gaph\cellx8640
|
||||
\pard\intbl\itap1\pardeftab720\sl280\partightenfactor0
|
||||
\cf3 salt-minion\cell
|
||||
\pard\intbl\itap1\pardeftab720\sl280\partightenfactor0
|
||||
\cf3 launchctl load /Library/LaunchDaemons/com.saltstack.salt.minion.plist\cell \row
|
||||
|
||||
\itap1\trowd \taflags0 \trgaph108\trleft-108 \trbrdrl\brdrnil \trbrdrr\brdrnil
|
||||
\clvertalc \clshdrawnil \clwWidth1100\clftsWidth3 \clmart10 \clmarl10 \clmarb10 \clmarr10 \clbrdrt\brdrnil \clbrdrl\brdrnil \clbrdrb\brdrnil \clbrdrr\brdrnil \clpadt100 \clpadl100 \clpadb100 \clpadr100 \gaph\cellx4320
|
||||
\clvertalc \clshdrawnil \clwWidth6880\clftsWidth3 \clmart10 \clmarl10 \clmarb10 \clmarr10 \clbrdrt\brdrnil \clbrdrl\brdrnil \clbrdrb\brdrnil \clbrdrr\brdrnil \clpadt100 \clpadl100 \clpadb100 \clpadr100 \gaph\cellx8640
|
||||
\pard\intbl\itap1\pardeftab720\sl280\partightenfactor0
|
||||
\cf3 salt-master\cell
|
||||
\pard\intbl\itap1\pardeftab720\sl280\partightenfactor0
|
||||
\cf3 launchctl load /Library/LaunchDaemons/com.saltstack.salt.master.plist\cell \row
|
||||
|
||||
\itap1\trowd \taflags0 \trgaph108\trleft-108 \trbrdrl\brdrnil \trbrdrr\brdrnil
|
||||
\clvertalc \clshdrawnil \clwWidth1100\clftsWidth3 \clmart10 \clmarl10 \clmarb10 \clmarr10 \clbrdrt\brdrnil \clbrdrl\brdrnil \clbrdrb\brdrnil \clbrdrr\brdrnil \clpadt100 \clpadl100 \clpadb100 \clpadr100 \gaph\cellx4320
|
||||
\clvertalc \clshdrawnil \clwWidth6880\clftsWidth3 \clmart10 \clmarl10 \clmarb10 \clmarr10 \clbrdrt\brdrnil \clbrdrl\brdrnil \clbrdrb\brdrnil \clbrdrr\brdrnil \clpadt100 \clpadl100 \clpadb100 \clpadr100 \gaph\cellx8640
|
||||
\pard\intbl\itap1\pardeftab720\sl280\partightenfactor0
|
||||
\cf3 salt-syndic\cell
|
||||
\pard\intbl\itap1\pardeftab720\sl280\partightenfactor0
|
||||
\cf3 launchctl load /Library/LaunchDaemons/com.saltstack.salt.syndic.plist\cell \row
|
||||
|
||||
\itap1\trowd \taflags0 \trgaph108\trleft-108 \trbrdrl\brdrnil \trbrdrt\brdrnil \trbrdrr\brdrnil
|
||||
\clvertalc \clshdrawnil \clwWidth1100\clftsWidth3 \clmart10 \clmarl10 \clmarb10 \clmarr10 \clbrdrt\brdrnil \clbrdrl\brdrnil \clbrdrb\brdrnil \clbrdrr\brdrnil \clpadt100 \clpadl100 \clpadb100 \clpadr100 \gaph\cellx4320
|
||||
\clvertalc \clshdrawnil \clwWidth6880\clftsWidth3 \clmart10 \clmarl10 \clmarb10 \clmarr10 \clbrdrt\brdrnil \clbrdrl\brdrnil \clbrdrb\brdrnil \clbrdrr\brdrnil \clpadt100 \clpadl100 \clpadb100 \clpadr100 \gaph\cellx8640
|
||||
\pard\intbl\itap1\pardeftab720\sl280\partightenfactor0
|
||||
\cf3 salt-api\cell
|
||||
\pard\intbl\itap1\pardeftab720\sl280\partightenfactor0
|
||||
\cf3 launchctl load /Library/LaunchDaemons/com.saltstack.salt.api.plist\cell \lastrow\row
|
||||
\pard\pardeftab720\sl280\sa240\partightenfactor0
|
||||
\cf3 Sample configuration files (master.dist and minion.dist) will be installed to /etc/salt. Create copies of them without the '.dist' in the filename and edit as you see fit.\
|
||||
This Salt package uses a custom-built Python. To install additional Python modules for Salt, use the associated 'pip' binary. For example, if you need LDAP support in Salt you will need the 'python-ldap' module. Install it with \
|
||||
\pard\pardeftab720\sl280\partightenfactor0
|
||||
\cf3 /opt/salt/python/bin/pip install python-ldap \
|
||||
\pard\pardeftab720\sl280\sa240\partightenfactor0
|
||||
\cf3 Note that some Python modules need a compiler available. Installing Apple's xCode command line tools should provide the necessary utilities. Alternatively, {\field{\*\fldinst{HYPERLINK "http://macports.org/"}}{\fldrslt \cf2 \ul \ulc2 \strokec2 MacPorts}}, {\field{\*\fldinst{HYPERLINK "http://finkproject.org/"}}{\fldrslt \cf2 \ul \ulc2 \strokec2 Fink}}, or {\field{\*\fldinst{HYPERLINK "http://brew.sh/"}}{\fldrslt \cf2 \ul \ulc2 \strokec2 Homebrew}} may provide what you need. \
|
||||
}
|
Loading…
Add table
Reference in a new issue