Skip to content

Commit 8b54a8d

Browse files
committed
fix(ci/db): fix db build
1 parent b6bd366 commit 8b54a8d

File tree

2 files changed

+101
-93
lines changed

2 files changed

+101
-93
lines changed

.github/workflows/db.yml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,19 +30,19 @@ jobs:
3030
run: go install ./cmd/vuls
3131

3232
- name: make db-build
33-
run: make db-build
33+
run: make db-build DBPATH=./vuls.db
3434

3535
- name: Install bbolt
3636
run: go install go.etcd.io/bbolt/cmd/bbolt@latest
3737

3838
- name: Install Zstd
39-
run: apt-get update && apt-get install -y zstd
39+
run: sudo apt-get update && sudo apt-get install -y zstd
4040

4141
- name: compact vuls.db
4242
run: |
43-
bbolt compact -o ~/.cache/vuls/vuls-compact.db ~/.cache/vuls/vuls.db
44-
rm ~/.cache/vuls/vuls.db
45-
zstd -19 --rm -o ~/.cache/vuls/vuls-compact.db -o ~/.cache/vuls/vuls.db.zst
43+
bbolt compact -o ./vuls-compact.db ./vuls.db
44+
mv ./vuls-compact.db ./vuls.db
45+
zstd --ultra -22 -T4 --rm ./vuls.db -o ./vuls.db.zst
4646
4747
- name: Install Oras
4848
run: |
@@ -61,5 +61,6 @@ jobs:
6161
username: ${{ github.actor }}
6262
password: ${{ secrets.GITHUB_TOKEN }}
6363

64-
- name: Upload assets to GHCR
65-
run: oras push ghcr.io/${{ github.repository }}:latest ~/.cache/vuls/vuls.db.zst:application/vnd.mainek00n.vuls.db.layer.v1+zstd
64+
- name: Upload vuls.db to GHCR
65+
run: oras push ghcr.io/mainek00n/vuls2:latest ./vuls.db.zst:application/vnd.mainek00n.vuls.db.layer.v1+zstd
66+
# run: oras push ghcr.io/${{ github.repository }}:latest ./vuls.db.zst:application/vnd.mainek00n.vuls.db.layer.v1+zstd

GNUmakefile

Lines changed: 93 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -41,98 +41,105 @@ vet:
4141
fmtcheck:
4242
gofmt -s -d .
4343

