From dd4f90e4c28414f58f9ae2f1bfdb45ae334218b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Roth?= Date: Fri, 8 Nov 2024 15:15:00 +0100 Subject: [PATCH] Revert "use git-lfs for test files" This reverts commit bf4b660568730f9489770d9d7426110e84f46342. --- .gitattributes | 3 --- .github/workflows/ci.yml | 1 - CONTRIBUTING.md | 3 --- Makefile | 7 ++++--- system/Dockerfile | 5 ++++- system/files/aptly-fixture.tar.xz | 3 --- system/files/etcd.db.xz | 3 --- ...-stable-no-march_24.2.6-101pika1_amd64.deb | Bin 130 -> 17940 bytes .../mesa-stable_24.2.6-101pika1_amd64.deb | Bin 130 -> 18440 bytes 9 files changed, 8 insertions(+), 17 deletions(-) delete mode 100644 .gitattributes delete mode 100644 system/files/aptly-fixture.tar.xz delete mode 100644 system/files/etcd.db.xz diff --git a/.gitattributes b/.gitattributes deleted file mode 100644 index d564926b..00000000 --- a/.gitattributes +++ /dev/null @@ -1,3 +0,0 @@ -*.deb filter=lfs diff=lfs merge=lfs -text -*.xz filter=lfs diff=lfs merge=lfs -text -*.gz filter=lfs diff=lfs merge=lfs -text diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 90222bec..17f28d64 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -40,7 +40,6 @@ jobs: with: # fetch the whole repo for `git describe` to work fetch-depth: 0 - lfs: true - name: "Run flake8" run: | diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 68491b68..d4ab7e55 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -70,13 +70,10 @@ if that is possible. ### Get the Source -Make sure git with LFS support ist installed. - To clone the git repo, run the following commands: ``` git clone git@github.com:aptly-dev/aptly.git cd aptly -git lfs checkout ``` ## Development Setup diff --git a/Makefile b/Makefile index 3ff15d3d..27ccdde1 100644 --- a/Makefile +++ b/Makefile @@ -85,9 +85,10 @@ test: prepare swagger etcd-install ## Run unit tests system-test: prepare swagger etcd-install ## Run system tests # build coverage binary go test -v -coverpkg="./..." -c -tags testruncli - # Extract fixture-db, fixture-pool, etcd.db - test -e ~/aptly-fixture-db || tar -C ~/ -xf system/files/aptly-fixture.tar.xz - test -f ~/etcd.db || xz -dc system/files/etcd.db.xz > ~/etcd.db + # Download fixture-db, fixture-pool, etcd.db + if [ ! -e ~/aptly-fixture-db ]; then git clone https://github.com/aptly-dev/aptly-fixture-db.git ~/aptly-fixture-db/; fi + if [ ! -e ~/aptly-fixture-pool ]; then git clone https://github.com/aptly-dev/aptly-fixture-pool.git ~/aptly-fixture-pool/; fi + test -f ~/etcd.db || (curl -o ~/etcd.db.xz http://repo.aptly.info/system-tests/etcd.db.xz && xz -d ~/etcd.db.xz) # Run system tests PATH=$(BINPATH)/:$(PATH) && FORCE_COLOR=1 $(PYTHON) system/run.py --long --coverage-dir $(COVERAGE_DIR) $(CAPTURE) $(TEST) diff --git a/system/Dockerfile b/system/Dockerfile index 53fc87d7..c57f27df 100644 --- a/system/Dockerfile +++ b/system/Dockerfile @@ -6,7 +6,7 @@ RUN apt-get update -y && apt-get install -y --no-install-recommends curl gnupg b golang/bookworm-backports golang-go/bookworm-backports golang-doc/bookworm-backports golang-src/bookworm-backports \ make git python3 python3-requests-unixsocket python3-termcolor python3-swiftclient python3-boto python3-azure-storage \ g++ python3-etcd3 python3-plyvel graphviz devscripts sudo dh-golang binutils-i686-linux-gnu binutils-aarch64-linux-gnu \ - binutils-arm-linux-gnueabihf bash-completion zip ruby3.1-dev git-lfs && \ + binutils-arm-linux-gnueabihf bash-completion zip ruby3.1-dev && \ apt-get clean && rm -rf /var/lib/apt/lists/* RUN useradd -m --shell /bin/bash --home-dir /var/lib/aptly aptly @@ -16,6 +16,9 @@ RUN mkdir /work WORKDIR /work/src RUN chown aptly /work +RUN cd /var/lib/aptly; git clone https://github.com/aptly-dev/aptly-fixture-db.git +RUN cd /var/lib/aptly; git clone https://github.com/aptly-dev/aptly-fixture-pool.git +RUN cd /var/lib/aptly; curl -O http://repo.aptly.info/system-tests/etcd.db.xz && xz -d etcd.db.xz RUN echo "aptly ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/aptly ADD system/t13_etcd/install-etcd.sh /src/ RUN /src/install-etcd.sh diff --git a/system/files/aptly-fixture.tar.xz b/system/files/aptly-fixture.tar.xz deleted file mode 100644 index 963ac2ac..00000000 --- a/system/files/aptly-fixture.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6cef7679d88a35f87fff1d7647473f3413fcca4b643a927185fe5088ac16d8b5 -size 47947528 diff --git a/system/files/etcd.db.xz b/system/files/etcd.db.xz deleted file mode 100644 index c8464e05..00000000 --- a/system/files/etcd.db.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1d6d4e4ef989635ea5d0533a55f862c1524d97dcadcafe8d2f1a79fc4b01a443 -size 27149608 diff --git a/system/t09_repo/AddRepo17Test/mesa-stable-no-march_24.2.6-101pika1_amd64.deb b/system/t09_repo/AddRepo17Test/mesa-stable-no-march_24.2.6-101pika1_amd64.deb index ef70a0ec184641c876ffeffaa175e7e9711ae73b..b021ea8e5a8f8207afec9c7a8e0eae7cf528e83d 100644 GIT binary patch literal 17940 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 literal 130 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 literal 130 zcmWN?NfN>!5CFh?Ucm6m*{Jqd`Nj8>-K28|L-5# z^L$D^YnGSV<|u-D(#{{CJed-`)f$6WwKa<=`Un{@hC~*ENl>&QSCxuX(UG