Skip to content

Commit c1f9a54

Browse files
committed
feat: add new cicd
1 parent 4a26da7 commit c1f9a54

File tree

7 files changed

+122
-46
lines changed

7 files changed

+122
-46
lines changed

.circleci/config.yml

-46
This file was deleted.

.github/workflows/build.yml

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: test
2+
on:
3+
push:
4+
branches: [main]
5+
jobs:
6+
build:
7+
if: ${{ startsWith(github.ref, 'refs/heads/deployment/') || github.ref == 'refs/heads/main' }}
8+
runs-on: [self-hosted]
9+
steps:
10+
- name: chceck code
11+
uses: actions/checkout@v2
12+
13+
- name: Get version
14+
id: version
15+
run: |
16+
if [[ -n "$GITHUB_REF" && "$GITHUB_REF" == "refs/tags/"* ]]; then
17+
echo "tag version"
18+
echo "::set-output name=version::${GITHUB_REF/refs\/tags\//}"
19+
else
20+
echo "commit version"
21+
echo "::set-output name=version::${{ github.sha }}"
22+
fi
23+
24+
- name: Build and push
25+
run: |
26+
docker login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_TOKEN }}
27+
docker build -t gitdatateam/pando-network:${{ steps.version.outputs.version }} .
28+
docker push gitdatateam/pando-network:${{ steps.version.outputs.version }}
29+
30+
docker tag gitdatateam/pando-network:${{ steps.version.outputs.version }} gitdatateam/pando-network:latest
31+
docker push gitdatateam/pando-network:latest
32+
33+
- name: Deploy
34+
uses: WyriHaximus/github-action-helm3@v3
35+
with:
36+
exec: helm upgrade pando-network --install ./chart --namespace website --set-string tag=latest
37+
kubeconfig: ${{ secrets.KUBECONTENT }}
38+
overrule_existing_kubeconfig: "true"

chart/Chart.yaml

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
apiVersion: v2
2+
name: pando-network
3+
description: Install pando.network to provide pando official web page.
4+
version: 1.0.0
5+
kubeVersion: < 1.28.0-0
6+
home: https://pando.network/
7+
keywords:
8+
- pando-network
9+
sources:
10+
- https://github.com/pando-project/pando-web
11+
maintainers:
12+
- name: pando team

chart/templates/deployment.yaml

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: pando-network-deployment
5+
labels:
6+
apptype: pando-network
7+
spec:
8+
replicas: {{ .Values.replicas}}
9+
selector:
10+
matchLabels:
11+
app: pando-network
12+
template:
13+
metadata:
14+
labels:
15+
app: pando-network
16+
apptype: pando-network
17+
date: "{{ now | unixEpoch }}"
18+
spec:
19+
containers:
20+
- name: pando-network
21+
image: gitdatateam/pando-network:{{ .Values.tag }}
22+
imagePullPolicy: Always
23+
ports:
24+
- containerPort: 80

chart/templates/ingress.yaml

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
apiVersion: networking.k8s.io/v1
2+
kind: Ingress
3+
metadata:
4+
name: pando-network
5+
annotations:
6+
meta.helm.sh/release-name: pando-network
7+
nginx.ingress.kubernetes.io/rewrite-target: /
8+
nginx.ingress.kubernetes.io/proxy-connect-timeout: "30"
9+
nginx.ingress.kubernetes.io/proxy-read-timeout: "1800"
10+
nginx.ingress.kubernetes.io/proxy-send-timeout: "1800"
11+
labels:
12+
apptype: pando-network
13+
app.kubernetes.io/managed-by: Helm
14+
heritage: Helm
15+
release: pando-network
16+
spec:
17+
ingressClassName: {{.Values.ingress_name}}
18+
rules:
19+
- host: pando-network
20+
http:
21+
paths:
22+
- path: /
23+
pathType: Prefix
24+
backend:
25+
service:
26+
name: pando-network-service
27+
port:
28+
number: 80

chart/templates/service.yaml

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: pando-network-service
5+
labels:
6+
apptype: pando-network
7+
spec:
8+
type: ClusterIP
9+
selector:
10+
app: pando-network
11+
ports:
12+
- protocol: TCP
13+
port: 80
14+
targetPort: 80

chart/values.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Additional Trusted CAs.
2+
# Enable this flag and add your CA certs as a secret named tls-ca-additional in the namespace.
3+
# See README.md for details.
4+
replicas: 1
5+
ingress_name: nginx
6+
tag: latest

0 commit comments

Comments
 (0)