Skip to content

Commit 94bba0e

Browse files
committed
Initial commit for the devbox of terminus
0 parents  commit 94bba0e

File tree

227 files changed

+60966
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

227 files changed

+60966
-0
lines changed

.github/workflows/build-server.yaml

+49
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: Build Server
2+
3+
on:
4+
workflow_dispatch:
5+
6+
push:
7+
branches:
8+
- "main"
9+
tags:
10+
- "v*"
11+
12+
jobs:
13+
update_dockerhub:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout the repo
17+
uses: actions/checkout@v3
18+
- name: Log in to Docker Hub
19+
uses: docker/login-action@v2
20+
with:
21+
username: ${{ secrets.DOCKERHUB_USERNAME }}
22+
password: ${{ secrets.DOCKERHUB_PASS }}
23+
24+
- name: Download release check-chart
25+
uses: dsaltares/fetch-gh-release-asset@master
26+
with:
27+
file: check-chart_0.0.1_linux_amd64.tar.gz
28+
repo: beclab/check-chart
29+
target: check-chart.tar.gz
30+
version: tags/v0.0.1
31+
- name: get latest tag
32+
uses: "WyriHaximus/github-action-get-previous-tag@v1"
33+
id: get-latest-tag
34+
with:
35+
fallback: latest
36+
37+
- name: unpack check-chart
38+
run: |
39+
tar zxvf check-chart.tar.gz
40+
pwd
41+
ls
42+
43+
- name: Build and push Docker image
44+
uses: docker/build-push-action@v3
45+
with:
46+
context: .
47+
push: true
48+
tags: beclab/devbox-server:${{ steps.get-latest-tag.outputs.tag }}
49+
file: Dockerfile.server

.github/workflows/build.yaml

+54
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: Build frontend
2+
on:
3+
workflow_dispatch:
4+
5+
push:
6+
branches:
7+
- "main"
8+
tags:
9+
- "v*"
10+
jobs:
11+
build-main:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Check out the repo
15+
uses: actions/checkout@v3
16+
- name: Set up QEMU
17+
uses: docker/setup-qemu-action@v1
18+
- name: Set up Docker Buildx
19+
uses: docker/setup-buildx-action@v2
20+
- name: Login to GitHub Container Registry
21+
uses: docker/login-action@v2
22+
with:
23+
username: ${{ secrets.DOCKERHUB_USERNAME }}
24+
password: ${{ secrets.DOCKERHUB_PASS }}
25+
- name: get latest tag
26+
uses: "WyriHaximus/github-action-get-previous-tag@v1"
27+
id: get-latest-tag
28+
with:
29+
fallback: latest
30+
- name: Setup Node
31+
uses: actions/setup-node@v1
32+
with:
33+
node-version: "16.18"
34+
- name: Cache
35+
uses: actions/cache@v1
36+
with:
37+
path: ~/.npm
38+
key: ${{ runner.os }}-node-${{ hashFiles('**/packagge-lock.json')}}
39+
restore-keys: |
40+
${{ runner.os }}-node-
41+
- name: Bootstrap
42+
run: |
43+
npm install
44+
- run: npm i -g @quasar/cli
45+
- run: npm install
46+
- name: Build
47+
run: npm run app:build
48+
- name: Build and push Docker image
49+
uses: docker/build-push-action@v2
50+
with:
51+
context: .
52+
push: true
53+
tags: beclab/devbox:${{ steps.get-latest-tag.outputs.tag }}
54+
file: Dockerfile