44+
DBTYPE := boltdb
45+
DBPATH := ~/.cache/vuls/vuls.db
46+
4447
.PHONY: db-build
4548
db-build:
46-
vuls db init
47-
make db-add REPO=vuls-data-extracted-alma-errata
48-
# make db-add REPO=vuls-data-extracted-alma-osv
49-
# make db-add REPO=vuls-data-extracted-alma-oval
50-
make db-add REPO=vuls-data-extracted-alpine-secdb
51-
# make db-add REPO=vuls-data-extracted-alpine-osv
52-
make db-add REPO=vuls-data-extracted-amazon
53-
make db-add REPO=vuls-data-extracted-arch
54-
# make db-add REPO=vuls-data-extracted-debian-osv
55-
# make db-add REPO=vuls-data-extracted-debian-oval
56-
# make db-add REPO=vuls-data-extracted-debian-security-tracker-api
57-
# make db-add REPO=vuls-data-extracted-debian-security-tracker-salsa
58-
make db-add REPO=vuls-data-extracted-freebsd
59-
# make db-add REPO=vuls-data-extracted-gentoo
60-
# make db-add REPO=vuls-data-extracted-netbsd
61-
# make db-add REPO=vuls-data-extracted-oracle
62-
# make db-add REPO=vuls-data-extracted-redhat-cve
63-
# make db-add REPO=vuls-data-extracted-redhat-csaf
64-
# make db-add REPO=vuls-data-extracted-redhat-cvrf
65-
# make db-add REPO=vuls-data-extracted-redhat-ovalv1
66-
# make db-add REPO=vuls-data-extracted-redhat-ovalv2
67-
# make db-add REPO=vuls-data-extracted-redhat-vex
68-
# make db-add REPO=vuls-data-extracted-rocky-errata
69-
# make db-add REPO=vuls-data-extracted-rocky-osv
70-
# make db-add REPO=vuls-data-extracted-suse-oval
71-
# make db-add REPO=vuls-data-extracted-suse-cvrf
72-
# make db-add REPO=vuls-data-extracted-suse-csaf
73-
# make db-add REPO=vuls-data-extracted-ubuntu-oval
74-
# make db-add REPO=vuls-data-extracted-ubuntu-cve-tracker
75-
# make db-add REPO=vuls-data-extracted-windows-bulletin
76-
# make db-add REPO=vuls-data-extracted-windows-cvrf
77-
# make db-add REPO=vuls-data-extracted-windows-wsusscn2
49+
vuls db init --dbtype ${DBTYPE} --dbpath ${DBPATH}
50+
# make db-add REPO=vuls-data-extracted-alma-errata DBTYPE=${DBTYPE} DBPATH=${DBPATH}
51+
# make db-add REPO=vuls-data-extracted-alma-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
52+
# make db-add REPO=vuls-data-extracted-alma-oval DBTYPE=${DBTYPE} DBPATH=${DBPATH}
53+
# make db-add REPO=vuls-data-extracted-alpine-secdb DBTYPE=${DBTYPE} DBPATH=${DBPATH}
54+
# make db-add REPO=vuls-data-extracted-alpine-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
55+
# make db-add REPO=vuls-data-extracted-amazon DBTYPE=${DBTYPE} DBPATH=${DBPATH}
56+
make db-add REPO=vuls-data-extracted-arch DBTYPE=${DBTYPE} DBPATH=${DBPATH}
57+
# make db-add REPO=vuls-data-extracted-debian-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
58+
# make db-add REPO=vuls-data-extracted-debian-oval DBTYPE=${DBTYPE} DBPATH=${DBPATH}
59+
# make db-add REPO=vuls-data-extracted-debian-security-tracker-api DBTYPE=${DBTYPE} DBPATH=${DBPATH}
60+
# make db-add REPO=vuls-data-extracted-debian-security-tracker-salsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
61+
# make db-add REPO=vuls-data-extracted-freebsd DBTYPE=${DBTYPE} DBPATH=${DBPATH}
62+
# make db-add REPO=vuls-data-extracted-gentoo DBTYPE=${DBTYPE} DBPATH=${DBPATH}
63+
# make db-add REPO=vuls-data-extracted-netbsd DBTYPE=${DBTYPE} DBPATH=${DBPATH}
64+
# make db-add REPO=vuls-data-extracted-oracle DBTYPE=${DBTYPE} DBPATH=${DBPATH}
65+
# make db-add REPO=vuls-data-extracted-redhat-cve DBTYPE=${DBTYPE} DBPATH=${DBPATH}
66+
# make db-add REPO=vuls-data-extracted-redhat-csaf DBTYPE=${DBTYPE} DBPATH=${DBPATH}
67+
# make db-add REPO=vuls-data-extracted-redhat-cvrf DBTYPE=${DBTYPE} DBPATH=${DBPATH}
68+
# make db-add REPO=vuls-data-extracted-redhat-ovalv1 DBTYPE=${DBTYPE} DBPATH=${DBPATH}
69+
# make db-add REPO=vuls-data-extracted-redhat-ovalv2 DBTYPE=${DBTYPE} DBPATH=${DBPATH}
70+
# make db-add REPO=vuls-data-extracted-redhat-vex DBTYPE=${DBTYPE} DBPATH=${DBPATH}
71+
# make db-add REPO=vuls-data-extracted-rocky-errata DBTYPE=${DBTYPE} DBPATH=${DBPATH}
72+
# make db-add REPO=vuls-data-extracted-rocky-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
73+
# make db-add REPO=vuls-data-extracted-suse-oval DBTYPE=${DBTYPE} DBPATH=${DBPATH}
74+
# make db-add REPO=vuls-data-extracted-suse-cvrf DBTYPE=${DBTYPE} DBPATH=${DBPATH}
75+
# make db-add REPO=vuls-data-extracted-suse-csaf DBTYPE=${DBTYPE} DBPATH=${DBPATH}
76+
# make db-add REPO=vuls-data-extracted-ubuntu-oval DBTYPE=${DBTYPE} DBPATH=${DBPATH}
77+
# make db-add REPO=vuls-data-extracted-ubuntu-cve-tracker DBTYPE=${DBTYPE} DBPATH=${DBPATH}
78+
# make db-add REPO=vuls-data-extracted-windows-bulletin DBTYPE=${DBTYPE} DBPATH=${DBPATH}
79+
# make db-add REPO=vuls-data-extracted-windows-cvrf DBTYPE=${DBTYPE} DBPATH=${DBPATH}
80+
# make db-add REPO=vuls-data-extracted-windows-wsusscn2 DBTYPE=${DBTYPE} DBPATH=${DBPATH}
7881

