Skip to content

Commit 2ef96ec

Browse files
authored
Initial commit
0 parents  commit 2ef96ec

File tree

15 files changed

+294
-0
lines changed

15 files changed

+294
-0
lines changed

.devcontainer/Dockerfile

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
FROM alpine:latest
2+
3+
# Install common tools
4+
RUN apk add --no-cache bash git
5+
6+
# Setup default user
7+
ARG USERNAME=vscode
8+
ARG USER_UID=1000
9+
ARG USER_GID=$USER_UID
10+
11+
RUN addgroup -g $USER_GID -S $USERNAME && \
12+
adduser -u $USER_UID -S -G $USERNAME -s /bin/bash $USERNAME
13+
14+
# Switch to the default user
15+
USER $USERNAME

.devcontainer/devcontainer.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"name": "Template Development Container",
3+
"dockerFile": "Dockerfile",
4+
"customizations": {
5+
"settings": {
6+
"terminal.integrated.shell.linux": "/bin/bash"
7+
}
8+
},
9+
"remoteUser": "vscode"
10+
}

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* text=auto

.github/CODEOWNER

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Replace <your-username> with your GitHub username
2+
* @your-username
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: 'type: bug'
6+
assignees: ''
7+
---
8+
9+
## Describe the bug
10+
11+
- A clear and concise description of what the bug is.
12+
13+
## To Reproduce
14+
15+
- Steps to reproduce the behavior:
16+
17+
1. Go to '...'
18+
2. Click on '....'
19+
3. Scroll down to '....'
20+
4. See error
21+
22+
## Expected behavior
23+
24+
- A clear and concise description of what you expected to
25+
happen.
26+
27+
## Screenshots
28+
29+
- If applicable, add screenshots to help explain your problem.
30+
31+
## Desktop (please complete the following information)
32+
33+
- OS: [e.g. iOS]
34+
- Browser [e.g. chrome, safari]
35+
- Version [e.g. 22]
36+
37+
## Mobile (please complete the following information)
38+
39+
- Device: [e.g. iPhone6]
40+
- OS: [e.g. iOS8.1]
41+
- Browser [e.g. stock browser, safari]
42+
- Version [e.g. 22]
43+
44+
## Additional context
45+
46+
- Add any other context about the problem here.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: 'special: community feedback'
6+
assignees: ''
7+
---
8+
9+
## Is your feature request related to a problem? Please describe
10+
11+
- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
## Describe the solution you'd like
14+
15+
- A clear and concise description of what you want to happen.
16+
17+
## Describe alternatives you've considered
18+
19+
- A clear and concise description of any alternative solutions or features you've considered.
20+
21+
## Additional context
22+
23+
- Add any other context or screenshots about the feature request here.

.github/pull_request_template.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
## Description
2+
3+
- A clear and concise description of the changes introduced in this pull request.
4+
5+
## Related Issues
6+
7+
- Closes #ISSUE_NUMBER (if applicable)
8+
9+
## Changes Made
10+
11+
- List the main changes made in this PR:
12+
- [ ] Change 1
13+
- [ ] Change 2
14+
- [ ] Change 3
15+
16+
## Screenshots (if applicable)
17+
18+
- If applicable, add screenshots to help visualize the changes.
19+
20+
## How to Test
21+
22+
- Steps to test the changes:
23+
24+
1. Go to '...'
25+
2. Click on '....'
26+
3. Observe '....'
27+
28+
## Checklist
29+
30+
- [ ] My code follows the project's coding style.
31+
- [ ] I have performed a self-review of my code.
32+
- [ ] I have added necessary tests (if applicable).
33+
- [ ] I have documented my changes (if necessary).
34+
35+
## Additional Context
36+
37+
- Add any other relevant context or notes for reviewers.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: Scan Devcontainer Image
2+
3+
permissions:
4+
actions: read
5+
security-events: write
6+
7+
on:
8+
push:
9+
branches:
10+
- main
11+
- master
12+
pull_request: null
13+
14+
jobs:
15+
scan-devcontainer:
16+
name: Scan Devcontainer Image
17+
18+
uses: <your-username>/<your-repo>/.github/workflows/docker-image-verification.yml@main
19+
with:
20+
image_name: devcontainer
21+
dockerfile_path: ./Dockerfile
22+
context: .devcontainer
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: Reusable Docker Image Build and Scan
2+
3+
permissions:
4+
contents: read
5+
6+
on:
7+
workflow_call:
8+
inputs:
9+
image_name:
10+
description: 'The name of the Docker image'
11+
required: true
12+
type: string
13+
dockerfile_path:
14+
description: 'Path to the Dockerfile'
15+
required: false
16+
type: string
17+
default: './Dockerfile'
18+
context:
19+
description: 'Build context for Docker'
20+
required: false
21+
type: string
22+
default: '.'
23+
24+
jobs:
25+
build-and-scan:
26+
name: Build and Scan ${{ inputs.image_name }}
27+
runs-on: ubuntu-latest
28+
29+
steps:
30+
- name: Checkout repository
31+
uses: actions/checkout@v4
32+
with:
33+
fetch-depth: 0
34+
35+
- name: Set up QEMU
36+
uses: docker/setup-qemu-action@v3
37+
38+
- name: Set up Docker Buildx
39+
uses: docker/setup-buildx-action@v3
40+
41+
- name: Build Docker image and load
42+
uses: docker/build-push-action@v6
43+
with:
44+
context: ${{ inputs.context }}
45+
load: true
46+
tags: ${{ inputs.image_name }}:latest
47+
48+
- name: Scan for vulnerabilities
49+
uses: crazy-max/ghaction-container-scan@v3
50+
with:
51+
image: ${{ inputs.image_name }}:latest
52+
dockerfile: ${{ inputs.dockerfile_path }}
53+
severity_threshold: HIGH

.github/workflows/super-linter.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
name: Lint
3+
4+
permissions:
5+
contents: read
6+
packages: read
7+
statuses: write
8+
9+
on:
10+
push:
11+
branches:
12+
- main
13+
- master
14+
pull_request: null
15+
16+
jobs:
17+
build:
18+
name: Lint
19+
runs-on: ubuntu-latest
20+
21+
steps:
22+
- name: Checkout code
23+
uses: actions/checkout@v4
24+
with:
25+
fetch-depth: 0
26+
27+
- name: Super-linter
28+
uses: super-linter/super-linter@v7
29+
env:
30+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
31+
VALIDATE_ALL_CODEBASE: false
32+
FILTER_REGEX_EXCLUDE: "(.devcontainer/Dockerfile|.github/pull_request_template.md|.github/ISSUE_TEMPLATE/*.md)"

0 commit comments

Comments
 (0)