.github/workflows/release-dc-go.yaml

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Publish to Dockerhub ( GO )
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
tags:
7+
description: 'Release Tags'
8+
9+
jobs:
10+
update_dockerhub:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Check out the repo
14+
uses: actions/checkout@v3
15+
16+
- name: Log in to Docker Hub
17+
uses: docker/login-action@v2
18+
with:
19+
username: ${{ secrets.DOCKERHUB_USERNAME }}
20+
password: ${{ secrets.DOCKERHUB_PASS }}
21+
22+
- name: Build and push Docker image
23+
uses: docker/build-push-action@v3
24+
with:
25+
push: true
26+
tags: beclab/go-dev:${{ github.event.inputs.tags }}
27+
file: containers/Dockerfile.dev.go
+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Publish to Dockerhub ( NodeJS )
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
tags:
7+
description: 'Release Tags'
8+
9+
jobs:
10+
update_dockerhub:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Check out the repo
14+
uses: actions/checkout@v3
15+
16+
- name: Log in to Docker Hub
17+
uses: docker/login-action@v2
18+
with:
19+
username: ${{ secrets.DOCKERHUB_USERNAME }}
20+
password: ${{ secrets.DOCKERHUB_PASS }}
21+
22+
- name: Build and push Docker image
23+
uses: docker/build-push-action@v3
24+
with:
25+
push: true
26+
tags: beclab/node-ts-dev:${{ github.event.inputs.tags }}
27+
file: containers/Dockerfile.dev.node-ts
+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Publish to Dockerhub ( Python )
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
tags:
7+
description: 'Release Tags'
8+
9+
jobs:
10+
update_dockerhub:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Check out the repo
14+
uses: actions/checkout@v3
15+
16+
- name: Log in to Docker Hub
17+
uses: docker/login-action@v2
18+
with:
19+
username: ${{ secrets.DOCKERHUB_USERNAME }}
20+
password: ${{ secrets.DOCKERHUB_PASS }}
21+
22+
- name: Build and push Docker image
23+
uses: docker/build-push-action@v3
24+
with:
25+
push: true
26+
tags: beclab/python-dev:${{ github.event.inputs.tags }}
27+
file: containers/Dockerfile.dev.python

.github/workflows/release-server.yaml

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Publish to Dockerhub ( server )
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
tags:
7+
description: 'Release Tags'
8+
9+
jobs:
10+
update_dockerhub:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Check out the repo
14+
uses: actions/checkout@v3
15+
16+
- name: Log in to Docker Hub
17+
uses: docker/login-action@v2
18+
with:
19+
username: ${{ secrets.DOCKERHUB_USERNAME }}
20+
password: ${{ secrets.DOCKERHUB_PASS }}
21+
22+
- name: Download release check-chart
23+
uses: dsaltares/fetch-gh-release-asset@master
24+
with:
25+
file: check-chart_0.0.1_linux_amd64.tar.gz
26+
repo: beclab/check-chart
27+
target: check-chart.tar.gz
28+
version: tags/v0.0.1
29+
token: ${{ secrets.DOWNLOAD_TOKEN }}
30+
31+
- name: unpack check-chart
32+
run: |
33+
tar zxvf check-chart.tar.gz
34+
35+
- name: Build and push Docker image
36+
uses: docker/build-push-action@v3
37+
with:
38+
push: true
39+
context: .
40+
tags: beclab/devbox-server:${{ github.event.inputs.tags }}
41+
file: Dockerfile.server

.github/workflows/release.yaml

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: Publish to Dockerhub ( frontend )
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
tags:
7+
description: 'Release Tags'
8+
9+
jobs:
10+
update_dockerhub:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Check out the repo
14+
uses: actions/checkout@v3
15+
16+
- name: Log in to Docker Hub
17+
uses: docker/login-action@v2
18+
with:
19+
username: ${{ secrets.DOCKERHUB_USERNAME }}
20+
password: ${{ secrets.DOCKERHUB_PASS }}
21+
22+
- name: Setup Node
23+
uses: actions/setup-node@v1
24+
with:
25+
node-version: '16.18'
26+
- name: Cache
27+
uses: actions/cache@v1
28+
with:
29+
path: ~/.npm
30+
key: ${{ runner.os }}-node-${{ hashFiles('**/packagge-lock.json')}}
31+
restore-keys: |
32+
${{ runner.os }}-node-
33+
- name: Bootstrap
34+
run: |
35+
npm install
36+
- run: npm i -g @quasar/cli
37+
- run: npm install
38+
- name: Build
39+
run: npm run app:build
40+
- name: Build and push Docker image
41+
uses: docker/build-push-action@v3
42+
with:
43+
context: .
44+
push: true
45+
tags: beclab/devbox:${{ github.event.inputs.tags }}
46+
file: Dockerfile

