diff --git a/.docker/Dockerfile b/.docker/Dockerfile index d07e149..5b057d8 100644 --- a/.docker/Dockerfile +++ b/.docker/Dockerfile @@ -2,6 +2,8 @@ FROM gentoo/stage3:latest COPY ./. / +ENV EGIT_CLONE_TYPE=shallow + RUN getuto RUN emerge-webrsync @@ -12,7 +14,9 @@ RUN emerge \ llvm-core/lld \ dev-vcs/git \ sys-process/parallel \ - dev-utils/cbindgen + dev-util/cbindgen \ + net-libs/nodejs + RUN git clone https://jturnerusa.dev/cgit/ebuilds/ /var/db/repos/spawns @@ -22,6 +26,10 @@ RUN mkdir -p /var/cache/distfiles/git3-src && chown portage:portage /var/cache/d RUN emerge =dev-build/meson-9999 +RUN useradd -m gentooligan + +USER gentooligan + WORKDIR /workspace ENTRYPOINT /bin/bash diff --git a/.gitea/workflows/docker.yml b/.gitea/workflows/docker.yml deleted file mode 100644 index 90b53ad..0000000 --- a/.gitea/workflows/docker.yml +++ /dev/null @@ -1,42 +0,0 @@ -name: Build gentoo-utils docker image - -on: - push: - branches: - - master - paths: - - '.docker/Dockerfile' - pull_request: - paths: - - '.docker/Dockerfile' - workflow_dispatch: - - -jobs: - build-docker: - runs-on: ubuntu-latest - - steps: - - - name: Checkout repo - uses: actions/checkout@v4 - - - - name: Set up Docker buildx - uses: docker/setup-buildx-action@v3 - - - - name: Log in to Github Container Registry - uses: docker/login-action@v3 - with: - registry: git.epenguin.net - username: ${{ gitea.actor }} - password: ${{ secrets.CI_TOKEN }} - - - - name: Build and push - uses: docker/build-push-action@v6 - with: - push: true - tags: git.epenguin.net/${{ gitea.repository }}:latest - context: "{{defaultContext}}:.docker" diff --git a/.gitea/workflows/gentoo-utils.yml b/.gitea/workflows/gentoo-utils.yml new file mode 100644 index 0000000..c6e78f0 --- /dev/null +++ b/.gitea/workflows/gentoo-utils.yml @@ -0,0 +1,59 @@ +name: Gentoo Utils + +on: + push: + branches: [master] + pull_request: + branches: [master] + +jobs: + build-docker: + runs-on: ubuntu-latest + continue-on-error: true + steps: + - + name: Checkout repo + uses: actions/checkout@v5 + with: + fetch-depth: 0 + + - name: Check for changes before building + id: image-changes + run: | + if git diff --name-only ${{ gitea.event.before }} ${{ gitea.sha }} | grep -q '^\.docker/'; then + echo "changes_detected=true" >> $GITEA_OUTPUT + else + echo "changes_detected=false" >> $GITEA_OUTPUT + fi + - + name: Set up Docker buildx + if: steps.docker-changes.outputs.changes_detected == 'true' + uses: docker/setup-buildx-action@v3 + + - + name: Log in to Github Container Registry + if: steps.docker-changes.outputs.changes_detected == 'true' + uses: docker/login-action@v3 + with: + registry: git.epenguin.net + username: ${{ vars.CI_BOT_USERNAME }} + password: ${{ secrets.CI_BOT_TOKEN }} + + - + name: Build and push + if: steps.docker-changes.outputs.changes_detected == 'true' + uses: docker/build-push-action@v6 + with: + push: true + tags: git.epenguin.net/${{ gitea.repository }}:latest + context: "{{defaultContext}}:.docker" + + build: + runs-on: gentoo-utils + needs: build-docker + steps: + - name: Checkout repo + uses: actions/checkout@v5 + + - name: build and check + run: ./check.sh