79-
# make db-add REPO=vuls-data-extracted-cargo-ghsa
80-
# make db-add REPO=vuls-data-extracted-cargo-osv
81-
# make db-add REPO=vuls-data-extracted-composer-ghsa
82-
# make db-add REPO=vuls-data-extracted-composer-glsa
83-
# make db-add REPO=vuls-data-extracted-composer-osv
84-
# make db-add REPO=vuls-data-extracted-conan-glsa
85-
# make db-add REPO=vuls-data-extracted-erlang-ghsa
86-
# make db-add REPO=vuls-data-extracted-erlang-osv
87-
# make db-add REPO=vuls-data-extracted-golang-ghsa
88-
# make db-add REPO=vuls-data-extracted-golang-glsa
89-
# make db-add REPO=vuls-data-extracted-golang-osv
90-
# make db-add REPO=vuls-data-extracted-haskell-osv
91-
# make db-add REPO=vuls-data-extracted-maven-ghsa
92-
# make db-add REPO=vuls-data-extracted-maven-glsa
93-
# make db-add REPO=vuls-data-extracted-maven-osv
94-
# make db-add REPO=vuls-data-extracted-npm-ghsa
95-
# make db-add REPO=vuls-data-extracted-npm-glsa
96-
# make db-add REPO=vuls-data-extracted-npm-osv
97-
# make db-add REPO=vuls-data-extracted-nuget-ghsa
98-
# make db-add REPO=vuls-data-extracted-nuget-glsa
99-
# make db-add REPO=vuls-data-extracted-nuget-osv
100-
# make db-add REPO=vuls-data-extracted-pip-ghsa
101-
# make db-add REPO=vuls-data-extracted-pip-glsa
102-
# make db-add REPO=vuls-data-extracted-pip-osv
103-
# make db-add REPO=vuls-data-extracted-pub-ghsa
104-
# make db-add REPO=vuls-data-extracted-pub-osv
105-
# make db-add REPO=vuls-data-extracted-r-osv
106-
# make db-add REPO=vuls-data-extracted-rubygems-ghsa
107-
# make db-add REPO=vuls-data-extracted-rubygems-glsa
108-
# make db-add REPO=vuls-data-extracted-rubygems-osv
109-
# make db-add REPO=vuls-data-extracted-swift-ghsa
110-
# make db-add REPO=vuls-data-extracted-swift-osv
82+
# make db-add REPO=vuls-data-extracted-cargo-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
83+
# make db-add REPO=vuls-data-extracted-cargo-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
84+
# make db-add REPO=vuls-data-extracted-composer-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
85+
# make db-add REPO=vuls-data-extracted-composer-glsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
86+
# make db-add REPO=vuls-data-extracted-composer-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
87+
# make db-add REPO=vuls-data-extracted-conan-glsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
88+
# make db-add REPO=vuls-data-extracted-erlang-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
89+
# make db-add REPO=vuls-data-extracted-erlang-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
90+
# make db-add REPO=vuls-data-extracted-golang-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
91+
# make db-add REPO=vuls-data-extracted-golang-glsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
92+
# make db-add REPO=vuls-data-extracted-golang-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
93+
# make db-add REPO=vuls-data-extracted-haskell-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
94+
# make db-add REPO=vuls-data-extracted-maven-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
95+
# make db-add REPO=vuls-data-extracted-maven-glsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
96+
# make db-add REPO=vuls-data-extracted-maven-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
97+
# make db-add REPO=vuls-data-extracted-npm-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
98+
# make db-add REPO=vuls-data-extracted-npm-glsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
99+
# make db-add REPO=vuls-data-extracted-npm-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
100+
# make db-add REPO=vuls-data-extracted-nuget-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
101+
# make db-add REPO=vuls-data-extracted-nuget-glsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
102+
# make db-add REPO=vuls-data-extracted-nuget-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
103+
# make db-add REPO=vuls-data-extracted-pip-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
104+
# make db-add REPO=vuls-data-extracted-pip-glsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
105+
# make db-add REPO=vuls-data-extracted-pip-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
106+
# make db-add REPO=vuls-data-extracted-pub-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
107+
# make db-add REPO=vuls-data-extracted-pub-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
108+
# make db-add REPO=vuls-data-extracted-r-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
109+
# make db-add REPO=vuls-data-extracted-rubygems-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
110+
# make db-add REPO=vuls-data-extracted-rubygems-glsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
111+
# make db-add REPO=vuls-data-extracted-rubygems-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
112+
# make db-add REPO=vuls-data-extracted-swift-ghsa DBTYPE=${DBTYPE} DBPATH=${DBPATH}
113+
# make db-add REPO=vuls-data-extracted-swift-osv DBTYPE=${DBTYPE} DBPATH=${DBPATH}
111114

