# Opsi Builder to automate the creation of Opsi packages for the Opsi Systen # Copyright (C) 2012 Daniel Schwager # Copyright (C) 2014 Mario Fetka # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as # published by the Free Software Foundation, either version 3 of the # License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . ################################################### # opsi-builder.cfg # Default values for opsi-builder system #################################################### # # Define your local, private, individual, not-project dependent build setup # in the file ~/.opsi-builder.cfg OR by using the environment variable OPSI_BUILDER # pointing the the configuration. # export OPSI_BUILDER=/home/dschwager/work/opsi-builder.cfg # If no files are availble, the default values will be use # from /conf/opsi-builder.cfg # # cp /conf/opsi-builder.cfg $HOME/.opsi-builder.cfg # vi $HOME/.opsi-builder.cfg # may you will change some locations ################################################### ################################## # Global variables ################################# TMP_DIR=/tmp # Setup debug level, be more verbose # Optional parameter. Valid values: debug|info. Default: DEBUG_LEVEL= # STATUS - defines the stabability of the build # Valid values: # integration: this is used by a continuous integration server. # NOTE: The 'RELEASE'-variable inside builder-project.cfg # will be increased AUTOMATICALLY !! # testing : it's in the testing/QM process # release : passed the testing and go's to productive STATUS="integration" # STATUS_INTEGRATION_RELEASE - automatically created release number, # if STATUS is set to "integration". Valid values: anything, default value: "`date +%Y%m%d%H%M`" # Samples: # "func:inc1" - build-in function "inc1": search the opsi-repository for the latested release and increment 1 # "`date +%Y%m%d%H%M`" - command output, e.g. the date format YYMMDD-HHMM # "$BUILD_NUMBER" - Environment variables, jenkins https://wiki.jenkins-ci.org/display/JENKINS/Building+a+software+project#Buildingasoftwareproject-JenkinsSetEnvironmentVariables STATUS_INTEGRATION_RELEASE="func:inc1" # CHECKSUM_AUTOCREATE - Every downloaded file is checked using SHA1 algorithm # against a checksum file, if this file ist not available, it will be created # on-the-fly, dependent on this setting. # Valid values: true|false, Default: false CHECKSUM_AUTOCREATE=false ############################### # CREATOR ############################### # Part of the published OPSI-package name # Limitation: max 3 chars (beause OPSI limites REVISION to 16 chars) CREATOR_TAG=xx # Additonal information from the person creating the packages CREATOR_NAME="Your name" CREATOR_EMAIL="your-email@domain.de" ################################## # OPSI repository settings ################################# # Basedirectory storing OPSI-packages after building OPSI_REPOS_BASE_DIR=$HOME/opsi-repository # Directory- and filename pattern OPSI_REPOS_PRODUCT_DIR=${OPSI_REPOS_BASE_DIR}/${STATUS}/${VENDOR}/${PN}/${VERSION}-${CREATOR_TAG}${RELEASE} # OPSI-package filepattern OPSI_REPOS_FILE_PATTERN=${PN}_${VERSION}-${CREATOR_TAG}${RELEASE} # Force alway upload to opsi repos # Target: publish, Valid values: true|false, Default: false # OPSI_REPOS_FORCE_UPLOAD=true # define the artifacts uploading to the repository (OPSI_REPOS_FORCE_UPLOAD must be "true") # OPSI_REPOS_UPLOAD_SOURCE product directory # OPSI_REPOS_UPLOAD_OPSI : opsi package # OPSI_REPOS_UPLOAD_BIN : File used by opsi package creation # OPSI_REPOS_UPLOAD_OPSI_ZSYNC : Additional files (*.md5, *.zsync) to sync opsi package using opsi-product-updater # OPSI_REPOS_OPSIMANAGER_INSTALL : Install the created opsi packet automatically after building # It equal to the command "opsi-package-manager -i" # Note: the OPSI_REPOS_BASE_DIR must be RW for the user pcpatch. # You must be member of the unix group pcpatch&opsiadmin OPSI_REPOS_UPLOAD_OPSI=true OPSI_REPOS_UPLOAD_OPSI_ZSYNC=false OPSI_REPOS_UPLOAD_SOURCE=false OPSI_REPOS_UPLOAD_BIN=false OPSI_REPOS_OPSIMANAGER_INSTALL=false ## # Limiting instances of published version # Valid values: true|false OPSI_REPOS_PURGE=false # Only purge projects using the defined STATUS # ValidValues: integration|testing|release # Defaut: integration OPSI_REPOS_PURGE_STATUS=integration # defines the max. instances of published versions per product # Valid values: 0...n, 0: disable autocleanup OPSI_REPOS_PURGE_LIMIT=3 # defines limits for special products # Valid values: 0...n, 0: disable autocleanup OPSI_REPOS_PURGE_LIMIT_productname1=2 OPSI_REPOS_PURGE_LIMIT_productname2=6 # create an gpg signfile OPSI_REPOS_UPLOAD_OPSI_GPG=false GPG_PASSPHRASE="" ############################### # Distribution / Vendor settings ############################### # Directory downloading/cacheing the artifacts like MSI package or icons from the vendor webside DIST_CACHE_DIR=$HOME/.opsi-dist-cache/${PN}-${VERSION} # private dist repository. You can use all variables from release.cfg insde the URL # this optinal URL will be the FIRST url to check for downloading vendor stuff. # To copy a local file, the repos should start with file:// DIST_PRIVATE_REPOS=file://$HOME/opsi-dist.private/$VENDOR/$PN/$VERSION # Force always downloading dist files # DIST_FORCE_DOWNLOAD=1