diff --git a/.github/workflows/push-usearch.yml b/.github/workflows/push-usearch.yml new file mode 100755 index 0000000..580afe0 --- /dev/null +++ b/.github/workflows/push-usearch.yml @@ -0,0 +1,43 @@ +name: Build usearch + +on: + workflow_dispatch + +#When updating images change image tag below to correspond to changes +env: + IMAGE_NAME: usearch + IMAGE_TAG: v11 + +jobs: + build: + name: Build + #Using ubuntu-22.04 instead of ubuntu-latest to use Docker 24 instead of Docker 25 as it causes gitpod issues + runs-on: ubuntu-22.04 + + steps: + - name: Clean workspace before start + run: rm -rf $GITHUB_WORKSPACE/* + + - uses: actions/checkout@v4.1.1 + + - name: Check Docker version + run: docker --version + + - name: Build image + id: build-image + run: docker build -t ${IMAGE_NAME}:${IMAGE_TAG} -f ${IMAGE_NAME}/Dockerfile . + + - name: Quay.io login + run: docker login -u ${{ secrets.DOCKERBUILD_ROBOT_USERNAME }} --password-stdin <<< ${{ secrets.DOCKERBUILD_ROBOT_PASSWORD }} quay.io + + - name: Tag image + run: docker tag ${IMAGE_NAME}:${IMAGE_TAG} quay.io/ecoflowucl/${IMAGE_NAME}:${IMAGE_TAG} + + - name: Push image + run: docker push quay.io/ecoflowucl/${IMAGE_NAME}:${IMAGE_TAG} + + - name: Remove docker config + run: rm -rf /home/runner/.docker + + - name: Clean workspace after finish + run: rm -rf $GITHUB_WORKSPACE/* diff --git a/usearch/Dockerfile b/usearch/Dockerfile new file mode 100644 index 0000000..03c0e7c --- /dev/null +++ b/usearch/Dockerfile @@ -0,0 +1,13 @@ +FROM ubuntu:jammy-20240227 + +ARG usearch_version='11.0.667_i86linux32' + +RUN apt-get update \ + && apt-get install -y procps wget \ + && apt-get clean -y && rm -rf /var/lib/apt/lists/* + +RUN wget "https://www.drive5.com/downloads/usearch${usearch_version}.gz" -O /opt/usearch.gz && \ + gunzip /opt/usearch.gz && \ + chmod +x /opt/usearch + +ENV PATH="${PATH}:/opt"