Skip to content

Commit aea4b64

Browse files
authored
Prepare for next release (#293)
- Update Helm Chart with option for PVCs - Add GH action to build an image and push to GHCR
1 parent cb34af0 commit aea4b64

File tree

12 files changed

+167
-44
lines changed

12 files changed

+167
-44
lines changed

.github/workflows/build-push.yaml

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
name: Parseable Docker build and push
2+
3+
on:
4+
push:
5+
branches: ['main']
6+
paths-ignore:
7+
- 'docs/**'
8+
- 'helm/**'
9+
- 'assets/**'
10+
- '**.md'
11+
12+
env:
13+
REGISTRY: ghcr.io
14+
IMAGE_NAME: ${{ github.repository }}
15+
16+
jobs:
17+
18+
# docker-compose-test:
19+
# name: Docker Compose integration tests
20+
# runs-on: ubuntu-latest
21+
# steps:
22+
# - name: Checkout
23+
# uses: actions/checkout@v3
24+
# - name: Start compose
25+
# run: docker-compose -f "docker-compose.yaml" up --build
26+
# - name: Stop compose
27+
# if: always()
28+
# run: docker-compose -f "docker-compose.yaml" down
29+
30+
# docker-build:
31+
# name: Docker build
32+
# runs-on: ubuntu-latest
33+
# steps:
34+
# - name: Checkout
35+
# uses: actions/checkout@v3
36+
# - name: Build Docker image
37+
# run: docker build .
38+
39+
build-and-push-image:
40+
name: Build and push Docker image to GitHub Container Registry
41+
runs-on: ubuntu-latest
42+
permissions:
43+
contents: read
44+
packages: write
45+
steps:
46+
- name: Checkout repository
47+
uses: actions/checkout@v3
48+
- name: Log in to the Container registry
49+
uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9
50+
with:
51+
registry: ${{ env.REGISTRY }}
52+
username: ${{ github.actor }}
53+
password: ${{ secrets.GITHUB_TOKEN }}
54+
- name: Extract metadata (tags, labels) for Docker
55+
id: meta
56+
uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38
57+
with:
58+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
59+
- name: Build and push Docker image
60+
uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc
61+
with:
62+
context: .
63+
push: true
64+
tags: ${{ steps.meta.outputs.tags }}
65+
labels: ${{ steps.meta.outputs.labels }}

.github/workflows/build.yaml renamed to .github/workflows/ci.yaml

Lines changed: 5 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
name: Parseable CI Workflow
2+
13
on:
24
pull_request:
35
paths-ignore:
@@ -6,31 +8,12 @@ on:
68
- 'assets/**'
79
- '**.md'
810

9-
name: Parseable CI Workflow
11+
env:
12+
REGISTRY: ghcr.io
13+
IMAGE_NAME: ${{ github.repository }}
1014

1115
jobs:
1216

13-
# docker-compose-test:
14-
# name: Docker Compose integration tests
15-
# runs-on: ubuntu-latest
16-
# steps:
17-
# - name: Checkout
18-
# uses: actions/checkout@v3
19-
# - name: Start compose
20-
# run: docker-compose -f "docker-compose.yaml" up --build
21-
# - name: Stop compose
22-
# if: always()
23-
# run: docker-compose -f "docker-compose.yaml" down
24-
25-
docker-build:
26-
name: Docker build
27-
runs-on: ubuntu-latest
28-
steps:
29-
- name: Checkout
30-
uses: actions/checkout@v3
31-
- name: Build Docker image
32-
run: docker build .
33-
3417
unit-tests:
3518
name: Unit tests
3619
runs-on: ubuntu-latest

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

helm-releases/collector-0.0.1.tgz

0 Bytes
Binary file not shown.

helm-releases/parseable-0.2.2.tgz

2.46 KB
Binary file not shown.

helm/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ apiVersion: v2
22
name: parseable
33
description: Helm chart for Parseable Server
44
type: application
5-
version: 0.2.1
6-
AppVersion: "v0.2.1"
5+
version: 0.2.2
6+
AppVersion: "v0.2.2"

helm/templates/data-pvc.yaml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{{- if .Values.parseable.persistence.data.enabled }}
2+
apiVersion: v1
3+
kind: PersistentVolumeClaim
4+
metadata:
5+
name: {{ include "parseable.fullname" . }}-data-pvc
6+
labels:
7+
{{- include "parseable.labels" . | nindent 4 }}
8+
spec:
9+
accessModes:
10+
- {{ .Values.parseable.persistence.data.accessMode | quote }}
11+
resources:
12+
requests:
13+
storage: {{ .Values.parseable.persistence.data.size | quote }}
14+
{{- if .Values.parseable.persistence.storageClass }}
15+
storageClassName: "{{ .Values.parseable.persistence.storageClass }}"
16+
{{- else }}
17+
storageClassName: ""
18+
{{- end }}
19+
{{- if .Values.parseable.persistence.VolumeName }}
20+
volumeName: "{{ .Values.parseable.persistence.VolumeName }}"
21+
{{- end }}
22+
{{- end }}

helm/templates/deployment.yaml

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,22 @@ spec:
6464
- mountPath: "/parseable/staging"
6565
name: stage-volume
6666
volumes:
67-
- name: data-volume
68-
emptyDir: {}
67+
{{- if .Values.parseable.persistence.staging.enabled }}
6968
- name: stage-volume
69+
persistentVolumeClaim:
70+
claimName: {{ include "parseable.fullname" . }}-staging-pvc
71+
{{- else }}
72+
- name: stage-volume
73+
emptyDir: {}
74+
{{- end }}
75+
{{- if .Values.parseable.persistence.data.enabled }}
76+
- name: data-volume
77+
persistentVolumeClaim:
78+
claimName: {{ include "parseable.fullname" . }}-data-pvc
79+
{{- else }}
80+
- name: data-volume
7081
emptyDir: {}
82+
{{- end }}
7183
{{- with .Values.parseable.nodeSelector }}
7284
nodeSelector:
7385
{{- toYaml . | nindent 8 }}

helm/templates/stage-pvc.yaml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{{- if .Values.parseable.persistence.staging.enabled }}
2+
apiVersion: v1
3+
kind: PersistentVolumeClaim
4+
metadata:
5+
name: {{ include "parseable.fullname" . }}-staging-pvc
6+
labels:
7+
{{- include "parseable.labels" . | nindent 4 }}
8+
spec:
9+
accessModes:
10+
- {{ .Values.parseable.persistence.staging.accessMode | quote }}
11+
resources:
12+
requests:
13+
storage: {{ .Values.parseable.persistence.staging.size | quote }}
14+
{{- if .Values.parseable.persistence.storageClass }}
15+
storageClassName: "{{ .Values.parseable.persistence.storageClass }}"
16+
{{- else }}
17+
storageClassName: ""
18+
{{- end }}
19+
{{- if .Values.parseable.persistence.VolumeName }}
20+
volumeName: "{{ .Values.parseable.persistence.VolumeName }}"
21+
{{- end }}
22+
{{- end }}

helm/values.yaml

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,20 @@
11
parseable:
22
image:
33
repository: parseable/parseable
4-
tag: v0.2.1
4+
tag: v0.2.2
55
pullPolicy: Always
66
local: false
7+
persistence:
8+
staging:
9+
enabled: false
10+
storageClass: ""
11+
accessMode: ReadWriteOnce
12+
size: 1Gi
13+
data:
14+
enabled: false
15+
storageClass: ""
16+
accessMode: ReadWriteOnce
17+
size: 1Gi
718
secrets:
819
- type: env
920
name: parseable-env-secret
@@ -24,8 +35,6 @@ parseable:
2435
- s3.bucket
2536
- s3.region
2637
replicaCount: 1
27-
env:
28-
RUST_LOG: "info"
2938
nameOverride: ""
3039
fullnameOverride: ""
3140
serviceAccount:

0 commit comments

Comments
 (0)