misc: Add CentOS 7 rpm build
This commit is contained in:
31
Makefile
31
Makefile
@@ -18,8 +18,8 @@
|
|||||||
SHELL = /usr/bin/env bash
|
SHELL = /usr/bin/env bash
|
||||||
.PHONY: all art cleanart version program lang path deps run race bindata generate build build-debug crossbuild clean test gofmt yamlfmt format docs
|
.PHONY: all art cleanart version program lang path deps run race bindata generate build build-debug crossbuild clean test gofmt yamlfmt format docs
|
||||||
.PHONY: rpmbuild mkdirs rpm srpm spec tar upload upload-sources upload-srpms upload-rpms upload-releases copr tag
|
.PHONY: rpmbuild mkdirs rpm srpm spec tar upload upload-sources upload-srpms upload-rpms upload-releases copr tag
|
||||||
.PHONY: mkosi mkosi_fedora-30 mkosi_fedora-29 mkosi_debian-10 mkosi_ubuntu-bionic mkosi_archlinux
|
.PHONY: mkosi mkosi_fedora-30 mkosi_fedora-29 mkosi_centos-7 mkosi_debian-10 mkosi_ubuntu-bionic mkosi_archlinux
|
||||||
.PHONY: release releases_path release_fedora-30 release_fedora-29 release_debian-10 release_ubuntu-bionic release_archlinux
|
.PHONY: release releases_path release_fedora-30 release_fedora-29 release_centos-7 release_debian-10 release_ubuntu-bionic release_archlinux
|
||||||
.PHONY: funcgen
|
.PHONY: funcgen
|
||||||
.SILENT: clean bindata
|
.SILENT: clean bindata
|
||||||
|
|
||||||
@@ -55,18 +55,21 @@ GOHOSTARCH = $(shell go env GOHOSTARCH)
|
|||||||
|
|
||||||
TOKEN_FEDORA-30 = fedora-30
|
TOKEN_FEDORA-30 = fedora-30
|
||||||
TOKEN_FEDORA-29 = fedora-29
|
TOKEN_FEDORA-29 = fedora-29
|
||||||
|
TOKEN_CENTOS-7 = centos-7
|
||||||
TOKEN_DEBIAN-10 = debian-10
|
TOKEN_DEBIAN-10 = debian-10
|
||||||
TOKEN_UBUNTU-BIONIC = ubuntu-bionic
|
TOKEN_UBUNTU-BIONIC = ubuntu-bionic
|
||||||
TOKEN_ARCHLINUX = archlinux
|
TOKEN_ARCHLINUX = archlinux
|
||||||
|
|
||||||
FILE_FEDORA-30 = mgmt-$(TOKEN_FEDORA-30)-$(VERSION)-1.x86_64.rpm
|
FILE_FEDORA-30 = mgmt-$(TOKEN_FEDORA-30)-$(VERSION)-1.x86_64.rpm
|
||||||
FILE_FEDORA-29 = mgmt-$(TOKEN_FEDORA-29)-$(VERSION)-1.x86_64.rpm
|
FILE_FEDORA-29 = mgmt-$(TOKEN_FEDORA-29)-$(VERSION)-1.x86_64.rpm
|
||||||
|
FILE_CENTOS-7 = mgmt-$(TOKEN_CENTOS-7)-$(VERSION)-1.x86_64.rpm
|
||||||
FILE_DEBIAN-10 = mgmt_$(TOKEN_DEBIAN-10)_$(VERSION)_amd64.deb
|
FILE_DEBIAN-10 = mgmt_$(TOKEN_DEBIAN-10)_$(VERSION)_amd64.deb
|
||||||
FILE_UBUNTU-BIONIC = mgmt_$(TOKEN_UBUNTU-BIONIC)_$(VERSION)_amd64.deb
|
FILE_UBUNTU-BIONIC = mgmt_$(TOKEN_UBUNTU-BIONIC)_$(VERSION)_amd64.deb
|
||||||
FILE_ARCHLINUX = mgmt-$(TOKEN_ARCHLINUX)-$(VERSION)-1-x86_64.pkg.tar.xz
|
FILE_ARCHLINUX = mgmt-$(TOKEN_ARCHLINUX)-$(VERSION)-1-x86_64.pkg.tar.xz
|
||||||
|
|
||||||
PKG_FEDORA-30 = releases/$(VERSION)/$(TOKEN_FEDORA-30)/$(FILE_FEDORA-30)
|
PKG_FEDORA-30 = releases/$(VERSION)/$(TOKEN_FEDORA-30)/$(FILE_FEDORA-30)
|
||||||
PKG_FEDORA-29 = releases/$(VERSION)/$(TOKEN_FEDORA-29)/$(FILE_FEDORA-29)
|
PKG_FEDORA-29 = releases/$(VERSION)/$(TOKEN_FEDORA-29)/$(FILE_FEDORA-29)
|
||||||
|
PKG_CENTOS-7 = releases/$(VERSION)/$(TOKEN_CENTOS-7)/$(FILE_CENTOS-7)
|
||||||
PKG_DEBIAN-10 = releases/$(VERSION)/$(TOKEN_DEBIAN-10)/$(FILE_DEBIAN-10)
|
PKG_DEBIAN-10 = releases/$(VERSION)/$(TOKEN_DEBIAN-10)/$(FILE_DEBIAN-10)
|
||||||
PKG_UBUNTU-BIONIC = releases/$(VERSION)/$(TOKEN_UBUNTU-BIONIC)/$(FILE_UBUNTU-BIONIC)
|
PKG_UBUNTU-BIONIC = releases/$(VERSION)/$(TOKEN_UBUNTU-BIONIC)/$(FILE_UBUNTU-BIONIC)
|
||||||
PKG_ARCHLINUX = releases/$(VERSION)/$(TOKEN_ARCHLINUX)/$(FILE_ARCHLINUX)
|
PKG_ARCHLINUX = releases/$(VERSION)/$(TOKEN_ARCHLINUX)/$(FILE_ARCHLINUX)
|
||||||
@@ -365,7 +368,7 @@ tag: ## tags a new release
|
|||||||
#
|
#
|
||||||
# mkosi
|
# mkosi
|
||||||
#
|
#
|
||||||
mkosi: mkosi_fedora-30 mkosi_fedora-29 mkosi_debian-10 mkosi_ubuntu-bionic mkosi_archlinux ## builds distro packages via mkosi
|
mkosi: mkosi_fedora-30 mkosi_fedora-29 mkosi_centos-7 mkosi_debian-10 mkosi_ubuntu-bionic mkosi_archlinux ## builds distro packages via mkosi
|
||||||
|
|
||||||
mkosi_fedora-30: releases/$(VERSION)/.mkdir
|
mkosi_fedora-30: releases/$(VERSION)/.mkdir
|
||||||
@title='$@' ; echo "Generating: $${title#'mkosi_'} via mkosi..."
|
@title='$@' ; echo "Generating: $${title#'mkosi_'} via mkosi..."
|
||||||
@@ -375,6 +378,10 @@ mkosi_fedora-29: releases/$(VERSION)/.mkdir
|
|||||||
@title='$@' ; echo "Generating: $${title#'mkosi_'} via mkosi..."
|
@title='$@' ; echo "Generating: $${title#'mkosi_'} via mkosi..."
|
||||||
@title='$@' ; distro=$${title#'mkosi_'} ; ./misc/mkosi/make.sh $${distro} `realpath "releases/$(VERSION)/"`
|
@title='$@' ; distro=$${title#'mkosi_'} ; ./misc/mkosi/make.sh $${distro} `realpath "releases/$(VERSION)/"`
|
||||||
|
|
||||||
|
mkosi_centos-7: releases/$(VERSION)/.mkdir
|
||||||
|
@title='$@' ; echo "Generating: $${title#'mkosi_'} via mkosi..."
|
||||||
|
@title='$@' ; distro=$${title#'mkosi_'} ; ./misc/mkosi/make.sh $${distro} `realpath "releases/$(VERSION)/"`
|
||||||
|
|
||||||
mkosi_debian-10: releases/$(VERSION)/.mkdir
|
mkosi_debian-10: releases/$(VERSION)/.mkdir
|
||||||
@title='$@' ; echo "Generating: $${title#'mkosi_'} via mkosi..."
|
@title='$@' ; echo "Generating: $${title#'mkosi_'} via mkosi..."
|
||||||
@title='$@' ; distro=$${title#'mkosi_'} ; ./misc/mkosi/make.sh $${distro} `realpath "releases/$(VERSION)/"`
|
@title='$@' ; distro=$${title#'mkosi_'} ; ./misc/mkosi/make.sh $${distro} `realpath "releases/$(VERSION)/"`
|
||||||
@@ -398,11 +405,12 @@ releases_path:
|
|||||||
|
|
||||||
release_fedora-30: $(PKG_FEDORA-30)
|
release_fedora-30: $(PKG_FEDORA-30)
|
||||||
release_fedora-29: $(PKG_FEDORA-29)
|
release_fedora-29: $(PKG_FEDORA-29)
|
||||||
|
release_centos-7: $(PKG_CENTOS-7)
|
||||||
release_debian-10: $(PKG_DEBIAN-10)
|
release_debian-10: $(PKG_DEBIAN-10)
|
||||||
release_ubuntu-bionic: $(PKG_UBUNTU-BIONIC)
|
release_ubuntu-bionic: $(PKG_UBUNTU-BIONIC)
|
||||||
release_archlinux: $(PKG_ARCHLINUX)
|
release_archlinux: $(PKG_ARCHLINUX)
|
||||||
|
|
||||||
releases/$(VERSION)/mgmt-release.url: $(PKG_FEDORA-30) $(PKG_FEDORA-29) $(PKG_DEBIAN-10) $(PKG_UBUNTU-BIONIC) $(PKG_ARCHLINUX) $(SHA256SUMS_ASC)
|
releases/$(VERSION)/mgmt-release.url: $(PKG_FEDORA-30) $(PKG_FEDORA-29) $(PKG_CENTOS-7) $(PKG_DEBIAN-10) $(PKG_UBUNTU-BIONIC) $(PKG_ARCHLINUX) $(SHA256SUMS_ASC)
|
||||||
@echo "Pushing git tag $(VERSION) to origin..."
|
@echo "Pushing git tag $(VERSION) to origin..."
|
||||||
git push origin $(VERSION)
|
git push origin $(VERSION)
|
||||||
@echo "Creating github release..."
|
@echo "Creating github release..."
|
||||||
@@ -410,6 +418,7 @@ releases/$(VERSION)/mgmt-release.url: $(PKG_FEDORA-30) $(PKG_FEDORA-29) $(PKG_DE
|
|||||||
-F <( echo -e "$(VERSION)\n";echo "Verify the signatures of all packages before you use them. The signing key can be downloaded from https://purpleidea.com/contact/#pgp-key to verify the release." ) \
|
-F <( echo -e "$(VERSION)\n";echo "Verify the signatures of all packages before you use them. The signing key can be downloaded from https://purpleidea.com/contact/#pgp-key to verify the release." ) \
|
||||||
-a $(PKG_FEDORA-30) \
|
-a $(PKG_FEDORA-30) \
|
||||||
-a $(PKG_FEDORA-29) \
|
-a $(PKG_FEDORA-29) \
|
||||||
|
-a $(PKG_CENTOS-7) \
|
||||||
-a $(PKG_DEBIAN-10) \
|
-a $(PKG_DEBIAN-10) \
|
||||||
-a $(PKG_UBUNTU-BIONIC) \
|
-a $(PKG_UBUNTU-BIONIC) \
|
||||||
-a $(PKG_ARCHLINUX) \
|
-a $(PKG_ARCHLINUX) \
|
||||||
@@ -420,7 +429,7 @@ releases/$(VERSION)/mgmt-release.url: $(PKG_FEDORA-30) $(PKG_FEDORA-29) $(PKG_DE
|
|||||||
|| rm -f releases/$(VERSION)/mgmt-release.url
|
|| rm -f releases/$(VERSION)/mgmt-release.url
|
||||||
|
|
||||||
releases/$(VERSION)/.mkdir:
|
releases/$(VERSION)/.mkdir:
|
||||||
mkdir -p releases/$(VERSION)/{$(TOKEN_FEDORA-30),$(TOKEN_FEDORA-29),$(TOKEN_DEBIAN-10),$(TOKEN_UBUNTU-BIONIC),$(TOKEN_ARCHLINUX)}/ && touch releases/$(VERSION)/.mkdir
|
mkdir -p releases/$(VERSION)/{$(TOKEN_FEDORA-30),$(TOKEN_FEDORA-29),$(TOKEN_CENTOS-7),$(TOKEN_DEBIAN-10),$(TOKEN_UBUNTU-BIONIC),$(TOKEN_ARCHLINUX)}/ && touch releases/$(VERSION)/.mkdir
|
||||||
|
|
||||||
releases/$(VERSION)/$(TOKEN_FEDORA-30)/changelog: $(PROGRAM) releases/$(VERSION)/.mkdir
|
releases/$(VERSION)/$(TOKEN_FEDORA-30)/changelog: $(PROGRAM) releases/$(VERSION)/.mkdir
|
||||||
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; echo "Generating: $${distro} changelog..."
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; echo "Generating: $${distro} changelog..."
|
||||||
@@ -438,6 +447,14 @@ $(PKG_FEDORA-29): releases/$(VERSION)/$(TOKEN_FEDORA-29)/changelog
|
|||||||
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; echo "Building: $${distro} package..."
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; echo "Building: $${distro} package..."
|
||||||
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; ./misc/fpm-pack.sh $${distro} $(VERSION) "$(FILE_FEDORA-29)" libvirt-devel augeas-devel
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; ./misc/fpm-pack.sh $${distro} $(VERSION) "$(FILE_FEDORA-29)" libvirt-devel augeas-devel
|
||||||
|
|
||||||
|
releases/$(VERSION)/$(TOKEN_CENTOS-7)/changelog: $(PROGRAM) releases/$(VERSION)/.mkdir
|
||||||
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; echo "Generating: $${distro} changelog..."
|
||||||
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; ./misc/make-rpm-changelog.sh "$${distro}" $(VERSION)
|
||||||
|
|
||||||
|
$(PKG_CENTOS-7): releases/$(VERSION)/$(TOKEN_CENTOS-7)/changelog
|
||||||
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; echo "Building: $${distro} package..."
|
||||||
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; ./misc/fpm-pack.sh $${distro} $(VERSION) "$(FILE_CENTOS-7)" libvirt-devel augeas-devel
|
||||||
|
|
||||||
releases/$(VERSION)/$(TOKEN_DEBIAN-10)/changelog: $(PROGRAM) releases/$(VERSION)/.mkdir
|
releases/$(VERSION)/$(TOKEN_DEBIAN-10)/changelog: $(PROGRAM) releases/$(VERSION)/.mkdir
|
||||||
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; echo "Generating: $${distro} changelog..."
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; echo "Generating: $${distro} changelog..."
|
||||||
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; ./misc/make-deb-changelog.sh "$${distro}" $(VERSION)
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; ./misc/make-deb-changelog.sh "$${distro}" $(VERSION)
|
||||||
@@ -458,10 +475,10 @@ $(PKG_ARCHLINUX): $(PROGRAM) releases/$(VERSION)/.mkdir
|
|||||||
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; echo "Building: $${distro} package..."
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; echo "Building: $${distro} package..."
|
||||||
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; ./misc/fpm-pack.sh $${distro} $(VERSION) "$(FILE_ARCHLINUX)" libvirt augeas
|
@title='$(@D)' ; distro=$${title#'releases/$(VERSION)/'} ; ./misc/fpm-pack.sh $${distro} $(VERSION) "$(FILE_ARCHLINUX)" libvirt augeas
|
||||||
|
|
||||||
$(SHA256SUMS): $(PKG_FEDORA-30) $(PKG_FEDORA-29) $(PKG_DEBIAN-10) $(PKG_UBUNTU-BIONIC) $(PKG_ARCHLINUX)
|
$(SHA256SUMS): $(PKG_FEDORA-30) $(PKG_FEDORA-29) $(PKG_CENTOS-7) $(PKG_DEBIAN-10) $(PKG_UBUNTU-BIONIC) $(PKG_ARCHLINUX)
|
||||||
@# remove the directory separator in the SHA256SUMS file
|
@# remove the directory separator in the SHA256SUMS file
|
||||||
@echo "Generating: sha256 sum..."
|
@echo "Generating: sha256 sum..."
|
||||||
sha256sum $(PKG_FEDORA-30) $(PKG_FEDORA-29) $(PKG_DEBIAN-10) $(PKG_UBUNTU-BIONIC) $(PKG_ARCHLINUX) | awk -F '/| ' '{print $$1" "$$6}' > $(SHA256SUMS)
|
sha256sum $(PKG_FEDORA-30) $(PKG_FEDORA-29) $(PKG_CENTOS-7) $(PKG_DEBIAN-10) $(PKG_UBUNTU-BIONIC) $(PKG_ARCHLINUX) | awk -F '/| ' '{print $$1" "$$6}' > $(SHA256SUMS)
|
||||||
|
|
||||||
$(SHA256SUMS_ASC): $(SHA256SUMS)
|
$(SHA256SUMS_ASC): $(SHA256SUMS)
|
||||||
@echo "Signing sha256 sum..."
|
@echo "Signing sha256 sum..."
|
||||||
|
|||||||
50
misc/mkosi/mkosi.default.centos-7
Normal file
50
misc/mkosi/mkosi.default.centos-7
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
[Distribution]
|
||||||
|
Distribution=centos
|
||||||
|
Release=7
|
||||||
|
|
||||||
|
[Output]
|
||||||
|
Format=raw_btrfs
|
||||||
|
#Format=gpt_btrfs
|
||||||
|
Bootable=yes
|
||||||
|
|
||||||
|
# This can be a ramdisk to improve performance.
|
||||||
|
OutputDirectory=mkosi.output
|
||||||
|
|
||||||
|
[Partitions]
|
||||||
|
# 1G isn't enough for the base distros.
|
||||||
|
RootSize=5G
|
||||||
|
|
||||||
|
[Packages]
|
||||||
|
# We need to download sources from the internet.
|
||||||
|
WithNetwork=true
|
||||||
|
|
||||||
|
# The packages to appear in both the build and the final image.
|
||||||
|
Packages=
|
||||||
|
dnf
|
||||||
|
make
|
||||||
|
git
|
||||||
|
golang
|
||||||
|
tree
|
||||||
|
# The packages to appear in the build image, but absent from the final image.
|
||||||
|
#BuildPackages=
|
||||||
|
# dnf
|
||||||
|
# make
|
||||||
|
# git
|
||||||
|
# golang
|
||||||
|
# tree
|
||||||
|
|
||||||
|
# Store our build artifacts here. This makes them accessible to the outside.
|
||||||
|
BuildDirectory=mkosi.builddir
|
||||||
|
|
||||||
|
# Cache some of our package manager downloads.
|
||||||
|
Cache=mkosi.cache
|
||||||
|
|
||||||
|
# Pull the parent git repository into the image.
|
||||||
|
BuildSources=../..
|
||||||
|
|
||||||
|
# Use this transfer mode for the git sources.
|
||||||
|
# XXX: Does auto-detect even work if BuildSources is not the current dir? Bug?
|
||||||
|
SourceFileTransfer=copy-git-cached
|
||||||
|
|
||||||
|
# Skip the (second) final build phase, since we only need the build artifact.
|
||||||
|
SkipFinalPhase=true
|
||||||
Reference in New Issue
Block a user