Skip to content

Commit 379ee34

Browse files
committed
Add devcontainer configuration and CI
1 parent a7dae52 commit 379ee34

File tree

2 files changed

+75
-0
lines changed

2 files changed

+75
-0
lines changed

.devcontainer/devcontainer.json

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
{
2+
"name": "Dissect",
3+
"image": "python:3.11-bullseye",
4+
"features": {
5+
"ghcr.io/devcontainers/features/common-utils:2": {
6+
"installZsh": "true",
7+
"configureZshAsDefaultShell": "true",
8+
"username": "user",
9+
"userUid": "1000",
10+
"userGid": "1000",
11+
"upgradePackages": "true"
12+
},
13+
"ghcr.io/devcontainers/features/python:1": {
14+
"toolsToInstall": "tox"
15+
},
16+
"ghcr.io/devcontainers/features/git-lfs:1": {
17+
"autoPull": true,
18+
"version": "latest"
19+
}
20+
},
21+
"customizations": {
22+
"vscode": {
23+
"extensions": [
24+
"charliermarsh.ruff"
25+
],
26+
"settings": {
27+
"python.analysis.autoImportCompletions": true,
28+
"python.analysis.indexing": true,
29+
"python.analysis.inlayHints.functionReturnTypes": true,
30+
"python.analysis.packageIndexDepths": [
31+
{
32+
"name": "dissect",
33+
"depth": 69,
34+
"includeAllSymbols": true
35+
}
36+
],
37+
"[python]": {
38+
"editor.formatOnSave": true,
39+
"editor.defaultFormatter": "charliermarsh.ruff"
40+
}
41+
}
42+
}
43+
},
44+
"remoteUser": "user"
45+
}

.github/workflows/release.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: "Release devcontainer image"
2+
on:
3+
workflow_dispatch:
4+
5+
jobs:
6+
deploy:
7+
if: ${{ github.ref == 'refs/heads/main' }}
8+
runs-on: ubuntu-latest
9+
steps:
10+
- name: Checkout (GitHub)
11+
uses: actions/checkout@v4
12+
13+
- name: Login to GitHub Container Registry
14+
uses: docker/login-action@v3
15+
with:
16+
registry: ghcr.io
17+
username: ${{ github.repository_owner }}
18+
password: ${{ secrets.GITHUB_TOKEN }}
19+
20+
- name: Pre-build and publish dev container image
21+
uses: devcontainers/[email protected]
22+
with:
23+
imageName: ghcr.io/fox-it/dissect-devcontainer
24+
cacheFrom: ghcr.io/fox-it/dissect-devcontainer
25+
push: filter
26+
refFilterForPush: refs/heads/main
27+
eventFilterForPush: |
28+
workflow_dispatch
29+
env:
30+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)