Skip to content

Commit ab492be

Browse files
committed
CI: fix VVS & Entur smoke tests 💚
1 parent a2d774a commit ab492be

3 files changed

Lines changed: 37 additions & 2 deletions

File tree

‎.github/workflows/smoke-test.yml‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@ jobs:
3434
- name: install sponge (moreutils)
3535
run: sudo apt install -y moreutils
3636

37+
- name: install QSV
38+
run: ./ci/install-qsv.sh
39+
- name: enable QSV for file extensions other than .qsv
40+
run: |
41+
echo 'QSV_SKIP_FORMAT_CHECK=true' >>$GITHUB_ENV
3742
- name: install DuckDB
3843
run: |
3944
set -eux -o pipefail

‎.github/workflows/smoke-tests.yml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
with:
2222
feed-name: Entur
2323
feed-download-cmd: 'wget -nv -U "${{ github.repository }} CI" "https://storage.googleapis.com/marduk-production/outbound/gtfs/rb_norway-aggregated-gtfs.zip" -O gtfs.zip'
24-
feed-extract-cmd: 'unzip -d gtfs gtfs.zip'
24+
feed-extract-cmd: 'unzip -d gtfs gtfs.zip && qsv select "!feed_id" gtfs/feed_info.txt | sponge gtfs/feed_info.txt'
2525
feed-import-flags: '--route-types-scheme tpeg-pti'
2626
feed-import-glob: 'gtfs/*.txt'
2727
smoke-test-vgn:
@@ -39,6 +39,6 @@ jobs:
3939
with:
4040
feed-name: VVS
4141
feed-download-cmd: 'wget -nv -U "${{ github.repository }} CI" "https://download.vvs.de/gtfs_realtime.zip" -O gtfs.zip'
42-
feed-extract-cmd: 'unzip -d gtfs gtfs.zip && rm gtfs/ticketing_deep_links.txt gtfs/ticketing_identifiers.txt'
42+
feed-extract-cmd: 'unzip -d gtfs gtfs.zip && rm gtfs/ticketing_deep_links.txt gtfs/ticketing_identifiers.txt && qsv select "!ticketing_deep_link_id" gtfs/agency.txt | sponge gtfs/agency.txt'
4343
feed-import-flags: '--trips-without-shape-id --lower-case-lang-codes'
4444
feed-import-glob: 'gtfs/*.txt'

‎ci/install-qsv.sh‎

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
#!/bin/bash
2+
3+
set -eu -o pipefail
4+
set -x
5+
6+
# alternative: cargo install qsv --locked --features all_features
7+
8+
sudo apt install -y \
9+
curl jq unzip
10+
11+
ua='iris-gtfs-rt-feed CI'
12+
qsv_release='286558142' # v16.1.0
13+
releases_url="https://api.github.com/repos/dathere/qsv/releases/$qsv_release"
14+
assets_url="$(
15+
curl "$releases_url" -H 'Accept: application/json' -H "User-Agent: $ua" -L -fsS \
16+
| jq -r '.assets_url'
17+
)"
18+
qsv_x64_url="$(
19+
curl "$assets_url" -H 'Accept: application/json' -H "User-Agent: $ua" -L -fsS \
20+
| jq -r '.[] | select(.name | test("qsv-[0-9.]+-x86_64-unknown-linux-gnu.zip")) | .browser_download_url'
21+
)"
22+
23+
zip="$(mktemp)"
24+
curl -o "$zip" "$qsv_x64_url" -H "User-Agent: $ua" -L -fsS
25+
26+
mkdir -p "$HOME/.local/bin"
27+
unzip -j -q -d "$HOME/.local/bin" "$zip" qsv
28+
chmod +x "$HOME/.local/bin/qsv"
29+
30+
$HOME/.local/bin/qsv --version

0 commit comments

Comments
 (0)