Skip to content

Commit 5c62a3a

Browse files
Updated backstage scripts and helm charts
1 parent 387407d commit 5c62a3a

File tree

8 files changed

+80
-56
lines changed

8 files changed

+80
-56
lines changed

deployment/kubernetes/backstage/create-backstage.sh

100644100755
-23
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,6 @@
22

33
## The script is currently not usable. The below commands need to be corrected and finalised.
44

5-
# Create backstage namespace in local cluster
6-
kubectl create ns backstage
7-
8-
# Package postgres helm chart and install the same in backstage namespace
9-
helm package deployment/kubernetes/postgres/helm/
10-
helm -n backstage upgrade --install postgres postgres-0.1.0.tgz
11-
125
# Copy latest app-config.yaml to backstage101 folder and dockerfile to packages/backend folder
136
# This step was already completed.
147

@@ -20,19 +13,3 @@ yarn tsc
2013
# Build backstage backend app with the latest app-config.yaml file
2114
cd $CODESPACE_VSCODE_FOLDER/backstage-app/backstage101/packages/backend
2215
yarn build backend --config ../../app-config.yaml
23-
24-
# Build docker image with the latest build backend artefacts
25-
cd $CODESPACE_VSCODE_FOLDER
26-
# docker image build . -f packages/backend/Dockerfile --tag backstage:0.1.0 from backstage101 folder
27-
docker image build backstage-app/backstage101/ -f deployment/kubernetes/backstage/docker/Dockerfile --tag localhost:5001/backstage:0.2.0
28-
29-
# Push the latest docker image to local image registry
30-
docker push localhost:5001/backstage:0.2.0
31-
32-
# Package backstage helm chart and install the same in backstage namespace
33-
helm package deployment/kubernetes/backstage/helm/
34-
helm -n backstage upgrade --install backstage backstage-0.2.0.tgz
35-
36-
# Setup a port-forward from backstage:80 to localhost:8000
37-
kubectl -n backstage port-forward svc/backstage 8000:80
38-
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Passing build tag as the first argument
2+
BUILD_TAG=$1
3+
IMAGE_REG="localhost:5001"
4+
IMAGE_REP="backstage"
5+
6+
# Build docker image with the latest build backend artefacts
7+
cd $CODESPACE_VSCODE_FOLDER
8+
docker image build backstage-app/backstage101/ -f deployment/kubernetes/backstage/docker/Dockerfile --tag $IMAGE_REG/$IMAGE_REP:$BUILD_TAG
9+
10+
# Push the latest docker image to local image registry
11+
docker push $IMAGE_REG/$IMAGE_REP:$BUILD_TAG
12+
13+
# Create backstage namespace in local cluster
14+
# Added as part of helm arguments, hence not required
15+
# kubectl create ns backstage
16+
17+
# Package backstage helm chart and install the same in backstage namespace
18+
helm package deployment/kubernetes/backstage/helm/ --version $BUILD_TAG
19+
helm -n backstage upgrade --install backstage backstage-$BUILD_TAG.tgz --set image.tag=$BUILD_TAG --create-namespace --wait
20+
21+
# Setup a port-forward from backstage:80 to localhost:8000
22+
kubectl -n backstage port-forward svc/backstage 8000:80

deployment/kubernetes/backstage/helm/templates/backstage-secret.yaml

-9
This file was deleted.

deployment/kubernetes/backstage/helm/templates/backstage-service.yaml

-13
This file was deleted.

deployment/kubernetes/backstage/helm/templates/deployment.yaml

+11-11
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,31 @@
11
# kubernetes/backstage.yaml
2-
apiVersion: apps/v1
2+
apiVersion: {{ .Values.deployment.apiVersion }}
33
kind: Deployment
44
metadata:
5-
name: backstage
6-
namespace: backstage
5+
name: {{ .Values.deployment.name }}
6+
namespace: {{ .Values.namespace }}
77
spec:
8-
replicas: 1
8+
replicas: {{ .Values.deployment.replicas }}
99
selector:
1010
matchLabels:
11-
app: backstage
11+
app: {{ .Values.deployment.name }}
1212
template:
1313
metadata:
1414
labels:
15-
app: backstage
15+
app: {{ .Values.deployment.name }}
1616
spec:
1717
containers:
18-
- name: backstage
19-
image: localhost:5001/backstage:0.2.0
18+
- name: {{ .Values.container.name }}
19+
image: {{ .Values.image.registry }}/{{ .Values.image.repository }}:{{ .Values.image.tag }}
2020
imagePullPolicy: IfNotPresent
2121
ports:
2222
- name: http
23-
containerPort: 7007
23+
containerPort: {{ .Values.container.port }}
2424
envFrom:
2525
- secretRef:
26-
name: postgres-secrets
26+
name: {{ .Values.secrets.postgres }}
2727
- secretRef:
28-
name: backstage-secrets
28+
name: {{ .Values.secrets.backstage }}
2929
# Uncomment if health checks are enabled in your app:
3030
# https://backstage.io/docs/plugins/observability#health-checks
3131
# readinessProbe:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# kubernetes/backstage-secrets.yaml
2+
apiVersion: v1
3+
kind: Secret
4+
metadata:
5+
name: {{ .Values.secrets.backstage }}
6+
namespace: {{ .Values.namespace }}
7+
type: Opaque
8+
stringData:
9+
GITHUB_TOKEN: {{ .Values.secrets.ghToken }}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# kubernetes/backstage-service.yaml
2+
apiVersion: {{ .Values.service.apiVersion }}
3+
kind: Service
4+
metadata:
5+
name: {{ .Values.service.name }}
6+
namespace: {{ .Values.namespace }}
7+
spec:
8+
selector:
9+
app: {{ .Values.deployment.name }}
10+
ports:
11+
- name: http
12+
port: {{ .Values.service.port }}
13+
targetPort: {{ .Values.service.targetPort }}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
namespace: 'backstage'
2+
service:
3+
apiVersion: 'v1'
4+
name: 'backstage'
5+
port: '80'
6+
targetPort: 'http'
7+
8+
deployment:
9+
apiVersion: 'apps/v1'
10+
name: 'backstage'
11+
replicas: '1'
12+
13+
image:
14+
registry: 'localhost:5001'
15+
repository: 'backstage'
16+
tag: '0.1.0'
17+
18+
container:
19+
name: 'backstage'
20+
port: '7007'
21+
22+
secrets:
23+
backstage: 'backstage-secrets'
24+
postgres: 'postgres-secrets'
25+
ghToken: 'dummy'

0 commit comments

Comments
 (0)