9 Commits

Author SHA1 Message Date
Shaun Setlock
bc5e78af57 Added arm build step to nightly.
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 4m5s
2025-05-08 20:43:57 -04:00
cc56ca800d Moving container to its own directory; not just a nvim thing. Added a nightly workflow. Switched to tags trigger. (#14)
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 4m2s
Co-authored-by: Shaun Setlock <shaun@setlock.net>
Co-authored-by: Shaun Setlock <shaunsetlock@protonmail.com>
Reviewed-on: https://www.gitea.setlock.net/shaun/dotfiles/pulls/14
2025-05-06 21:43:48 -04:00
f9616acc97 Merge pull request 'Single platform for container build.' (#11) from feature/update_CICD_trigger into master
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 3m57s
Reviewed-on: https://www.gitea.setlock.net/shaun/dotfiles/pulls/11
2025-05-04 09:30:25 -04:00
Shaun Setlock
0238308ca9 Single platform for container build. 2025-05-04 09:29:14 -04:00
b940f75259 Merge pull request 'Fixing tagging.' (#10) from feature/update_CICD_trigger into master
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 3m48s
Reviewed-on: https://www.gitea.setlock.net/shaun/dotfiles/pulls/10
2025-05-03 22:46:30 -04:00
Shaun Setlock
387748e89b Fixing tagging. 2025-05-03 22:45:35 -04:00
fd5a511c71 Merge pull request 'Building amd64 to start.' (#9) from feature/update_CICD_trigger into master
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 4m2s
Reviewed-on: https://www.gitea.setlock.net/shaun/dotfiles/pulls/9
2025-05-03 22:34:08 -04:00
69b7d89ee8 Merge pull request 'Correcting tagging.' (#8) from feature/update_CICD_trigger into master
Some checks failed
Build and Push Docker Image / build-and-push (push) Failing after 43m43s
Reviewed-on: https://www.gitea.setlock.net/shaun/dotfiles/pulls/8
2025-05-03 21:11:59 -04:00
66282f686d Merge pull request 'Correcting container registry.' (#7) from feature/update_CICD_trigger into master
Some checks failed
Build and Push Docker Image / build-and-push (push) Failing after 12s
Reviewed-on: https://www.gitea.setlock.net/shaun/dotfiles/pulls/7
2025-05-03 20:52:00 -04:00
5 changed files with 86 additions and 33 deletions

View File

@@ -3,8 +3,10 @@ name: Build and Push Docker Image
on:
push:
branches:
- master
# branches:
# - master
tags:
- "v*"
workflow_dispatch:
@@ -34,19 +36,9 @@ jobs:
- name: Build and Push Docker Image
uses: docker/build-push-action@v5
with:
context: ./nvim/tools
context: ./tools
push: true
platforms: linux/amd64
tags: |
gitea.setlock.net/shaun/neovim:latest
gitea.setlock.net/shaun/neovim:${{ env.GIT_TAG }}
#
# - name: Build and Push Docker Image
# uses: docker/build-push-action@v5
# with:
# context: ./nvim/tools
# push: true
# platforms: linux/arm64
# tags: |
# gitea.setlock.net/shaun/neovim:latest
# gitea.setlock.net/shaun/neovim:${{ env.GIT_TAG }}
gitea.setlock.net/shaun/dev-container:latest
gitea.setlock.net/shaun/dev-container:${{ env.GIT_TAG }}

View File

@@ -0,0 +1,61 @@
# .gitea/workflows/docker-build-push.yml
name: Build and Push Docker Image
on:
schedule:
- cron: "0 2 * * *"
workflow_dispatch:
jobs:
build-amd:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Log in to Gitea Container Registry
uses: docker/login-action@v3
with:
registry: gitea.setlock.net
username: ${{ secrets.USER }}
password: ${{ secrets.TOKEN }}
- name: Build and Push Docker Image
uses: docker/build-push-action@v5
with:
context: ./tools
push: true
platforms: linux/amd64
tags: |
gitea.setlock.net/shaun/dev-container:nightly
build-arm:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Log in to Gitea Container Registry
uses: docker/login-action@v3
with:
registry: gitea.setlock.net
username: ${{ secrets.USER }}
password: ${{ secrets.TOKEN }}
- name: Build and Push Docker Image
uses: docker/build-push-action@v5
with:
context: ./tools
push: true
platforms: linux/arm64
tags: |
gitea.setlock.net/shaun/dev-container:nightly

View File

@@ -1,9 +0,0 @@
version: "3"
services:
nv:
container_name: nv
image: shaun/neovim:latest
user: "1000:1000"
restart: unless-stopped
volumes:
- ~/code:/root/workspace

View File

@@ -16,9 +16,9 @@ RUN useradd -m -u 1000 -s /usr/bin/fish shaun
# Install required software
RUN apt-get update && apt-get -y install \
curl fzf ripgrep tree git xclip python3 python3-pip python3-venv nodejs npm \
tzdata ninja-build gettext libtool libtool-bin autoconf automake cmake g++ \
pkg-config zip unzip fish tmux
curl fzf ripgrep tree git xclip python3 python3-pip python3-venv nodejs npm \
tzdata ninja-build gettext libtool libtool-bin autoconf automake cmake g++ \
pkg-config zip unzip fish tmux
# Cooperate Neovim with Python 3.
RUN python3 -m pip install --break-system-packages --root-user-action ignore pynvim
@@ -28,9 +28,9 @@ RUN npm i -g neovim
# Install Neovim from source.
RUN mkdir -p /tmp/neovim-src && \
git clone --depth 1 --branch stable https://github.com/neovim/neovim /tmp/neovim-src && \
cd /tmp/neovim-src && make -j$(nproc) && make install && \
rm -rf /tmp/neovim-src
git clone --depth 1 --branch stable https://github.com/neovim/neovim /tmp/neovim-src && \
cd /tmp/neovim-src && make -j$(nproc) && make install && \
rm -rf /tmp/neovim-src
# Clone configuration files.
USER shaun
@@ -48,7 +48,7 @@ RUN ln -s /home/shaun/dotfiles/tmux /home/shaun/.config
# Install tmux plugin manager.
RUN git clone https://github.com/tmux-plugins/tpm /home/shaun/.config/tmux/plugins/tpm && \
/home/shaun/.config/tmux/plugins/tpm/scripts/install_plugins.sh
/home/shaun/.config/tmux/plugins/tpm/scripts/install_plugins.sh
# Get oh-my-fish and bob-the-fish installed.
RUN curl https://raw.githubusercontent.com/oh-my-fish/oh-my-fish/master/bin/install > install
@@ -63,11 +63,12 @@ USER root
RUN usermod --shell /usr/bin/fish shaun
# Set workspace directory
RUN mkdir -p /workspace && chown shaun:shaun /workspace
WORKDIR /workspace
RUN mkdir -p /workspace
RUN chown -R shaun:shaun /workspace
# Switch to non-root user
USER shaun
WORKDIR /home/shaun
# Avoid container exit.
CMD ["tail", "-f", "/dev/null"]

8
tools/docker-compose.yml Normal file
View File

@@ -0,0 +1,8 @@
version: "3"
services:
mydev:
container_name: mydev
image: gitea.setlock.net/shaun/dev-container:latest
restart: unless-stopped
volumes:
- /home/shaun:/workspace