Compare commits

..

16 Commits

Author SHA1 Message Date
Patrick McCarty 2d8fc9a155 koji: exit early if spec has uncommitted changes
When running 'make koji', the tooling will attempt to create a new git
tag with a name constructed from the spec file's NVR.

However, if there are uncommitted changes to the Name, Version, or
Release fields (collectively, NVR) in that file, the new tag's name will
not match the NVR in the spec file referenced by commit HEAD.

Protect against the mismatch by exiting early from a 'make koji' if any
spec file modifications are not yet committed to the repo, and alert the
user what the problem is.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-06-27 17:46:25 -07:00
Patrick McCarty 1eadce9aad Fix 'make repoadd'
The debuginfo RPMs are stored in a separate directory now, so the rpm
copy pipeline needed a slight adjustment.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-06-27 14:48:52 -07:00
Tudor Marcu 6613644b9c Update folder structure in results/
The logs, srpms, and debuginfo should all be split into their own
directory, so it is less confusing about which RPMs can be used when
creating mixes. They are mainly for extra metadata, and should not be
left in the main RPM results location.

Signed-off-by: Tudor Marcu <tudor.marcu@intel.com>
2018-06-27 14:04:12 -07:00
clrbuilder 93115e4073 Update packages file for version 23310
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-06-27 18:02:45 +00:00
clrbuilder 12537cbfb0 Update packages file for version 23240
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-06-22 18:02:37 +00:00
clrbuilder d397ee463a Update packages file for version 23230
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-06-22 12:02:16 +00:00
clrbuilder dfe55331e6 Update packages file for version 23200
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-06-21 18:02:34 +00:00
Patrick McCarty 0c69bfb9a9 Add OVMF.fd to the repo
Fixes #4

Because start_qemu.sh references OVMF.fd, it is convenient for OVMF.fd
to live alongside that script for ease of use.

