Compare commits

..

108 Commits

Author SHA1 Message Date
clrbuilder 485815c4fe Update packages file for version 39470
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-06-27 00:07:28 -07:00
clrbuilder ffd02240f4 Update packages file for version 39460
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-06-26 16:11:45 -07:00
clrbuilder 69e4a64658 Update packages file for version 39450
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-06-23 09:07:00 -07:00
William Douglas 61a91af0ff Fix logic for detecting new vendor
Missing grouping in vendor .git changed caused detection failures.

Signed-off-by: William Douglas <william.douglas@intel.com>
2023-06-01 15:08:51 -07:00
clrbuilder fc6b90aaa5 Update packages file for version 38830
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-04-18 07:56:02 -07:00
clrbuilder b25ec94cf9 Update packages file for version 38820
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-04-17 13:01:55 -07:00
clrbuilder a8500a2645 Update packages file for version 38810
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-04-17 07:48:28 -07:00
clrbuilder 9d15900efd Update packages file for version 38800
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-04-14 09:13:47 -07:00
clrbuilder 9d101b84cf Update packages file for version 38760
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-04-12 11:23:10 -07:00
clrbuilder 89d86df8d3 Update packages file for version 38750
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-04-11 00:07:27 -07:00
clrbuilder 23e40ddcd8 Update packages file for version 38740
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-04-06 00:07:15 -07:00
clrbuilder e0a40a10f2 Update packages file for version 38710
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-04-03 14:52:16 -07:00
clrbuilder 3b76c04f7f Update packages file for version 38700
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-30 16:26:28 -07:00
clrbuilder 8b9b13698f Update packages file for version 38690
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-30 11:21:18 -07:00
clrbuilder 1f2b9cc5a7 Update packages file for version 38680
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-30 00:06:55 -07:00
William Douglas aa0028d372 Correct test for config value being set
Fix the vendor.py test checking if cargo vendoring should be done.

Signed-off-by: William Douglas <william.douglas@intel.com>
2023-03-29 16:31:28 -07:00
clrbuilder fb17b414ed Update packages file for version 38650
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-28 00:08:23 -07:00
William Douglas ead0c3e12d Only vendor if cargo_vendor is true not just if it exists
Signed-off-by: William Douglas <william.douglas@intel.com>
2023-03-27 10:19:53 -07:00
clrbuilder 610754dddd Update packages file for version 38640
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-24 13:27:46 -07:00
William Douglas ef9417d080 Add checks to ensure options.conf is valid
Signed-off-by: William Douglas <william.douglas@intel.com>
2023-03-24 11:18:11 -07:00
William Douglas dcc38f2193 Add vendor target
Add handling for a vendor target that will handle specific vendor
requirements from a package's options.conf.

The initial change adds handling for 'cargo vendor', creating a new
repo in the configured git repositiory and setting up the ARCHIVES
variable in the package's Makefile.

If the repo already exists, the tooling will check if a repo change
was detected after re-vendoring the sources. If a change is detected
the new content will be pushed and the ARCHIVES variable will be
updated.

