Skip to content

Commit

Permalink
chore: Add devcontainer
Browse files Browse the repository at this point in the history
  • Loading branch information
trallnag committed Jan 22, 2025
1 parent dfa2b3d commit 7a08d81
Show file tree
Hide file tree
Showing 5 changed files with 85 additions and 0 deletions.
1 change: 1 addition & 0 deletions .devcontainer/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
COMPOSE_PROJECT_NAME="devcontainer-filter-pre-commit-hooks"
38 changes: 38 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
FROM mcr.microsoft.com/devcontainers/python:latest

USER vscode

# Install additional packages with APT.
RUN <<-EOT
set -eux
export DEBIAN_FRONTEND=noninteractive
sudo apt-get update
sudo apt-get install --yes --no-install-recommends \
curl \
dnsutils \
gnupg2
EOT

# Install additional packages with pipx.
RUN <<-EOT
set -eux

pipx install \
copier \
pre-commit \
uv
EOT

# Install Task with the official installer.
# Set up completion in Bash.
RUN <<-EOT
set -eux
curl \
--location --silent --show-error --fail \
--output /tmp/taskfile-installer.sh \
https://taskfile.dev/install.sh
mkdir -p ~/.local/bin
sh /tmp/taskfile-installer.sh -d -b ~/.local/bin
mkdir -p ~/.local/share/bash-completion/completions
task --completion bash > ~/.local/share/bash-completion/completions/task
EOT
5 changes: 5 additions & 0 deletions .devcontainer/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Devcontainer

This projects supports [Development Containers](https://containers.dev/).

The dev container is made to be used with Visual Studio Code.
28 changes: 28 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{
"name": "filter-pre-commit-hooks",

"workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}",

"dockerComposeFile": "docker-compose.yaml",

"service": "vscode",

"customizations": {
"vscode": {
"extensions": [
"tamasfe.even-better-toml",
"charliermarsh.ruff",
"ms-python.python",
"task.vscode-task",
"Tyriar.sort-lines"
]
}
},

"postCreateCommand": {
"fixVolumePreCommitCache": "sudo chown -R vscode:vscode /home/vscode/.cache/pre-commit",
"fixVolumeUvCache": "sudo chown -R vscode:vscode /home/vscode/.cache/uv"
},

"postStartCommand": "task init",
}
13 changes: 13 additions & 0 deletions .devcontainer/docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
services:
vscode:
build:
context: .
dockerfile: Dockerfile
volumes:
- ../..:/workspaces:cached
- pre-commit-cache:/home/vscode/.cache/pre-commit
- uv-cache:/home/vscode/.cache/uv
command: sleep infinity
volumes:
pre-commit-cache:
uv-cache:

0 comments on commit 7a08d81

Please sign in to comment.