Improve support for building the chocolatey package

fixes #12603
This commit is contained in:
Gunnar Beutner 2016-08-31 13:41:13 +02:00
parent 06cb3cf875
commit e298191c2e
6 changed files with 36 additions and 8 deletions

View File

@ -281,6 +281,7 @@ add_subdirectory(itl)
add_subdirectory(doc) add_subdirectory(doc)
add_subdirectory(agent) add_subdirectory(agent)
add_subdirectory(plugins) add_subdirectory(plugins)
add_subdirectory(choco)
if(MSVC) if(MSVC)
add_subdirectory(icinga-installer) add_subdirectory(icinga-installer)

View File

@ -41,11 +41,9 @@ Update the [.mailmap](.mailmap) and [AUTHORS](AUTHORS) files:
## Version ## Version
Update the version number in the following files: Update the version number in the following file:
* [icinga2.spec]: Version: (.*) * [icinga2.spec]: Version: (.*)
* [icinga2.nuspec]: <version>(.*)</version>
* [tools/chocolateyInstall.ps1]: Icinga2-v(.*)-{x86,x86_64}.msi
Example: Example:

29
choco/CMakeLists.txt Normal file
View File

@ -0,0 +1,29 @@
# Icinga 2
# Copyright (C) 2012-2016 Icinga Development Team (https://www.icinga.org/)
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
if(WIN32)
find_program(CHOCO_BINARY choco)
configure_file(icinga2.nuspec.cmake icinga2.nuspec)
configure_file(chocolateyInstall.ps1.cmake chocolateyInstall.ps1)
add_custom_target(choco-pkg ALL
COMMAND choco pack
COMMAND ${CMAKE_COMMAND} -E rename ${CMAKE_CURRENT_BINARY_DIR}/icinga2.${SPEC_VERSION}.nupkg ${CMAKE_CURRENT_BINARY_DIR}/icinga2.nupkg
DEPENDS icinga2.nuspec ${CMAKE_CURRENT_BINARY_DIR}/chocolateyInstall.ps1 chocolateyUninstall.ps1
)
endif()

View File

@ -1,7 +1,7 @@
$packageName = 'icinga2' $packageName = 'icinga2'
$installerType = 'msi' $installerType = 'msi'
$url32 = 'http://packages.icinga.org/windows/Icinga2-v2.5.4-x86.msi' $url32 = 'http://packages.icinga.org/windows/Icinga2-v${SPEC_VERSION}-x86.msi'
$url64 = 'http://packages.icinga.org/windows/Icinga2-v2.5.4-x86_64.msi' $url64 = 'http://packages.icinga.org/windows/Icinga2-v${SPEC_VERSION}-x86_64.msi'
$silentArgs = '/qn /norestart' $silentArgs = '/qn /norestart'
$validExitCodes = @(0) $validExitCodes = @(0)

View File

@ -6,7 +6,7 @@
<!-- Read this before publishing packages to chocolatey.org: https://github.com/chocolatey/chocolatey/wiki/CreatePackages --> <!-- Read this before publishing packages to chocolatey.org: https://github.com/chocolatey/chocolatey/wiki/CreatePackages -->
<id>icinga2</id> <id>icinga2</id>
<title>Icinga2</title> <title>Icinga2</title>
<version>2.5.4</version> <version>${SPEC_VERSION}</version>
<authors>2016 - The Icinga Project</authors> <authors>2016 - The Icinga Project</authors>
<owners>Icinga Development Team</owners> <owners>Icinga Development Team</owners>
<summary>icinga2 - Monitoring Agent for Windows</summary> <summary>icinga2 - Monitoring Agent for Windows</summary>
@ -18,7 +18,7 @@
<iconUrl>https://www.icinga.org/wp-content/uploads/2015/05/icinga_icon_128x128.png</iconUrl> <iconUrl>https://www.icinga.org/wp-content/uploads/2015/05/icinga_icon_128x128.png</iconUrl>
</metadata> </metadata>
<files> <files>
<file src="tools\chocolateyInstall.ps1" target="tools" /> <file src="${CMAKE_CURRENT_BINARY_DIR}/chocolateyInstall.ps1" target="tools" />
<file src="tools\chocolateyUninstall.ps1" target="tools" /> <file src="${CMAKE_CURRENT_SOURCE_DIR}/chocolateyUninstall.ps1" target="tools" />
</files> </files>
</package> </package>