Signed-off-by: William Douglas <william.douglas@intel.com>
2023-03-23 15:01:17 -07:00
clrbuilder 9be96daea4 Update packages file for version 38630
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-23 00:07:26 -07:00
clrbuilder 1350df4df6 Update packages file for version 38620
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-21 14:46:06 -07:00
clrbuilder 878e4e2b0b Update packages file for version 38570
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-16 00:07:52 -07:00
clrbuilder c1a0943a4e Update packages file for version 38550
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-14 15:24:17 -07:00
clrbuilder e7bb8022eb Update packages file for version 38530
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-14 00:06:59 -07:00
clrbuilder 854d1383df Update packages file for version 38520
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-10 11:55:36 -08:00
clrbuilder 34929eedc8 Update packages file for version 38410
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-03-07 00:06:38 -08:00
clrbuilder 37ceeabcf2 Update packages file for version 38380
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-28 18:04:55 -08:00
clrbuilder 22bcab527f Update packages file for version 38340
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-24 12:53:07 -08:00
clrbuilder 96827eba4b Update packages file for version 38300
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-21 00:06:13 -08:00
clrbuilder 209c76a22d Update packages file for version 38290
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-20 14:57:21 -08:00
clrbuilder 9b30546825 Update packages file for version 38280
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-16 00:06:23 -08:00
clrbuilder e114f003f5 Update packages file for version 38270
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-14 00:05:54 -08:00
clrbuilder be6d64a55b Update packages file for version 38260
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-13 14:26:47 -08:00
clrbuilder f9b8dab2a6 Update packages file for version 38220
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-07 00:07:51 -08:00
clrbuilder d324a604f2 Update packages file for version 38210
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-05 08:21:05 -08:00
clrbuilder 50dce59f66 Update packages file for version 38200
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-02 00:07:04 -08:00
clrbuilder 089cb1b6b6 Update packages file for version 38190
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-02-01 12:27:31 -08:00
clrbuilder 3c76c8ff41 Update packages file for version 38180
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-01-31 16:42:23 -08:00
clrbuilder bc355116ae Update packages file for version 38120
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-01-24 00:07:13 -08:00
clrbuilder 2263c2cc23 Update packages file for version 38100
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-01-19 00:07:21 -08:00
clrbuilder 3e53d2c8f4 Update packages file for version 38080
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-01-17 00:09:44 -08:00
clrbuilder abba4bc351 Update packages file for version 38070
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-01-13 14:08:46 -08:00
clrbuilder 56c84563c3 Update packages file for version 38040
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-01-11 10:37:57 -08:00
clrbuilder 30aac6114d Update packages file for version 38030
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-01-10 00:09:03 -08:00
clrbuilder 14a49e69a3 Update packages file for version 38020
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-01-06 10:42:22 -08:00
clrbuilder 2bc3354ce8 Update packages file for version 38010
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-01-05 16:55:39 -08:00
clrbuilder 658f3655f8 Update packages file for version 37970
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2023-01-03 00:08:22 -08:00
clrbuilder 6bec4f7dd7 Update packages file for version 37930
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-29 14:45:05 -08:00
clrbuilder 7d26584649 Update packages file for version 37920
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-29 10:02:10 -08:00
clrbuilder d309e565a7 Update packages file for version 37890
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-28 15:30:14 -08:00
clrbuilder 8a5f1ccf07 Update packages file for version 37870
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-27 12:51:24 -08:00
clrbuilder 5c3916cd20 Update packages file for version 37860
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-22 10:50:58 -08:00
clrbuilder d3ba502fa7 Update packages file for version 37810
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-20 16:23:53 -08:00
clrbuilder 3fb868c3a9 Update packages file for version 37790
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-19 14:39:21 -08:00
Patrick McCarty 9c109bcd84 toplevel: always clone main branch for package repos
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-12-16 21:18:45 +00:00
Arjan van de Ven 3f723df7db add 2022-12-16 01:27:18 +00:00
clrbuilder e5d8879be6 Update packages file for version 37770
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-15 00:08:59 -08:00
clrbuilder 51d154950f Update packages file for version 37750
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-13 11:32:18 -08:00
clrbuilder c1db07181a Update packages file for version 37740
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-13 00:08:35 -08:00
clrbuilder a3635036b3 Update packages file for version 37720
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-06 00:08:33 -08:00
Patrick McCarty bcdaa56d6d Update for SPDX 3.19 release
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-12-02 18:47:03 +00:00
clrbuilder 1ff6b2708d Update packages file for version 37710
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-12-01 04:07:13 -08:00
clrbuilder f2e52a194e Update packages file for version 37700
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-11-29 04:07:45 -08:00
clrbuilder 261c6a8cfd Update packages file for version 37660
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-11-22 15:26:47 -08:00
clrbuilder 3fd783daf9 Update packages file for version 37640
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-11-17 04:07:47 -08:00
clrbuilder 09df0bd218 Update packages file for version 37630
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-11-15 04:09:03 -08:00
clrbuilder 80513e6a77 Update packages file for version 37620
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-11-10 04:08:23 -08:00
clrbuilder c727ce3e5e Update packages file for version 37610
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-11-08 04:09:05 -08:00
clrbuilder 7b3623e199 Update packages file for version 37580
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-11-03 04:07:56 -07:00
clrbuilder 2aed8ce561 Update packages file for version 37570
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-11-02 13:36:28 -07:00
clrbuilder 908afb2637 Update packages file for version 37540
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-10-31 06:52:53 -07:00
clrbuilder 13d61f38fc Update packages file for version 37530
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-10-28 09:59:42 -07:00
clrbuilder 3a34726589 Update packages file for version 37510
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-10-26 16:21:38 -07:00
clrbuilder f7747fad82 Update packages file for version 37490
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-10-24 15:22:28 -07:00
clrbuilder f562dba8ac Update packages file for version 37480
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-10-20 04:08:43 -07:00
clrbuilder a875acb1fe Update packages file for version 37450
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-10-15 09:02:27 -07:00
clrbuilder 2de768ab6d Update packages file for version 37430
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-10-11 04:09:24 -07:00
clrbuilder 6ce9826071 Update packages file for version 37400
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-10-06 04:16:28 -07:00
clrbuilder d96968cc98 Update packages file for version 37360
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-30 11:40:26 -07:00
clrbuilder 4b284ecb9b Update packages file for version 37340
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-29 08:28:29 -07:00
clrbuilder 746d69c99b Update packages file for version 37330
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-28 12:13:33 -07:00
clrbuilder 14f1e53183 Update packages file for version 37320
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-27 04:12:23 -07:00
Patrick McCarty a734764581 common: default to always use sudo
The conditional setting of WITH_SUDO has been a no-op for several years,
so just set the default value to `sudo`.

Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-09-26 22:10:53 +00:00
clrbuilder 0c9a4e6802 Update packages file for version 37310
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-26 07:43:46 -07:00
Patrick McCarty c44e74f556 Ensure make diff output is not piped to a pager
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-09-26 03:14:50 +00:00
clrbuilder 16e5086381 Update packages file for version 37300
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-22 18:37:05 -07:00
clrbuilder ae3cbddb46 Update packages file for version 37230
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-21 06:28:45 -07:00
clrbuilder 7b1ffd3045 Update packages file for version 37220
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-20 04:12:29 -07:00
clrbuilder 75610ac5f7 Update packages file for version 37210
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-19 17:57:48 -07:00
clrbuilder 8b98eabe53 Update packages file for version 37200
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-19 10:01:28 -07:00
clrbuilder 8b7cfc2cf1 Update packages file for version 37130
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-12 11:48:21 -07:00
clrbuilder ddb800af7e Update packages file for version 37070
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-07 12:43:19 -07:00
clrbuilder c514292f56 Update packages file for version 37010
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-02 10:36:13 -07:00
clrbuilder a1b55a619a Update packages file for version 36990
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-09-01 04:09:36 -07:00
clrbuilder 0896766e26 Update packages file for version 36950
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-29 14:07:22 -07:00
clrbuilder 68da68007d Update packages file for version 36940
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-26 16:50:07 -07:00
clrbuilder 35cdf3d618 Update packages file for version 36920
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-25 13:42:14 -07:00
clrbuilder c646187f11 Update packages file for version 36910
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-25 04:10:45 -07:00
clrbuilder af28bdadf7 Update packages file for version 36850
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-16 04:09:43 -07:00
Patrick McCarty 39c9a566a6 Update for SPDX 3.18 release
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
2022-08-12 00:34:50 +00:00
clrbuilder b0ab451ae0 Update packages file for version 36800
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-11 04:09:08 -07:00
clrbuilder ac1c648189 Update packages file for version 36760
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-08 16:15:44 -07:00
clrbuilder 2939f3c5f8 Update packages file for version 36740
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-04 04:10:29 -07:00
clrbuilder e361b3ab2f Update packages file for version 36730
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-03 07:20:11 -07:00
clrbuilder 6081437611 Update packages file for version 36720
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-02 16:07:38 -07:00
clrbuilder d6c8858c6e Update packages file for version 36710
Signed-off-by: clrbuilder <clrbuilder@intel.com>
2022-08-02 04:12:42 -07:00
6 changed files with 459 additions and 108 deletions
+6 -1
View File
@@ -20,7 +20,7 @@ LATEST_RPMS = $(wildcard rpms/*.rpm)
DEBUGINFO_RPM = $(wildcard rpms/${PKG_NAME}-debuginfo-$(shell $(call queryspec,%{V}-%{R},${SPECFILE})).*.rpm)
RPMS ?= $(LATEST_RPMS)
WITH_SUDO = $(shell cmp /usr/bin/mock /usr/sbin/mock &> /dev/null && echo sudo )
WITH_SUDO = sudo
# MOCK_CONFIG_VAL is set in Makefile.shared
MOCK_SMP_FLAGS=$(patsubst -j%, -D_smp_mflags\ -j%,$(filter -j%, $(MAKEFLAGS)))
@@ -157,6 +157,10 @@ pullrebase:
fi \
fi
# help vendor: Attempt to create an updated vendor tar archive if needed
vendor: preautospec-checks pullrebase clean-old-content
@ $(TOPLVL)/projects/common/vendor.py $(firstword $(NEWURL) $(URL)) $(PKG_NAME) $(VND_BASE_URL)
preautospec-checks:
#help autospec: automatically generates a specfile. If there is
@@ -171,6 +175,7 @@ autospec: preautospec-checks pullrebase localreponotice clean-old-content
exit 1; \
fi
@printf 'PKG_NAME := %s\nURL = %s\nARCHIVES = %s\n\ninclude ../common/Makefile.common\n' $(PKG_NAME) '$(firstword $(value NEWURL) $(value URL))' '$(value ARCHIVES)' > Makefile
@$(MAKE) vendor
python3 $(TOPLVL)/projects/autospec/autospec/autospec.py \
--target . \
--integrity \
+3
View File
@@ -35,6 +35,9 @@ PKG_BASE_URL = https://github.com/clearlinux-pkgs
# Location where project repos are hosted.
PRJ_BASE_URL = https://github.com/clearlinux
# Location where vendor repos are hosted.
VND_BASE_URL =
# Project repos that are integral to the common tooling.
PROJ_PKGS = autospec clr-bundles common
+2 -2
View File
@@ -52,7 +52,7 @@ $(clone_PKGS): $(PACKAGES_FILE) packages/common/Makefile.common
remotepkg=$(call remotepkgname,$$pkg); \
[ -d packages/$$pkg ] || ( \
echo "Checking out: packages/$$pkg"; \
git clone $(PKG_BASE_URL)/$$remotepkg packages/$$pkg; \
git clone -b main $(PKG_BASE_URL)/$$remotepkg packages/$$pkg; \
cd packages/$$pkg; \
$(call gitoliteurl,packages/$$pkg); \
$(call subjectprefix,$$pkg); \
@@ -168,7 +168,7 @@ status: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
#help the --stat flag.
diff: $(PACKAGES_FILE) $(addprefix packages/,$(PKGS_LOCAL))
@for p in projects/common $(addprefix packages/,$(PKGS_LOCAL)); do \
(cd $$p; git status --porcelain | grep -vq '^?? ' && (echo "Uncommitted changes in: $$p"; git diff --stat); :) ;\
(cd $$p; git status --porcelain | grep -vq '^?? ' && (echo "Uncommitted changes in: $$p"; git --no-pager diff --stat); :) ;\
done
#help log: Run git log origin/main..HEAD for all package repos, thus
+16
View File
@@ -32,6 +32,7 @@ Apache-1.0
Apache-1.1
Apache-2.0
App-s2p
Arphic-1999
Artistic-1.0
Artistic-1.0-Perl
Artistic-1.0-cl8
@@ -59,11 +60,13 @@ BSD-Protection
BSD-Source-Code
BSL-1.0
BUSL-1.1
Baekmuk
Bahyph
Barr
Beerware
BitTorrent-1.0
BitTorrent-1.1
Bitstream-Vera
BlueOak-1.0.0
Borceux
C-UDA-1.0
@@ -77,6 +80,7 @@ CC-BY-2.5-AU
CC-BY-3.0
CC-BY-3.0-AT
CC-BY-3.0-DE
CC-BY-3.0-IGO
CC-BY-3.0-NL
CC-BY-3.0-US
CC-BY-4.0
@@ -176,6 +180,7 @@ FDK-AAC
FSFAP
FSFUL
FSFULLR
FSFULLRWD
FTL
Fair
Frameworx-1.0
@@ -248,6 +253,7 @@ JPNIC
JSON
Jam
JasPer-2.0
Knuth-CTAN
LAL-1.2
LAL-1.3
LGPL-2.0
@@ -270,6 +276,8 @@ LPPL-1.1
LPPL-1.2
LPPL-1.3a
LPPL-1.3c
LZMA-SDK-9.11-to-9.20
LZMA-SDK-9.22
Latex2e
Leptonica
LiLiQ-P-1.1
@@ -291,10 +299,12 @@ MPL-1.0
MPL-1.1
MPL-2.0
MPL-2.0-no-copyleft-exception
MS-LPL
MS-PL
MS-RL
MTLL
MakeIndex
Minpack
MirOS
Motosoto
MulanPSL-1.0
@@ -307,6 +317,7 @@ NBPL-1.0
NCGL-UK-2.0
NCSA
NGPL
NICTA-1.0
NIST-PD
NIST-PD-fallback
NLOD-1.0
@@ -381,6 +392,7 @@ PolyForm-Noncommercial-1.0.0
PolyForm-Small-Business-1.0.0
PostgreSQL
Python-2.0
Python-2.0.1
QPL-1.0
Qhull
RHeCos-1.1
@@ -461,6 +473,7 @@ Zlib
blessing
bzip2-1.0.5
bzip2-1.0.6
checkmk
copyleft-next-0.3.0
copyleft-next-0.3.1
curl
@@ -475,7 +488,10 @@ iMatix
libpng-2.0
libselinux-1.0
libtiff
libutil-David-Nugent
mpi-permissive
mpich2
mplus
psfrag
psutils
wxWindows
+304 -105
View File
File diff suppressed because it is too large Load Diff
Executable
+128
View File
@@ -0,0 +1,128 @@
#!/usr/bin/env python3
import argparse
import configparser
import os
import re
import shutil
import subprocess
import tempfile
import time
from git import Repo
import requests
def vendor_check():
if not os.path.isfile('options.conf'):
return False
config = configparser.ConfigParser(interpolation=None)
config.read('options.conf')
if 'autospec' not in config.sections():
return False
if vendor := config['autospec'].get('cargo_vendor'):
if vendor == "true":
return 'cargo'
return False
def get_args():
parser = argparse.ArgumentParser()
parser.add_argument('url')
parser.add_argument('name')
parser.add_argument('git')
return parser.parse_args()
def setup_content(url):
tdir = tempfile.mkdtemp()
outfile = os.path.join(tdir, os.path.basename(url))
response = requests.get(url, timeout=30)
response.raise_for_status()
with open(outfile, 'wb') as cfile:
cfile.write(response.content)
subprocess.run(f"tar xf {outfile}", shell=True, cwd=tdir, check=True)
os.remove(outfile)
return tdir
def setup_cargo_vendor(path):
for dirpath, _, files in os.walk(path):
for fname in files:
if fname == "Cargo.toml":
return dirpath
return False
def update_cargo_vendor(path, name, git):
git_uri = os.path.join(git, name)
vendor_path = os.path.join(path, 'vendor')
subprocess.run(f"git clone {git_uri} {vendor_path}", shell=True, check=True)
vendor_git = os.path.join(vendor_path, '.git')
if not os.path.isdir(vendor_git):
# initialize a git repo
subprocess.run('git init .', cwd=vendor_path, shell=True, check=True)
subprocess.run(f"git remote add origin {git_uri}", cwd=vendor_path,
shell=True, check=True)
backup_vendor_git = os.path.join(path, 'clear-linux-vendor-git')
subprocess.run(f"cp -a {vendor_git} {backup_vendor_git}", cwd=path,
shell=True, check=True)
shutil.rmtree(vendor_path)
subprocess.run('cargo vendor', cwd=path, shell=True, check=True)
subprocess.run(f"cp -a {backup_vendor_git} {vendor_git}", cwd=path,
shell=True, check=True)
repo = Repo(vendor_path)
if not (len(repo.untracked_files) > 0 or repo.is_dirty()):
return False
subprocess.run('git add .', cwd=vendor_path, shell=True, check=True)
subprocess.run('git commit -m "vendor update"', cwd=vendor_path,
shell=True, check=True)
gmt = time.gmtime()
tag = f"{gmt.tm_year}-{gmt.tm_mon:02d}-{gmt.tm_mday:02d}-{gmt.tm_hour:02d}-{gmt.tm_min:02d}-{gmt.tm_sec:02d}"
subprocess.run(f"git tag {tag}", cwd=vendor_path, shell=True,
check=True)
subprocess.run(f"git push origin main:main {tag}", cwd=vendor_path,
shell=True, check=True)
time.sleep(30)
return tag
def update_cargo_sources(name, tag):
makefile = []
archive_match = os.path.join('$(CGIT_BASE_URL)', 'vendor', name,
'snapshot', name)
with open('Makefile', encoding='utf8') as mfile:
for line in mfile.readlines():
if line.startswith('ARCHIVES'):
if re.match(archive_match + '[a-zA-Z0-9_\-.]+\.tar\.xz', line):
new_archives = re.sub(archive_match + '[a-zA-Z0-9_\-.]+\.tar\.xz',
f"{archive_match}-{tag}.tar.xz\n", line)
else:
new_archives = f"ARCHIVES = {archive_match}-{tag}.tar.xz ./vendor\n"
makefile.append(new_archives)
else:
makefile.append(line)
with open('Makefile', 'w', encoding='utf8') as mfile:
mfile.writelines(makefile)
def main():
vtype = vendor_check()
if not vtype:
return
args = get_args()
tdir = setup_content(args.url)
if vtype == 'cargo':
vdir = setup_cargo_vendor(tdir)
if vdir:
tag = update_cargo_vendor(vdir, args.name, args.git)
if tag:
update_cargo_sources(args.name, tag)
shutil.rmtree(tdir)
if __name__ == '__main__':
main()