github.com/noqcks/syft@v0.0.0-20230920222752-a9e2c4e288e5/syft/pkg/cataloger/rpm/test-fixtures/generate-fixture.sh (about) 1 #!/usr/bin/env bash 2 set -eux 3 4 docker create --name generate-rpmdb-fixture centos:8 sh -c 'tail -f /dev/null' 5 6 function cleanup { 7 docker kill generate-rpmdb-fixture 8 docker rm generate-rpmdb-fixture 9 } 10 trap cleanup EXIT 11 12 docker start generate-rpmdb-fixture 13 docker exec -i --tty=false generate-rpmdb-fixture bash <<-EOF 14 mkdir -p /scratch 15 cd /scratch 16 rpm --initdb --dbpath /scratch 17 curl -sSLO https://github.com/wagoodman/dive/releases/download/v0.9.2/dive_0.9.2_linux_amd64.rpm 18 rpm --dbpath /scratch -ivh dive_0.9.2_linux_amd64.rpm 19 rm dive_0.9.2_linux_amd64.rpm 20 rpm --dbpath /scratch -qa 21 EOF 22 23 docker cp generate-rpmdb-fixture:/scratch/Packages . 24 25 docker build -o . - <<EOF 26 FROM mcr.microsoft.com/cbl-mariner/distroless/base:2.0 as base 27 FROM scratch 28 COPY --from=base /var/lib/rpmmanifest/container-manifest-2 . 29 EOF