8686 context : ./vchord-cnpg
8787 file : ${{ matrix.dockerfile }}
8888 push : true
89+ provenance : false
8990 platforms : ${{ matrix.platform }}
9091 tags : |
9192 modelzai/vchord-cnpg:pg${{ matrix.pg_major }}-${{ needs.get-versions.outputs.VERSION_TAG }}-${{ matrix.arch }}
9899 VECTORCHORD_SEMVER=${{ needs.get-versions.outputs.VECTORCHORD_SEMVER }}
99100 VECTORCHORD_BM25_SEMVER=${{ needs.get-versions.outputs.VECTORCHORD_BM25_SEMVER }}
100101 PG_TOKENIZER_SEMVER=${{ needs.get-versions.outputs.PG_TOKENIZER_SEMVER }}
102+ create-manifests-modelzai :
103+ runs-on : ubuntu-latest
104+ needs : ["build-and-push"]
105+ strategy :
106+ matrix :
107+ version : ["14", "15", "16", "17"]
108+ steps :
109+ - name : Checkout
110+ uses : actions/checkout@v4
111+ - name : Set up QEMU
112+ uses : docker/setup-qemu-action@v3
113+ - name : Login to modelzai Docker Hub
114+ uses : docker/login-action@v2
115+ with :
116+ username : ${{ secrets.DOCKERIO_MODELZ_USERNAME }}
117+ password : ${{ secrets.DOCKERIO_MODELZ_TOKEN }}
118+ - name : Create manifest and push
119+ run : |
120+ docker manifest create \
121+ modelzai/vchord-cnpg:${{ matrix.version }}-v${{ github.event.inputs.version }} \
122+ --amend modelzai/vchord-cnpg:${{ matrix.version }}-v${{ github.event.inputs.version }}-amd64 \
123+ --amend modelzai/vchord-cnpg:${{ matrix.version }}-v${{ github.event.inputs.version }}-arm64
124+ docker manifest push modelzai/vchord-cnpg:${{ matrix.version }}-v${{ github.event.inputs.version }}
125+ test :
126+ name : Run tests
127+ runs-on : ${{ matrix.runner }}
128+ needs : ["build-and-push", "create-manifests-modelzai"]
129+ strategy :
130+ matrix :
131+ version : [14, 15, 16, 17]
132+ runner : ["ubuntu-22.04"]
133+ container :
134+ image : modelzai/vchord-cnpg:${{ matrix.version }}-v${{ github.event.inputs.version }}
135+ options : --user root
136+ credentials :
137+ username : ${{ secrets.DOCKERIO_MODELZ_USERNAME }}
138+ password : ${{ secrets.DOCKERIO_MODELZ_TOKEN }}
139+ env :
140+ PGHOST : " localhost"
141+ PGPORT : " 5432"
142+ PGDATABASE : " postgres"
143+ PGUSER : " postgres"
144+ PGPASSWORD : " postgres"
145+ POSTGRES_PASSWORD : " password"
146+ PGDATA : " /var/lib/postgresql/data2"
147+
148+ steps :
149+ - name : Install all extensions in registry
150+ # Entrypoint is overwritten by GitHub Action. We need to execute it manually in order to start Postgres.
151+ # More information here https://github.com/actions/runner/issues/1964
152+ run : |
153+ bash /usr/local/bin/docker-entrypoint.sh postgres &
154+ sleep 5
155+ curl https://registry.pgtrunk.io/extensions/all | jq -r ".[] | .name" > /tmp/extensions.txt
156+ extension-install.sh | tee /tmp/output.txt
157+ cat /tmp/output.txt
0 commit comments