Note that this version of OVMF.fd is a copy of /usr/share/qemu/OVMF.fd
in Clear Linux OS builds 22930 and newer from the edk2 package
(edk2-2-8, built using the recent UDK2018 release).

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-06-19 15:52:23 -07:00
William Douglas 689e48a2f7 start_qemu.sh: Add virtio-rng-pci device
In order to avoid issues
(https://github.com/clearlinux/distribution/issues/97) where the
VM is unable to procede to boot due to lack of entropy, add the
virtio-rng-pci device via the start_qemu.sh script.
2018-06-19 18:01:55 +00:00
Patrick McCarty 82e334a93a Make start_qemu.sh executable
Fixes #3

The other shell scripts in this repo are executable, so there's no
reason this one should not be.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2018-06-18 12:46:27 -07:00
clrbuilder ab6c4a674f Update packages file for version 23110
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-06-18 13:02:45 +00:00
clrbuilder 78de1a6a13 Update packages file for version 23100
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-06-16 03:50:04 +00:00
clrbuilder 74e79ffea2 Update packages file for version 23080
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-06-15 19:02:11 +00:00
clrbuilder bb21809c73 Update packages file for version 23050
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-06-15 03:23:35 +00:00
clrbuilder e912d4e6ae Update packages file for version 23040
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-06-14 19:02:20 +00:00
clrbuilder 340b6a74d4 Update packages file for version 23030
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2018-06-14 13:11:14 +00:00
5 changed files with 36 additions and 14 deletions
+22 -12
View File
@@ -12,9 +12,9 @@ SHELL = /bin/bash
SPECFILE = $(addsuffix .spec, $(PKG_NAME))
SRPMVERS = $(shell [ ! -f $(SPECFILE) ] || rpmspec -D '_vendor clr' --srpm -q --queryformat '%{NAME}-%{VERSION}-%{RELEASE}\n' $(SPECFILE))
SRPMFILE = results/$(SRPMVERS).src.rpm
SRPMFILE = results/srpm/$(SRPMVERS).src.rpm
LATEST_RPMS = $(shell [ ! -s results/build.log ] || for r in `egrep 'Wrote.*/RPMS/.*.rpm' results/build.log | sed 's/.*\///'` ; do echo "results/$$r"; done)
LATEST_RPMS = $(shell [ ! -s results/logs/build.log ] || for r in `egrep 'Wrote.*/RPMS/.*.rpm' results/logs/build.log | sed 's/.*\///;s/.*debuginfo/debuginfo\/&/'` ; do echo "results/$$r"; done)
RPMS ?= $(LATEST_RPMS)
WITH_SUDO = $(shell cmp /usr/bin/mock /usr/sbin/mock &> /dev/null && echo sudo )
@@ -91,18 +91,24 @@ prebuild-checks:
#help Use MOCK_OPTS environment varible to pass down arbitrary mock options.
build: prebuild-checks configemail $(SPECFILE) upstream $(SRPMFILE)
$(MOCK) $(SRPMFILE) --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME)
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
@perl $(TOPLVL)/projects/common/count.pl results/build.log &> testresults
mkdir -p results/logs results/debuginfo
mv results/*.log results/logs
mv results/*-debuginfo*.rpm results/debuginfo/
@perl $(TOPLVL)/projects/common/logcheck.pl results/logs/build.log
@perl $(TOPLVL)/projects/common/count.pl results/logs/build.log &> testresults
@$(MAKE) checkblacklist
#help build-nocheck: Same as 'make build', but do not run the package's test suite.
build-nocheck: configemail $(SPECFILE) upstream $(SRPMFILE)
$(MOCK) $(SRPMFILE) --nocheck --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME)
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
@perl $(TOPLVL)/projects/common/count.pl results/build.log &> testresults
mkdir -p results/logs results/debuginfo
mv results/*.log results/logs
mv results/*-debuginfo*.rpm results/debuginfo/
@perl $(TOPLVL)/projects/common/logcheck.pl results/logs/build.log
@perl $(TOPLVL)/projects/common/count.pl results/logs/build.log &> testresults
@$(MAKE) checkblacklist
fmvpatches: results/build.log
fmvpatches: results/logs/build.log
@perl $(TOPLVL)/projects/common/fmvpatches.pl $(PKG_NAME)
#help rootshell: Puts you in a root shell at the top of your build root.
@@ -117,7 +123,7 @@ shell:
.PHONY: $(SRPMFILE)
$(SRPMFILE): $(SPECFILE) $(__allsources) localreponotice
@$(MAKE) spdxcheck
$(MOCK) --buildsrpm --source=./ --spec=$(SPECFILE) --result=results/ --no-cleanup-after --uniqueext=$(PKG_NAME)
$(MOCK) --buildsrpm --source=./ --spec=$(SPECFILE) --result=results/srpm/ --no-cleanup-after --uniqueext=$(PKG_NAME)
# Do a git fetch and a git rebase to apply local commits on top of latest
# commits from the remote. A git fetch/rebase is used rather than a git pull so
@@ -155,7 +161,7 @@ pullrebase:
#help to autospec.
#help For more information, see the project at https://github.com/clearlinux/autospec
autospec: pullrebase localreponotice
rm -f results/*src.rpm
rm -f results/srpm/*src.rpm
@if [ -e $(SPECFILE) ] && ! grep -q "# Generated by: autospec.py" $(SPECFILE) ; then \
echo "Specfile already exists and was not created by autospec.py! Aborting."; \
exit 1; \
@@ -287,6 +293,10 @@ koji: prekoji-checks kojidef
echo "Error: Must be on the master branch to submit to koji" >&2; \
exit 1; \
fi; \
if ! git diff --quiet HEAD ${SPECFILE}; then \
echo "Error: All changes to ${SPECFILE} must be committed first" >&2; \
exit 1; \
fi; \
if git rev-parse --verify --quiet origin/master > /dev/null; then \
git pull --rebase; \
fi
@@ -317,7 +327,7 @@ rekoji-nowait:
$(MAKE) KOJI_NOWAIT="--nowait --background" rekoji
logcheck:
@perl $(TOPLVL)/projects/common/logcheck.pl results/build.log
@perl $(TOPLVL)/projects/common/logcheck.pl results/logs/build.log
$(TOPLVL)/repo:
@echo "Creating local RPM repository $(TOPLVL)/repo"
@@ -327,8 +337,8 @@ $(TOPLVL)/repo:
#help repoadd: Adds locally-built RPMs for this package to the local RPM
#help repository. If this repository does not yet exist, it is created and
#help enabled.
repoadd: results/build.log $(TOPLVL)/repo
@if [ -z "`grep '^Wrote: .*$(shell basename $(SRPMFILE))$$' results/build.log`" ]; then \
repoadd: results/logs/build.log $(TOPLVL)/repo
@if [ -z "`grep '^Wrote: .*$(shell basename $(SRPMFILE))$$' results/logs/build.log`" ]; then \
echo "You have not yet succesfully built this release yet"; exit 1; \
fi
@if [ -f .repo-index ]; then \
BIN
View File
Binary file not shown.
+1 -1
View File
@@ -82,7 +82,7 @@ sub find_file {
return $file;
}
open(BUILD_LOG, '<', "results/build.log") or die $!;
open(BUILD_LOG, '<', "results/logs/build.log") or die $!;
while (<BUILD_LOG>) {
if($_ =~ /(\S+):([0-9]*):([0-9]*): note: (basic block|loop) (vectorized)/) {
$fmv->{s_name} = (split('/',$1))[-1];
+12 -1
View File
@@ -486,6 +486,7 @@ R-tidyr
R-tidyselect
R-tidyverse
R-timeDate
R-tinytex
R-tis
R-tm
R-topicmodels
@@ -547,7 +548,6 @@ accountsservice
acl
acme
acpica-unix2
acrn-devicemodel
acrn-hypervisor
adwaita-icon-theme
aeon
@@ -1284,6 +1284,7 @@ libunistring
libunwind
libusb
libuser
libuv
libva
libva-intel-driver
libva-utils
@@ -1357,6 +1358,7 @@ mc
mccabe
mcelog
mdadm
meld
memkind
memshrinker
mesa
@@ -1376,10 +1378,12 @@ mixer-tools
mkfontdir
mkfontscale
mkosi
mobile-broadband-provider-info
mock
mod_wsgi
moka-icon-theme
more-itertools
moreutils
mosh
motd-update
motif
@@ -1507,6 +1511,7 @@ patch
patchutils
pavucontrol
pbr
pbr-legacy
pbzip2
pciutils
pcre
@@ -1603,6 +1608,7 @@ perl-Test-NoWarnings
perl-Test-Output
perl-Test-Pod
perl-Test-Requires
perl-Test-RequiresInternet
perl-Test-Simple
perl-Test-Taint
perl-Test-Warn
@@ -1637,6 +1643,7 @@ pidgin-sipe
pigz
pinentry
pip
pip-legacy
pixman
pkcs11-helper
pkg-config
@@ -1713,6 +1720,7 @@ python-multilib
python-pkgconfig
python-pocketlint
python-polib
python-rpm-legacypython
python-subunit
python-systemd
python-tappy
@@ -1808,6 +1816,7 @@ serf
setproctitle
setserial
setuptools
setuptools-legacy
setuptools_scm
setuptools_scm_git_archive
shadow
@@ -1846,6 +1855,7 @@ spice-protocol
spyder-notebook
sqlite-autoconf
sqlparse
squashfs-tools
sshfs
stack
startup-notification
@@ -1956,6 +1966,7 @@ volume_key
vsqlite
vte
vulkan-sdk
waffle
waitress
wayland
wayland-protocols
Regular → Executable
+1
View File
@@ -54,4 +54,5 @@ qemu-system-x86_64 \
-drive file="$IMAGE",if=virtio,aio=threads,format=raw \
-netdev user,id=mynet0,hostfwd=tcp::${VMN}0022-:22,hostfwd=tcp::${VMN}2375-:2375 \
-device virtio-net-pci,netdev=mynet0 \
-device virtio-rng-pci \
-debugcon file:debug.log -global isa-debugcon.iobase=0x402 $@