From e9603a3456bbf252cb40c64688088a4de2ec5b62 Mon Sep 17 00:00:00 2001 From: Dan Foster Date: Thu, 30 May 2013 14:24:00 +0000 Subject: Solaris 11 IPS Package support --- solaris-ips/MANIFEST.bcfg2-server.header | 5 +++++ solaris-ips/MANIFEST.bcfg2.header | 6 ++++++ solaris-ips/Makefile | 20 ++++++++++++++++++++ solaris-ips/README | 22 ++++++++++++++++++++++ solaris-ips/gen-manifests.sh | 16 ++++++++++++++++ solaris-ips/pkginfo.bcfg2 | 10 ++++++++++ solaris-ips/pkginfo.bcfg2-server | 10 ++++++++++ 7 files changed, 89 insertions(+) create mode 100644 solaris-ips/MANIFEST.bcfg2-server.header create mode 100644 solaris-ips/MANIFEST.bcfg2.header create mode 100644 solaris-ips/Makefile create mode 100644 solaris-ips/README create mode 100644 solaris-ips/gen-manifests.sh create mode 100644 solaris-ips/pkginfo.bcfg2 create mode 100644 solaris-ips/pkginfo.bcfg2-server diff --git a/solaris-ips/MANIFEST.bcfg2-server.header b/solaris-ips/MANIFEST.bcfg2-server.header new file mode 100644 index 000000000..8f6b26302 --- /dev/null +++ b/solaris-ips/MANIFEST.bcfg2-server.header @@ -0,0 +1,5 @@ +license ../../LICENSE license=simplified_bsd +set name=description value="Configuration management server" +set name=pkg.summary value="Configuration management server" +set name=pkg.fmri value="pkg://bcfg2/bcfg2-server@1.3.0" + diff --git a/solaris-ips/MANIFEST.bcfg2.header b/solaris-ips/MANIFEST.bcfg2.header new file mode 100644 index 000000000..acdbc8168 --- /dev/null +++ b/solaris-ips/MANIFEST.bcfg2.header @@ -0,0 +1,6 @@ +license ../../LICENSE license=simplified_bsd +set name=description value="Configuration management client" +set name=pkg.summary value="Configuration management client" +set name=pkg.fmri value="pkg://bcfg2/bcfg2@1.3.0" + +file usr/bin/bcfg2 group=bin mode=0755 owner=root path=usr/bin/bcfg2 diff --git a/solaris-ips/Makefile b/solaris-ips/Makefile new file mode 100644 index 000000000..343150dc5 --- /dev/null +++ b/solaris-ips/Makefile @@ -0,0 +1,20 @@ +#!/usr/bin/gmake + +VERS=1.2.4-1 +PYVERSION := $(shell python -c "import sys; print sys.version[0:3]") + +default: clean package + +package: + -mkdir tmp tmp/bcfg2-server tmp/bcfg2 + -mkdir -p build/lib/$(PYVERSION)/site-packages + -cd ../ && PYTHONPATH=$(PYTHONPATH):$(PWD)/build/lib/python2.6/site-packages/ python setup.py install --single-version-externally-managed --record=/dev/null --prefix=$(PWD)/build/usr + #setuptools appears to use a restictive umask + -chmod -R o+r build/ + -chmod +x build/usr/bin/bcfg2 + -sh ./gen-manifests.sh + +clean: + -rm -rf tmp build + -rm -rf MANIFEST.bcfg2 + -rm -rf MANIFEST.bcfg2-server diff --git a/solaris-ips/README b/solaris-ips/README new file mode 100644 index 000000000..24021b992 --- /dev/null +++ b/solaris-ips/README @@ -0,0 +1,22 @@ +BUILDING +-------- + +Dependancies: + gmake + +Usage: + gmake + + +PUBLISHING +---------- + +Modify MANIFEST.bcfg2 and MANIFEST.bcfg2-server to set your publisher name in the fmri, e.g. Change + set name=pkg.fmri value="pkg://bcfg2/bcfg2@1.2.4" +to + set name=pkg.fmri value="pkg://example.com/bcfg2@1.2.4" + + +Then run the pkgsend publish, i.e. + pkgsend publish -s http://example.com/path/to/repo -d build MANIFEST.bcfg2 + pkgsend publish -s http://example.com/path/to/repo -d build MANIFEST.bcfg2-server diff --git a/solaris-ips/gen-manifests.sh b/solaris-ips/gen-manifests.sh new file mode 100644 index 000000000..af646108f --- /dev/null +++ b/solaris-ips/gen-manifests.sh @@ -0,0 +1,16 @@ +#!/usr/bin/sh + +#bcfg2 +cat MANIFEST.bcfg2.header > MANIFEST.bcfg2 +pkgsend generate build | grep man[15] >> MANIFEST.bcfg2 +pkgsend generate build | grep Bcfg2/[^/]*.py$ >> MANIFEST.bcfg2 +pkgsend generate build | grep Bcfg2/Client/.*.py$ >> MANIFEST.bcfg2 + +#bcfg2-server +cat MANIFEST.bcfg2-server.header > MANIFEST.bcfg2-server +pkgsend generate build | grep man[8] >> MANIFEST.bcfg2-server +pkgsend generate build | grep share/bcfg2 >> MANIFEST.bcfg2-server +pkgsend generate build | grep bin/bcfg2- >> MANIFEST.bcfg2-server +pkgsend generate build | grep Bcfg2/[^/]*.py$ >> MANIFEST.bcfg2-server +pkgsend generate build | grep Bcfg2/Server/.*.py$ >> MANIFEST.bcfg2-server + diff --git a/solaris-ips/pkginfo.bcfg2 b/solaris-ips/pkginfo.bcfg2 new file mode 100644 index 000000000..90c628c53 --- /dev/null +++ b/solaris-ips/pkginfo.bcfg2 @@ -0,0 +1,10 @@ +PKG="SCbcfg2" +NAME="bcfg2" +ARCH="sparc" +VERSION="1.2.4" +CATEGORY="application" +VENDOR="Argonne National Labratory" +EMAIL="bcfg-dev@mcs.anl.gov" +PSTAMP="Bcfg2 Developers" +BASEDIR="/opt/csw" +CLASSES="none" diff --git a/solaris-ips/pkginfo.bcfg2-server b/solaris-ips/pkginfo.bcfg2-server new file mode 100644 index 000000000..0e865522c --- /dev/null +++ b/solaris-ips/pkginfo.bcfg2-server @@ -0,0 +1,10 @@ +PKG="SCbcfg2-server" +NAME="bcfg2-server" +ARCH="sparc" +VERSION="1.2.4" +CATEGORY="application" +VENDOR="Argonne National Labratory" +EMAIL="bcfg-dev@mcs.anl.gov" +PSTAMP="Bcfg2 Developers" +BASEDIR="/usr" +CLASSES="none" -- cgit v1.2.3-1-g7c22 From 5ef9138ae6f8c27ae41e6c263cd7e4d64d743c22 Mon Sep 17 00:00:00 2001 From: Dan Foster Date: Sun, 2 Jun 2013 11:10:11 +0000 Subject: Remove accidental extra client files from server package --- solaris-ips/MANIFEST.bcfg2-server.header | 2 +- solaris-ips/MANIFEST.bcfg2.header | 2 +- solaris-ips/gen-manifests.sh | 1 - 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/solaris-ips/MANIFEST.bcfg2-server.header b/solaris-ips/MANIFEST.bcfg2-server.header index 8f6b26302..efa11181f 100644 --- a/solaris-ips/MANIFEST.bcfg2-server.header +++ b/solaris-ips/MANIFEST.bcfg2-server.header @@ -1,5 +1,5 @@ license ../../LICENSE license=simplified_bsd set name=description value="Configuration management server" set name=pkg.summary value="Configuration management server" -set name=pkg.fmri value="pkg://bcfg2/bcfg2-server@1.3.0" +set name=pkg.fmri value="pkg://bcfg2/bcfg2-server@1.3.1" diff --git a/solaris-ips/MANIFEST.bcfg2.header b/solaris-ips/MANIFEST.bcfg2.header index acdbc8168..8358aafca 100644 --- a/solaris-ips/MANIFEST.bcfg2.header +++ b/solaris-ips/MANIFEST.bcfg2.header @@ -1,6 +1,6 @@ license ../../LICENSE license=simplified_bsd set name=description value="Configuration management client" set name=pkg.summary value="Configuration management client" -set name=pkg.fmri value="pkg://bcfg2/bcfg2@1.3.0" +set name=pkg.fmri value="pkg://bcfg2/bcfg2@1.3.1" file usr/bin/bcfg2 group=bin mode=0755 owner=root path=usr/bin/bcfg2 diff --git a/solaris-ips/gen-manifests.sh b/solaris-ips/gen-manifests.sh index af646108f..3b4cd30df 100644 --- a/solaris-ips/gen-manifests.sh +++ b/solaris-ips/gen-manifests.sh @@ -11,6 +11,5 @@ cat MANIFEST.bcfg2-server.header > MANIFEST.bcfg2-server pkgsend generate build | grep man[8] >> MANIFEST.bcfg2-server pkgsend generate build | grep share/bcfg2 >> MANIFEST.bcfg2-server pkgsend generate build | grep bin/bcfg2- >> MANIFEST.bcfg2-server -pkgsend generate build | grep Bcfg2/[^/]*.py$ >> MANIFEST.bcfg2-server pkgsend generate build | grep Bcfg2/Server/.*.py$ >> MANIFEST.bcfg2-server -- cgit v1.2.3-1-g7c22 From 35232507f6eeefecdec77842f7b12209040f7a5c Mon Sep 17 00:00:00 2001 From: Dan Foster Date: Sun, 2 Jun 2013 21:25:14 +0000 Subject: Update export.py to version tag IPS manifests --- tools/export.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tools/export.py b/tools/export.py index 0f4724e6b..5cd0d5c41 100755 --- a/tools/export.py +++ b/tools/export.py @@ -227,6 +227,15 @@ E.G. 1.2.0pre1 is a valid version. 'VERSION="%s"\n' % version, startswith=True, dryrun=options.dryrun) + # update solaris IPS version + find_and_replace('solaris-ips/MANIFEST.bcfg2.header', 'set name=pkg.fmri value="pkg://bcfg2/bcfg2@', + 'set name=pkg.fmri value="pkg://bcfg2/bcfg2@%s"' % version, + startswith=True, + dryrun=options.dryrun) + find_and_replace('solaris-ips/MANIFEST.bcfg2-server.header', 'set name=pkg.fmri value="pkg://bcfg2/bcfg2-server@', + 'set name=pkg.fmri value="pkg://bcfg2/bcfg2-server@%s"' % version, + startswith=True, + dryrun=options.dryrun) # set new version in Bcfg2/version.py find_and_replace('src/lib/Bcfg2/version.py', '__version__ =', -- cgit v1.2.3-1-g7c22