mirror of
https://github.com/TecharoHQ/anubis.git
synced 2025-09-07 19:54:56 -04:00
test: add smoke test for git clone (#828)
* test: add smoke test for git clone Signed-off-by: Xe Iaso <me@xeiaso.net> * chore: exempt tests from spelling Signed-off-by: Xe Iaso <me@xeiaso.net> * test: rename this to git-clone Signed-off-by: Xe Iaso <me@xeiaso.net> * test: pin ko setup reference Signed-off-by: Xe Iaso <me@xeiaso.net> * test: don't persist credentials Signed-off-by: Xe Iaso <me@xeiaso.net> * test: terminating newline Signed-off-by: Xe Iaso <me@xeiaso.net> --------- Signed-off-by: Xe Iaso <me@xeiaso.net>
This commit is contained in:
parent
735b2ceb14
commit
c2cc1df172
1
.github/actions/spelling/excludes.txt
vendored
1
.github/actions/spelling/excludes.txt
vendored
@ -92,3 +92,4 @@ ignore$
|
|||||||
robots.txt
|
robots.txt
|
||||||
^lib/localization/locales/.*\.json$
|
^lib/localization/locales/.*\.json$
|
||||||
^lib/localization/.*_test.go$
|
^lib/localization/.*_test.go$
|
||||||
|
^test/.*$
|
||||||
|
34
.github/workflows/smoke-tests.yml
vendored
Normal file
34
.github/workflows/smoke-tests.yml
vendored
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
name: Smoke tests
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: ["main"]
|
||||||
|
pull_request:
|
||||||
|
branches: ["main"]
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
git-clone:
|
||||||
|
runs-on: ubuntu-24.04
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||||
|
with:
|
||||||
|
persist-credentials: false
|
||||||
|
|
||||||
|
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||||
|
with:
|
||||||
|
node-version: latest
|
||||||
|
|
||||||
|
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||||
|
with:
|
||||||
|
go-version: stable
|
||||||
|
|
||||||
|
- uses: ko-build/setup-ko@d006021bd0c28d1ce33a07e7943d48b079944c8d # v0.9
|
||||||
|
|
||||||
|
- name: Run test
|
||||||
|
run: |
|
||||||
|
cd test/git-clone
|
||||||
|
./test.sh
|
22
test/git-clone/docker-compose.yaml
Normal file
22
test/git-clone/docker-compose.yaml
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
services:
|
||||||
|
cgit:
|
||||||
|
image: joseluisq/alpine-cgit
|
||||||
|
pull_policy: always
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
CGIT_TITLE: Test git server
|
||||||
|
CGIT_DESC: Test server, please ignore
|
||||||
|
volumes:
|
||||||
|
- ./var/repos:/srv/git
|
||||||
|
|
||||||
|
anubis:
|
||||||
|
image: ko.local/anubis
|
||||||
|
environment:
|
||||||
|
BIND: ":3000"
|
||||||
|
TARGET: http://cgit:80
|
||||||
|
USE_REMOTE_ADDRESS: "true"
|
||||||
|
ports:
|
||||||
|
- 3000:3000
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
cgit-data:
|
26
test/git-clone/test.sh
Executable file
26
test/git-clone/test.sh
Executable file
@ -0,0 +1,26 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -eo pipefail
|
||||||
|
|
||||||
|
export VERSION=$GITHUB_COMMIT-test
|
||||||
|
export KO_DOCKER_REPO=ko.local
|
||||||
|
|
||||||
|
set -u
|
||||||
|
|
||||||
|
(
|
||||||
|
cd ../.. && \
|
||||||
|
ko build --platform=all --base-import-paths --tags="latest" --image-user=1000 --image-annotation="" --image-label="" ./cmd/anubis -L
|
||||||
|
)
|
||||||
|
|
||||||
|
rm -rf ./var/repos ./var/clones
|
||||||
|
mkdir -p ./var/repos ./var/clones
|
||||||
|
|
||||||
|
(cd ./var/repos && git clone --bare https://github.com/TecharoHQ/status.git)
|
||||||
|
|
||||||
|
docker compose up -d
|
||||||
|
|
||||||
|
sleep 2
|
||||||
|
|
||||||
|
(cd ./var/clones && git clone http://localhost:3000/status.git)
|
||||||
|
|
||||||
|
docker compose down
|
2
test/git-clone/var/.gitignore
vendored
Normal file
2
test/git-clone/var/.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
*
|
||||||
|
!.gitignore
|
Loading…
x
Reference in New Issue
Block a user