mirror of
https://codeberg.org/scip/dbtool.git
synced 2025-12-16 10:50:58 +01:00
112 lines
3.6 KiB
YAML
112 lines
3.6 KiB
YAML
matrix:
|
|
platform:
|
|
- linux/amd64
|
|
|
|
labels:
|
|
platform: ${platform}
|
|
|
|
steps:
|
|
build-berkeley:
|
|
when:
|
|
event: [push]
|
|
image: alpine:latest
|
|
commands:
|
|
- apk update
|
|
- apk add --no-cache bash build-base gdb perl pcre2 pcre2-dev db db-dev pkgconfig meson ninja
|
|
- meson setup --reconfigure build
|
|
- ninja -C build
|
|
|
|
test-berkeley:
|
|
when:
|
|
event: [push]
|
|
image: alpine:latest
|
|
commands:
|
|
- apk update
|
|
- apk add --no-cache bash build-base pcre2 pcre2-dev db db-dev
|
|
- rm -f test.db
|
|
# insert keys
|
|
- build/dbtool -d test.db -i -k test -v blah
|
|
- build/dbtool -d test.db -i -k foo -v bar
|
|
# look if the appear in the dump
|
|
- build/dbtool -d test.db -D | grep blah
|
|
# count 'em
|
|
- build/dbtool -d test.db -D | wc -l | grep 2
|
|
# search for key
|
|
- build/dbtool -d test.db -s -k test
|
|
# search for key regex
|
|
- build/dbtool -d test.db -S -k 't$'
|
|
# remove key
|
|
- build/dbtool -d test.db -r -k foo
|
|
# count must match
|
|
- build/dbtool -d test.db -D | wc -l | grep 1
|
|
# modify a key
|
|
- build/dbtool -d test.db -u -k test -v modified
|
|
# check modified key
|
|
- build/dbtool -d test.db -s -k test | grep modified
|
|
# use splitting with regex
|
|
- echo today:100 | build/dbtool -d test.db -i -f -t '^([^:]*):([^:]*)'
|
|
# check if it works
|
|
- build/dbtool -d test.db -s -k today | grep 100
|
|
# use splitting with regex reverse
|
|
- echo today:cold | build/dbtool -d test.db -R -i -f -t '^([^:]*):([^:]*)'
|
|
# check if it works
|
|
- build/dbtool -d test.db -s -k cold | grep today
|
|
# check encryption
|
|
- build/dbtool -d test.db -i -k borg -v sevenofnine -p -P foobar
|
|
- build/dbtool -d test.db -s -k borg -p -P foobar | grep sevenofnine
|
|
|
|
|
|
|
|
build-gdbm:
|
|
when:
|
|
event: [push]
|
|
image: alpine:latest
|
|
commands:
|
|
- apk update
|
|
- apk add --no-cache bash build-base perl pcre2 pcre2-dev gdbm gdbm-dev pkgconfig meson ninja
|
|
- meson setup --reconfigure build
|
|
- ninja -C build
|
|
- rm -f test.db
|
|
- build/dbtool -d test.db -i -k "test" -v "blah blah blah"
|
|
- build/dbtool -d test.db -D | grep blah
|
|
|
|
test-gdbm:
|
|
when:
|
|
event: [push]
|
|
image: alpine:latest
|
|
commands:
|
|
- apk update
|
|
- apk add --no-cache bash build-base pcre2 pcre2-dev gdbm gdbm-dev
|
|
- rm -f test.db
|
|
# insert keys
|
|
- build/dbtool -d test.db -i -k test -v blah
|
|
- build/dbtool -d test.db -i -k foo -v bar
|
|
# look if the appear in the dump
|
|
- build/dbtool -d test.db -D | grep blah
|
|
# count 'em
|
|
- build/dbtool -d test.db -D | wc -l | grep 2
|
|
# search for key
|
|
- build/dbtool -d test.db -s -k test
|
|
# search for key regex
|
|
- build/dbtool -d test.db -S -k 't$'
|
|
# remove key
|
|
- build/dbtool -d test.db -r -k foo
|
|
# count must match
|
|
- build/dbtool -d test.db -D | wc -l | grep 1
|
|
# modify a key
|
|
- build/dbtool -d test.db -u -k test -v modified
|
|
# check modified key
|
|
- build/dbtool -d test.db -s -k test | grep modified
|
|
# use splitting with regex
|
|
- echo today:100 | build/dbtool -d test.db -i -f -t '^([^:]*):([^:]*)'
|
|
# check if it works
|
|
- build/dbtool -d test.db -s -k today | grep 100
|
|
# use splitting with regex reverse
|
|
- echo today:cold | build/dbtool -d test.db -R -i -f -t '^([^:]*):([^:]*)'
|
|
# check if it works
|
|
- build/dbtool -d test.db -s -k cold | grep today
|
|
# check encryption
|
|
- build/dbtool -d test.db -i -k borg -v sevenofnine -p -P foobar
|
|
- build/dbtool -d test.db -s -k borg -p -P foobar | grep sevenofnine
|
|
|