.gitignore

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# If you prefer the allow list template instead of the deny list, see community template:
2+
# https://github.com/github/gitignore/blob/main/community/Golang/Go.AllowList.gitignore
3+
#
4+
# Binaries for programs and plugins
5+
*.exe
6+
*.exe~
7+
*.dll
8+
*.so
9+
*.dylib
10+
11+
# Test binary, built with `go test -c`
12+
*.test
13+
14+
# Output of the go coverage tool, specifically when used with LiteIDE
15+
.idea
16+
*.out
17+
18+
# Dependency directories (remove the comment below to include it)
19+
# vendor/
20+
21+
# Go workspace file
22+
go.work
23+
tmp
24+
devbox
25+
26+
.DS_Store
27+
.thumbs.db
28+
node_modules
29+
output
30+
31+
.history
32+
packages/**/server/web-box
33+
packages/**/db/
34+
packages/**/cmd
35+
.env
36+
node_modules
37+
packages/**/dist/
38+
.quasar
39+
.lintcache
40+
.eslintcache
41+
packages/**/data/
42+
43+
npm-debug.log*
44+
yarn-debug.log*
45+
yarn-error.log*
46+
47+
web/.vscode
48+
packages/web/pkg/sumdb/sum.golang.org

.npmrc

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
save-exact=true

.nvmrc

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
v16.13.1

.vscode/extensions.json

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"recommendations": [
3+
"dbaeumer.vscode-eslint",
4+
"esbenp.prettier-vscode",
5+
"vue.vscode-typescript-vue-plugin",
6+
"vue.volar"
7+
]
8+
}

.vscode/settings.json

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"editor.bracketPairColorization.enabled": true,
3+
"editor.guides.bracketPairs": true,
4+
"editor.formatOnSave": true,
5+
"editor.defaultFormatter": "esbenp.prettier-vscode",
6+
"editor.codeActionsOnSave": ["source.fixAll.eslint"],
7+
"eslint.validate": ["javascript", "javascriptreact", "typescript", "vue"],
8+
"typescript.tsdk": "node_modules/typescript/lib",
9+
"[vue]": {
10+
"editor.defaultFormatter": "esbenp.prettier-vscode"
11+
}
12+
}

Dockerfile

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
FROM nginx:stable-alpine
2+
3+
COPY packages/web/dist/spa /app
4+
5+
RUN apk --no-cache add nginx
6+
7+
RUN echo ' \
8+
server { \
9+
listen 80 default_server; \
10+
root /app; \
11+
\
12+
location / { \
13+
add_header Cache-Control "no-store"; \
14+
try_files $uri $uri/index.html /index.html; \
15+
} \
16+
\
17+
location /api/ { \
18+
proxy_pass http://devbox-server:8080; \
19+
proxy_set_header Host $http_host; \
20+
proxy_set_header X-real-ip $remote_addr; \
21+
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; \
22+
proxy_http_version 1.1; \
23+
proxy_set_header Upgrade $http_upgrade; \
24+
proxy_set_header Connection $http_connection; \
25+
proxy_set_header Accept-Encoding gzip; \
26+
proxy_read_timeout 180; \
27+
} \
28+
\
29+
}' > /etc/nginx/conf.d/default.conf
30+
31+
RUN ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log
32+
33+
EXPOSE 80
34+
35+
CMD [ "nginx", "-g", "daemon off;" ]

0 commit comments

Comments
 (0)