2 # This file and its contents are supplied under the terms of the
3 # Common Development and Distribution License ("CDDL"), version 1.0.
4 # You may only use this file in accordance with the terms of version
7 # A full copy of the text of the CDDL should have accompanied this
8 # source. A copy of the CDDL is also available via the Internet at
9 # http://www.illumos.org/license/CDDL.
13 # Copyright 2016-2021 Jim Klimov
14 # Copyright 2022 Till Wegmueller
16 include ..
/..
/..
/make-rules
/shared-macros.mk
18 # NOTE: Before bumping to the new core version, take a look at
19 # https://jenkins.io/changelog/ (weekly)
20 # https://jenkins.io/changelog-stable/ (LTS)
21 # for "weather report" (user votes on good/bad state of the release).
22 # At some point it may make sense to deliver packaged LTS releases,
23 # and the initial recipe supports that notion already just in case,
24 # but no LTS issued so far includes updated libzfs.jar (v0.8+ needed).
25 # Note that for LTS it would make sense to define indexed "additional
26 # source" variables below, see e.g. docbook for inspiration.
28 COMPONENT_NAME
= jenkins
30 COMPONENT_MAJOR_VERSION
= 2
31 COMPONENT_MINOR_VERSION
= 479
32 COMPONENT_PATCH_VERSION
= 2
33 COMPONENT_ARCHIVE_HASH
= sha256
:177c2c033f0d3ae4148e601d0fdada60112d83f250521f3a0a0fd97cbb138dbd
34 # See $(COMPONENT_ARCHIVE_URL).sha256 e.g. for current weekly release, run
35 # wget -O - http://mirrors.jenkins-ci.org/war/latest/jenkins.war.sha256
37 # wget -O - http://mirrors.jenkins.io/war-stable/latest/jenkins.war.sha256
39 COMPONENT_VERSION
= $(COMPONENT_MAJOR_VERSION
).
$(COMPONENT_MINOR_VERSION
).
$(COMPONENT_PATCH_VERSION
)
40 COMPONENT_ARCHIVE
= $(COMPONENT_NAME
)-$(JENKINS_RELEASE
)-$(COMPONENT_VERSION
).war
41 COMPONENT_FMRI
= developer
/jenkins-core-
$(JENKINS_RELEASE
)
42 COMPONENT_CLASSIFICATION
= Development
/Java
43 COMPONENT_SRC
= $(COMPONENT_NAME
)-$(COMPONENT_VERSION
)
44 COMPONENT_PROJECT_URL
= https
://jenkins.io
/changelog-stable
/
45 COMPONENT_ARCHIVE_URL
= https
://get.jenkins.io
/war-stable
/$(COMPONENT_VERSION
)/jenkins.war
46 COMPONENT_LICENSE
= MIT
47 COMPONENT_LICENSE_FILE
= jenkins.license
48 COMPONENT_SUMMARY
= Jenkins is a Java-based CI automation server
50 # Note: for the core, we only download a WAR - no unpacking, no building...
51 include $(WS_MAKE_RULES
)/prep-download.mk
52 include $(WS_MAKE_RULES
)/justmake.mk
53 include $(WS_MAKE_RULES
)/ips.mk
57 CLEAN_PATHS
+= $(SOURCE_DIR
)
61 $(SOURCE_DIR
)/.prep
: download
62 $(COMPONENT_PREP_ACTION
)
65 prep
:: $(SOURCE_DIR
)/.prep
69 $(RM
) -r
$(CLEAN_PATHS
)
72 $(RM
) -r
$(CLOBBER_PATHS
)
74 COMPONENT_PREP_ACTION
= ( $(MKDIR
) $(@D
)/ && ln
-sfr
$(USERLAND_ARCHIVES
)/$(COMPONENT_ARCHIVE
) $(COMPONENT_DIR
)/files
/Makefile
$(@D
)/ )
76 # This, and the symlinks in the custom Makefile, save quite a bit
77 # of storage overhead (do not need to copy the WAR 3 extra times)
78 COMPONENT_COPY_ACTION
= ( $(CLONEY
) $(SOURCE_DIR
)/ $(@D
)/ )
80 COMPONENT_INSTALL_ENV
+= JENKINS_VERSION
=$(COMPONENT_VERSION
)
81 COMPONENT_INSTALL_ENV
+= JENKINS_RELEASE
=$(JENKINS_RELEASE
)
85 install: $(INSTALL_32
)
89 # Auto-generated dependencies
90 REQUIRED_PACKAGES
+= runtime
/java
/openjdk17