diff --git a/.github/workflows/build-push.yaml b/.github/workflows/build-push.yaml new file mode 100644 index 000000000..8aed27c58 --- /dev/null +++ b/.github/workflows/build-push.yaml @@ -0,0 +1,65 @@ +name: Parseable Docker build and push + +on: + push: + branches: ['main'] + paths-ignore: + - 'docs/**' + - 'helm/**' + - 'assets/**' + - '**.md' + +env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + +jobs: + + # docker-compose-test: + # name: Docker Compose integration tests + # runs-on: ubuntu-latest + # steps: + # - name: Checkout + # uses: actions/checkout@v3 + # - name: Start compose + # run: docker-compose -f "docker-compose.yaml" up --build + # - name: Stop compose + # if: always() + # run: docker-compose -f "docker-compose.yaml" down + + # docker-build: + # name: Docker build + # runs-on: ubuntu-latest + # steps: + # - name: Checkout + # uses: actions/checkout@v3 + # - name: Build Docker image + # run: docker build . + + build-and-push-image: + name: Build and push Docker image to GitHub Container Registry + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + steps: + - name: Checkout repository + uses: actions/checkout@v3 + - name: Log in to the Container registry + uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + - name: Build and push Docker image + uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} diff --git a/.github/workflows/build.yaml b/.github/workflows/ci.yaml similarity index 68% rename from .github/workflows/build.yaml rename to .github/workflows/ci.yaml index d9106d3e3..73c2fa254 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/ci.yaml @@ -1,3 +1,5 @@ +name: Parseable CI Workflow + on: pull_request: paths-ignore: @@ -6,31 +8,12 @@ on: - 'assets/**' - '**.md' -name: Parseable CI Workflow +env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} jobs: - # docker-compose-test: - # name: Docker Compose integration tests - # runs-on: ubuntu-latest - # steps: - # - name: Checkout - # uses: actions/checkout@v3 - # - name: Start compose - # run: docker-compose -f "docker-compose.yaml" up --build - # - name: Stop compose - # if: always() - # run: docker-compose -f "docker-compose.yaml" down - - docker-build: - name: Docker build - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v3 - - name: Build Docker image - run: docker build . - unit-tests: name: Unit tests runs-on: ubuntu-latest diff --git a/Cargo.lock b/Cargo.lock index 8690c0d3b..7e2a141cf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2770,7 +2770,7 @@ dependencies = [ [[package]] name = "parseable" -version = "0.2.1" +version = "0.2.2" dependencies = [ "actix-cors", "actix-files", diff --git a/helm-releases/collector-0.0.1.tgz b/helm-releases/collector-0.0.1.tgz index bbf2c0f06..842f09c32 100644 Binary files a/helm-releases/collector-0.0.1.tgz and b/helm-releases/collector-0.0.1.tgz differ diff --git a/helm-releases/parseable-0.2.2.tgz b/helm-releases/parseable-0.2.2.tgz new file mode 100644 index 000000000..45976814f Binary files /dev/null and b/helm-releases/parseable-0.2.2.tgz differ diff --git a/helm/Chart.yaml b/helm/Chart.yaml index 6419c8b92..9939a4d7e 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -2,5 +2,5 @@ apiVersion: v2 name: parseable description: Helm chart for Parseable Server type: application -version: 0.2.1 -AppVersion: "v0.2.1" +version: 0.2.2 +AppVersion: "v0.2.2" diff --git a/helm/templates/data-pvc.yaml b/helm/templates/data-pvc.yaml new file mode 100644 index 000000000..57feb73bc --- /dev/null +++ b/helm/templates/data-pvc.yaml @@ -0,0 +1,22 @@ +{{- if .Values.parseable.persistence.data.enabled }} +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: {{ include "parseable.fullname" . }}-data-pvc + labels: + {{- include "parseable.labels" . | nindent 4 }} +spec: + accessModes: + - {{ .Values.parseable.persistence.data.accessMode | quote }} + resources: + requests: + storage: {{ .Values.parseable.persistence.data.size | quote }} + {{- if .Values.parseable.persistence.storageClass }} + storageClassName: "{{ .Values.parseable.persistence.storageClass }}" + {{- else }} + storageClassName: "" + {{- end }} + {{- if .Values.parseable.persistence.VolumeName }} + volumeName: "{{ .Values.parseable.persistence.VolumeName }}" + {{- end }} +{{- end }} diff --git a/helm/templates/deployment.yaml b/helm/templates/deployment.yaml index c1aa5a1b6..7bc043e62 100644 --- a/helm/templates/deployment.yaml +++ b/helm/templates/deployment.yaml @@ -64,10 +64,22 @@ spec: - mountPath: "/parseable/staging" name: stage-volume volumes: - - name: data-volume - emptyDir: {} + {{- if .Values.parseable.persistence.staging.enabled }} - name: stage-volume + persistentVolumeClaim: + claimName: {{ include "parseable.fullname" . }}-staging-pvc + {{- else }} + - name: stage-volume + emptyDir: {} + {{- end }} + {{- if .Values.parseable.persistence.data.enabled }} + - name: data-volume + persistentVolumeClaim: + claimName: {{ include "parseable.fullname" . }}-data-pvc + {{- else }} + - name: data-volume emptyDir: {} + {{- end }} {{- with .Values.parseable.nodeSelector }} nodeSelector: {{- toYaml . | nindent 8 }} diff --git a/helm/templates/stage-pvc.yaml b/helm/templates/stage-pvc.yaml new file mode 100644 index 000000000..865317988 --- /dev/null +++ b/helm/templates/stage-pvc.yaml @@ -0,0 +1,22 @@ +{{- if .Values.parseable.persistence.staging.enabled }} +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: {{ include "parseable.fullname" . }}-staging-pvc + labels: + {{- include "parseable.labels" . | nindent 4 }} +spec: + accessModes: + - {{ .Values.parseable.persistence.staging.accessMode | quote }} + resources: + requests: + storage: {{ .Values.parseable.persistence.staging.size | quote }} + {{- if .Values.parseable.persistence.storageClass }} + storageClassName: "{{ .Values.parseable.persistence.storageClass }}" + {{- else }} + storageClassName: "" + {{- end }} + {{- if .Values.parseable.persistence.VolumeName }} + volumeName: "{{ .Values.parseable.persistence.VolumeName }}" + {{- end }} +{{- end }} diff --git a/helm/values.yaml b/helm/values.yaml index 314fed055..21280e357 100644 --- a/helm/values.yaml +++ b/helm/values.yaml @@ -1,9 +1,20 @@ parseable: image: repository: parseable/parseable - tag: v0.2.1 + tag: v0.2.2 pullPolicy: Always local: false + persistence: + staging: + enabled: false + storageClass: "" + accessMode: ReadWriteOnce + size: 1Gi + data: + enabled: false + storageClass: "" + accessMode: ReadWriteOnce + size: 1Gi secrets: - type: env name: parseable-env-secret @@ -24,8 +35,6 @@ parseable: - s3.bucket - s3.region replicaCount: 1 - env: - RUST_LOG: "info" nameOverride: "" fullnameOverride: "" serviceAccount: diff --git a/index.yaml b/index.yaml index a7b5a4610..27fada368 100644 --- a/index.yaml +++ b/index.yaml @@ -3,18 +3,28 @@ entries: collector: - apiVersion: v2 appVersion: 4769fbf - created: "2023-02-10T11:57:57.740916+05:30" + created: "2023-02-17T18:24:43.745309+05:30" description: Helm chart for Parseable Collector - digest: 6d202987fce6705a20c4cb37a5021c80b56cb1cd7291093e8489fc1d9901b160 + digest: 9fde52a6034604b26a9420206becf9ae1a8552d33a3de5e1786e10a61bd76972 name: collector type: application urls: - https://charts.parseable.io/helm-releases/collector-0.0.1.tgz version: 0.0.1 parseable: + - apiVersion: v2 + appVersion: v0.2.2 + created: "2023-02-17T18:24:43.755647+05:30" + description: Helm chart for Parseable Server + digest: 52c0714b402ed4fa906ebc22a1549cf2f4de3612886c63b68621f938d3f8dc3b + name: parseable + type: application + urls: + - https://charts.parseable.io/helm-releases/parseable-0.2.2.tgz + version: 0.2.2 - apiVersion: v2 appVersion: v0.2.1 - created: "2023-02-10T11:57:57.750638+05:30" + created: "2023-02-17T18:24:43.75519+05:30" description: Helm chart for Parseable Server digest: 84826fcd1b4c579f301569f43b0309c07e8082bad76f5cdd25f86e86ca2e8192 name: parseable @@ -24,7 +34,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: v0.2.0 - created: "2023-02-10T11:57:57.750228+05:30" + created: "2023-02-17T18:24:43.75438+05:30" description: Helm chart for Parseable Server digest: 7a759f7f9809f3935cba685e904c021a0b645f217f4e45b9be185900c467edff name: parseable @@ -34,7 +44,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: v0.1.1 - created: "2023-02-10T11:57:57.749321+05:30" + created: "2023-02-17T18:24:43.753455+05:30" description: Helm chart for Parseable Server digest: 37993cf392f662ec7b1fbfc9a2ba00ec906d98723e38f3c91ff1daca97c3d0b3 name: parseable @@ -44,7 +54,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: v0.1.0 - created: "2023-02-10T11:57:57.748389+05:30" + created: "2023-02-17T18:24:43.752452+05:30" description: Helm chart for Parseable Server digest: 1d580d072af8d6b1ebcbfee31c2e16c907d08db754780f913b5f0032b403789b name: parseable @@ -54,7 +64,7 @@ entries: version: 0.1.0 - apiVersion: v2 appVersion: v0.0.8 - created: "2023-02-10T11:57:57.747429+05:30" + created: "2023-02-17T18:24:43.75145+05:30" description: Helm chart for Parseable Server digest: c805254ffa634f96ecec448bcfff9973339aa9487dd8199b21b17b79a4de9345 name: parseable @@ -64,7 +74,7 @@ entries: version: 0.0.8 - apiVersion: v2 appVersion: v0.0.7 - created: "2023-02-10T11:57:57.746429+05:30" + created: "2023-02-17T18:24:43.750504+05:30" description: Helm chart for Parseable Server digest: c591f617ed1fe820bb2c72a4c976a78126f1d1095d552daa07c4700f46c4708a name: parseable @@ -74,7 +84,7 @@ entries: version: 0.0.7 - apiVersion: v2 appVersion: v0.0.6 - created: "2023-02-10T11:57:57.745361+05:30" + created: "2023-02-17T18:24:43.749584+05:30" description: Helm chart for Parseable Server digest: f9ae56a6fcd6a59e7bee0436200ddbedeb74ade6073deb435b8fcbaf08dda795 name: parseable @@ -84,7 +94,7 @@ entries: version: 0.0.6 - apiVersion: v2 appVersion: v0.0.5 - created: "2023-02-10T11:57:57.744146+05:30" + created: "2023-02-17T18:24:43.748674+05:30" description: Helm chart for Parseable Server digest: 4d6b08a064fba36e16feeb820b77e1e8e60fb6de48dbf7ec8410d03d10c26ad0 name: parseable @@ -94,7 +104,7 @@ entries: version: 0.0.5 - apiVersion: v2 appVersion: v0.0.2 - created: "2023-02-10T11:57:57.743255+05:30" + created: "2023-02-17T18:24:43.747711+05:30" description: Helm chart for Parseable Server digest: 38a0a3e4c498afbbcc76ebfcb9cb598fa2ca843a53cc93b3cb4f135b85c10844 name: parseable @@ -104,7 +114,7 @@ entries: version: 0.0.2 - apiVersion: v2 appVersion: v0.0.1 - created: "2023-02-10T11:57:57.742303+05:30" + created: "2023-02-17T18:24:43.746832+05:30" description: Helm chart for Parseable Server digest: 1f1142db092b9620ee38bb2294ccbb1c17f807b33bf56da43816af7fe89f301e name: parseable @@ -112,4 +122,4 @@ entries: urls: - https://charts.parseable.io/helm-releases/parseable-0.0.1.tgz version: 0.0.1 -generated: "2023-02-10T11:57:57.740234+05:30" +generated: "2023-02-17T18:24:43.744546+05:30" diff --git a/server/Cargo.toml b/server/Cargo.toml index ac6082ddc..f05393437 100644 --- a/server/Cargo.toml +++ b/server/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "parseable" -version = "0.2.1" +version = "0.2.2" authors = ["Parseable Team "] edition = "2021" rust-version = "1.67"