112-
# make db-add REPO=vuls-data-extracted-attack
113-
# make db-add REPO=vuls-data-extracted-capec
114-
# make db-add REPO=vuls-data-extracted-cwe
115-
# make db-add REPO=vuls-data-extracted-exploit-exploitdb
116-
# make db-add REPO=vuls-data-extracted-exploit-github
117-
# make db-add REPO=vuls-data-extracted-exploit-inthewild
118-
# make db-add REPO=vuls-data-extracted-exploit-trickest
119-
# make db-add REPO=vuls-data-extracted-jvn-feed-detail
120-
# make db-add REPO=vuls-data-extracted-jvn-feed-product
121-
# make db-add REPO=vuls-data-extracted-jvn-feed-rss
122-
# make db-add REPO=vuls-data-extracted-kev
123-
# make db-add REPO=vuls-data-extracted-mitre-cvrf
124-
# make db-add REPO=vuls-data-extracted-mitre-v4
125-
# make db-add REPO=vuls-data-extracted-mitre-v5
126-
# make db-add REPO=vuls-data-extracted-msf
127-
# make db-add REPO=vuls-data-extracted-nvd-feed-cve
128-
# make db-add REPO=vuls-data-extracted-nvd-feed-cpe
129-
# make db-add REPO=vuls-data-extracted-nvd-feed-cpematch
130-
# make db-add REPO=vuls-data-extracted-snort
115+
# make db-add REPO=vuls-data-extracted-attack DBTYPE=${DBTYPE} DBPATH=${DBPATH}
116+
# make db-add REPO=vuls-data-extracted-capec DBTYPE=${DBTYPE} DBPATH=${DBPATH}
117+
# make db-add REPO=vuls-data-extracted-cwe DBTYPE=${DBTYPE} DBPATH=${DBPATH}
118+
# make db-add REPO=vuls-data-extracted-eol DBTYPE=${DBTYPE} DBPATH=${DBPATH}
119+
# make db-add REPO=vuls-data-extracted-epss DBTYPE=${DBTYPE} DBPATH=${DBPATH}
120+
# make db-add REPO=vuls-data-extracted-exploit-exploitdb DBTYPE=${DBTYPE} DBPATH=${DBPATH}
121+
# make db-add REPO=vuls-data-extracted-exploit-github DBTYPE=${DBTYPE} DBPATH=${DBPATH}
122+
# make db-add REPO=vuls-data-extracted-exploit-inthewild DBTYPE=${DBTYPE} DBPATH=${DBPATH}
123+
# make db-add REPO=vuls-data-extracted-exploit-trickest DBTYPE=${DBTYPE} DBPATH=${DBPATH}
124+
# make db-add REPO=vuls-data-extracted-jvn-feed-detail DBTYPE=${DBTYPE} DBPATH=${DBPATH}
125+
# make db-add REPO=vuls-data-extracted-jvn-feed-product DBTYPE=${DBTYPE} DBPATH=${DBPATH}
126+
# make db-add REPO=vuls-data-extracted-jvn-feed-rss DBTYPE=${DBTYPE} DBPATH=${DBPATH}
127+
# make db-add REPO=vuls-data-extracted-kev DBTYPE=${DBTYPE} DBPATH=${DBPATH}
128+
# make db-add REPO=vuls-data-extracted-mitre-cvrf DBTYPE=${DBTYPE} DBPATH=${DBPATH}
129+
# make db-add REPO=vuls-data-extracted-mitre-v4 DBTYPE=${DBTYPE} DBPATH=${DBPATH}
130+
# make db-add REPO=vuls-data-extracted-mitre-v5 DBTYPE=${DBTYPE} DBPATH=${DBPATH}
131+
# make db-add REPO=vuls-data-extracted-msf DBTYPE=${DBTYPE} DBPATH=${DBPATH}
132+
# make db-add REPO=vuls-data-extracted-nvd-feed-cve DBTYPE=${DBTYPE} DBPATH=${DBPATH}
133+
# make db-add REPO=vuls-data-extracted-nvd-feed-cpe DBTYPE=${DBTYPE} DBPATH=${DBPATH}
134+
# make db-add REPO=vuls-data-extracted-nvd-feed-cpematch DBTYPE=${DBTYPE} DBPATH=${DBPATH}
135+
# make db-add REPO=vuls-data-extracted-snort DBTYPE=${DBTYPE} DBPATH=${DBPATH}
131136

132137
.PHONY: db-add
133138
db-add:
134-
git clone https://github.com/vulsio/${REPO}.git
135-
cat ${REPO}/datasource.json | jq --arg hash $(git -C ${REPO} rev-parse HEAD) '.extracted.commit |= $hash' > tmp
139+
git clone --depth 1 https://github.com/vulsio/${REPO}.git
140+
cat ${REPO}/datasource.json | jq --arg hash $(shell git -C ${REPO} rev-parse HEAD) '.extracted.commit |= $$hash' > tmp
141+
cat tmp
136142
mv tmp ${REPO}/datasource.json
137-
vuls db add ${REPO}
143+
cat ${REPO}/datasource.json
144+
vuls db add --dbtype ${DBTYPE} --dbpath ${DBPATH} ${REPO}
138145
rm -rf ${REPO}

0 commit comments

Comments
 (0)