Compare commits
11 Commits
main
...
v0.78.0-rc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6cfe577315 | ||
|
|
fe0f164e1e | ||
|
|
c0655193bc | ||
|
|
cda4eda539 | ||
|
|
fdf71335bc | ||
|
|
c6a50559d5 | ||
|
|
e8f1deac9c | ||
|
|
f3de435310 | ||
|
|
d7a7031cd4 | ||
|
|
726a5de42b | ||
|
|
5183d61c9a |
57
.github/workflows/build-community.yaml
vendored
Normal file
57
.github/workflows/build-community.yaml
vendored
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
name: build-community
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
tags:
|
||||||
|
- v*
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
prepare:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
outputs:
|
||||||
|
docker_providers: ${{ steps.set-docker-providers.outputs.providers }}
|
||||||
|
steps:
|
||||||
|
- name: set-docker-providers
|
||||||
|
id: set-docker-providers
|
||||||
|
run: |
|
||||||
|
if [[ ${{ github.event.ref }} =~ ^refs/tags/v[0-9]+\.[0-9]+\.[0-9]+$ || ${{ github.event.ref }} =~ ^refs/tags/v[0-9]+\.[0-9]+\.[0-9]+-rc.[0-9]+$ ]]; then
|
||||||
|
echo "providers=hub,gcp" >> $GITHUB_OUTPUT
|
||||||
|
else
|
||||||
|
echo "providers=gcp" >> $GITHUB_OUTPUT
|
||||||
|
fi
|
||||||
|
js-build:
|
||||||
|
uses: signoz/primus.workflows/.github/workflows/js-build.yaml@feat/new-build
|
||||||
|
needs: prepare
|
||||||
|
secrets: inherit
|
||||||
|
with:
|
||||||
|
PRIMUS_REF: dockerhub
|
||||||
|
JS_WORKDIR: frontend
|
||||||
|
JS_UPLOAD_ARTIFACT_NAME: community-jsbuild-${{ github.sha }}
|
||||||
|
JS_UPLOAD_ARTIFACT_PATH: frontend/build
|
||||||
|
DOCKER_BUILD: false
|
||||||
|
DOCKER_MANIFEST: false
|
||||||
|
go-build:
|
||||||
|
uses: signoz/primus.workflows/.github/workflows/go-build.yaml@feat/new-build
|
||||||
|
needs: [prepare, js-build]
|
||||||
|
secrets: inherit
|
||||||
|
with:
|
||||||
|
PRIMUS_REF: dockerhub
|
||||||
|
GO_NAME: signoz-community
|
||||||
|
GO_DOWNLOAD_ARTIFACT_NAME: community-jsbuild-${{ github.sha }}
|
||||||
|
GO_DOWNLOAD_ARTIFACT_PATH: frontend/build
|
||||||
|
GO_BUILD_CONTEXT: ./pkg/query-service
|
||||||
|
GO_BUILD_FLAGS: >-
|
||||||
|
-tags timetzdata
|
||||||
|
-ldflags='-linkmode external -extldflags \"-static\" -s -w
|
||||||
|
-X github.com/signoz/zeus/pkg/version.Version=\$($MAKE info-version)
|
||||||
|
-X github.com/signoz/zeus/pkg/version.variant=community
|
||||||
|
-X github.com/signoz/zeus/pkg/version.hash=\$($MAKE info-commit-short)
|
||||||
|
-X github.com/signoz/zeus/pkg/version.time=\$($MAKE info-timestamp)
|
||||||
|
-X github.com/signoz/zeus/pkg/version.branch=\$($MAKE info-branch)'
|
||||||
|
GO_CGO_ENABLED: 1
|
||||||
|
DOCKER_BASE_IMAGES: '{"alpine": "alpine:3.20.3"}'
|
||||||
|
DOCKER_DOCKERFILE_PATH: ./pkg/query-service/Dockerfile.multi-arch
|
||||||
|
DOCKER_MANIFEST: true
|
||||||
|
DOCKER_PROVIDERS: ${{ needs.prepare.outputs.docker_providers }}
|
||||||
82
.github/workflows/build-enterprise.yaml
vendored
Normal file
82
.github/workflows/build-enterprise.yaml
vendored
Normal file
@@ -0,0 +1,82 @@
|
|||||||
|
name: build-enterprise
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
tags:
|
||||||
|
- v*
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
prepare:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
outputs:
|
||||||
|
docker_providers: ${{ steps.set-docker-providers.outputs.providers }}
|
||||||
|
steps:
|
||||||
|
- name: create-dotenv
|
||||||
|
run: |
|
||||||
|
mkdir -p frontend
|
||||||
|
echo 'CI=1' > frontend/.env
|
||||||
|
echo 'INTERCOM_APP_ID="${{ secrets.INTERCOM_APP_ID }}"' >> frontend/.env
|
||||||
|
echo 'SEGMENT_ID="${{ secrets.SEGMENT_ID }}"' >> frontend/.env
|
||||||
|
echo 'SENTRY_AUTH_TOKEN="${{ secrets.SENTRY_AUTH_TOKEN }}"' >> frontend/.env
|
||||||
|
echo 'SENTRY_ORG="${{ secrets.SENTRY_ORG }}"' >> frontend/.env
|
||||||
|
echo 'SENTRY_PROJECT_ID="${{ secrets.SENTRY_PROJECT_ID }}"' >> frontend/.env
|
||||||
|
echo 'SENTRY_DSN="${{ secrets.SENTRY_DSN }}"' >> frontend/.env
|
||||||
|
echo 'TUNNEL_URL="${{ secrets.TUNNEL_URL }}"' >> frontend/.env
|
||||||
|
echo 'TUNNEL_DOMAIN="${{ secrets.TUNNEL_DOMAIN }}"' >> frontend/.env
|
||||||
|
echo 'POSTHOG_KEY="${{ secrets.POSTHOG_KEY }}"' >> frontend/.env
|
||||||
|
echo 'CUSTOMERIO_ID="${{ secrets.CUSTOMERIO_ID }}"' >> frontend/.env
|
||||||
|
echo 'CUSTOMERIO_SITE_ID="${{ secrets.CUSTOMERIO_SITE_ID }}"' >> frontend/.env
|
||||||
|
- name: upload-dotenv
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: enterprise-dotenv-${{ github.sha }}
|
||||||
|
path: frontend/.env
|
||||||
|
if-no-files-found: error
|
||||||
|
include-hidden-files: true
|
||||||
|
- name: set-docker-providers
|
||||||
|
id: set-docker-providers
|
||||||
|
run: |
|
||||||
|
if [[ ${{ github.event.ref }} =~ ^refs/tags/v[0-9]+\.[0-9]+\.[0-9]+$ || ${{ github.event.ref }} =~ ^refs/tags/v[0-9]+\.[0-9]+\.[0-9]+-rc.[0-9]+$ ]]; then
|
||||||
|
echo "providers=hub,gcp" >> $GITHUB_OUTPUT
|
||||||
|
else
|
||||||
|
echo "providers=gcp" >> $GITHUB_OUTPUT
|
||||||
|
fi
|
||||||
|
js-build:
|
||||||
|
uses: signoz/primus.workflows/.github/workflows/js-build.yaml@feat/new-build
|
||||||
|
needs: prepare
|
||||||
|
secrets: inherit
|
||||||
|
with:
|
||||||
|
PRIMUS_REF: dockerhub
|
||||||
|
JS_WORKDIR: frontend
|
||||||
|
JS_DOWNLOAD_ARTIFACT_NAME: enterprise-dotenv-${{ github.sha }}
|
||||||
|
JS_DOWNLOAD_ARTIFACT_PATH: frontend/.env
|
||||||
|
JS_UPLOAD_ARTIFACT_NAME: enterprise-jsbuild-${{ github.sha }}
|
||||||
|
JS_UPLOAD_ARTIFACT_PATH: frontend/build
|
||||||
|
DOCKER_BUILD: false
|
||||||
|
DOCKER_MANIFEST: false
|
||||||
|
go-build:
|
||||||
|
uses: signoz/primus.workflows/.github/workflows/go-build.yaml@feat/new-build
|
||||||
|
needs: [prepare, js-build]
|
||||||
|
secrets: inherit
|
||||||
|
with:
|
||||||
|
PRIMUS_REF: dockerhub
|
||||||
|
GO_DOWNLOAD_ARTIFACT_NAME: enterprise-jsbuild-${{ github.sha }}
|
||||||
|
GO_DOWNLOAD_ARTIFACT_PATH: frontend/build
|
||||||
|
GO_BUILD_CONTEXT: ./ee/query-service
|
||||||
|
GO_BUILD_FLAGS: >-
|
||||||
|
-tags timetzdata
|
||||||
|
-ldflags='-linkmode external -extldflags \"-static\" -s -w
|
||||||
|
-X github.com/signoz/zeus/pkg/version.Version=\$($MAKE info-version)
|
||||||
|
-X github.com/signoz/zeus/pkg/version.variant=enterprise
|
||||||
|
-X github.com/signoz/zeus/pkg/version.hash=\$($MAKE info-commit-short)
|
||||||
|
-X github.com/signoz/zeus/pkg/version.time=\$($MAKE info-timestamp)
|
||||||
|
-X github.com/signoz/zeus/pkg/version.branch=\$($MAKE info-branch)
|
||||||
|
-X github.com/signoz/zeus/ee/query-service/constants.ZeusURL=https://api.signoz.cloud
|
||||||
|
-X github.com/signoz/zeus/ee/query-service/constants.LicenseSignozIo=https://license.signoz.io/api/v1'
|
||||||
|
GO_CGO_ENABLED: 1
|
||||||
|
DOCKER_BASE_IMAGES: '{"alpine": "alpine:3.20.3"}'
|
||||||
|
DOCKER_DOCKERFILE_PATH: ./ee/query-service/Dockerfile.multi-arch
|
||||||
|
DOCKER_MANIFEST: true
|
||||||
|
DOCKER_PROVIDERS: ${{ needs.prepare.outputs.docker_providers }}
|
||||||
122
.github/workflows/build.yaml
vendored
122
.github/workflows/build.yaml
vendored
@@ -1,122 +0,0 @@
|
|||||||
name: build
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
tags:
|
|
||||||
- v*
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
enterprise:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
- name: setup
|
|
||||||
uses: actions/setup-go@v5
|
|
||||||
with:
|
|
||||||
go-version: "1.22"
|
|
||||||
- name: setup-qemu
|
|
||||||
uses: docker/setup-qemu-action@v3
|
|
||||||
- name: setup-buildx
|
|
||||||
uses: docker/setup-buildx-action@v3
|
|
||||||
with:
|
|
||||||
version: latest
|
|
||||||
- name: docker-login
|
|
||||||
uses: docker/login-action@v3
|
|
||||||
with:
|
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
||||||
- name: create-env-file
|
|
||||||
run: |
|
|
||||||
echo 'INTERCOM_APP_ID="${{ secrets.INTERCOM_APP_ID }}"' > frontend/.env
|
|
||||||
echo 'SEGMENT_ID="${{ secrets.SEGMENT_ID }}"' >> frontend/.env
|
|
||||||
echo 'SENTRY_AUTH_TOKEN="${{ secrets.SENTRY_AUTH_TOKEN }}"' >> frontend/.env
|
|
||||||
echo 'SENTRY_ORG="${{ secrets.SENTRY_ORG }}"' >> frontend/.env
|
|
||||||
echo 'SENTRY_PROJECT_ID="${{ secrets.SENTRY_PROJECT_ID }}"' >> frontend/.env
|
|
||||||
echo 'SENTRY_DSN="${{ secrets.SENTRY_DSN }}"' >> frontend/.env
|
|
||||||
echo 'TUNNEL_URL="${{ secrets.TUNNEL_URL }}"' >> frontend/.env
|
|
||||||
echo 'TUNNEL_DOMAIN="${{ secrets.TUNNEL_DOMAIN }}"' >> frontend/.env
|
|
||||||
echo 'POSTHOG_KEY="${{ secrets.POSTHOG_KEY }}"' >> frontend/.env
|
|
||||||
echo 'CUSTOMERIO_ID="${{ secrets.CUSTOMERIO_ID }}"' >> frontend/.env
|
|
||||||
echo 'CUSTOMERIO_SITE_ID="${{ secrets.CUSTOMERIO_SITE_ID }}"' >> frontend/.env
|
|
||||||
- name: github-ref-info
|
|
||||||
shell: bash
|
|
||||||
run: |
|
|
||||||
GH_REF=${{ github.ref }}
|
|
||||||
if [[ "${{ github.ref_type }}" == "tag" ]]; then
|
|
||||||
PREFIX="refs/tags/"
|
|
||||||
echo "GH_IS_TAG=true" >> $GITHUB_ENV
|
|
||||||
echo "GH_TAG=${GH_REF#$PREFIX}" >> $GITHUB_ENV
|
|
||||||
else
|
|
||||||
PREFIX="refs/heads/"
|
|
||||||
echo "GH_IS_TAG=false" >> $GITHUB_ENV
|
|
||||||
echo "GH_BRANCH_NAME=${GH_REF#$PREFIX}" >> $GITHUB_ENV
|
|
||||||
fi
|
|
||||||
- name: set-version
|
|
||||||
run: |
|
|
||||||
if [ '${{ env.GH_IS_TAG }}' == 'true' ]; then
|
|
||||||
echo "VERSION=${{ env.GH_TAG }}" >> $GITHUB_ENV
|
|
||||||
elif [ '${{ env.GH_BRANCH_NAME }}' == 'main' ]; then
|
|
||||||
echo "VERSION=latest" >> $GITHUB_ENV
|
|
||||||
else
|
|
||||||
echo "VERSION=${{ env.GH_BRANCH_NAME }}" >> $GITHUB_ENV
|
|
||||||
fi
|
|
||||||
- name: cross-compilation-tools
|
|
||||||
run: |
|
|
||||||
set -ex
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y gcc-aarch64-linux-gnu musl-tools
|
|
||||||
- name: publish
|
|
||||||
run: make docker-buildx-enterprise
|
|
||||||
|
|
||||||
community:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
- name: setup-go
|
|
||||||
uses: actions/setup-go@v5
|
|
||||||
with:
|
|
||||||
go-version: "1.22"
|
|
||||||
- name: setup-qemu
|
|
||||||
uses: docker/setup-qemu-action@v3
|
|
||||||
- name: setup-buildx
|
|
||||||
uses: docker/setup-buildx-action@v3
|
|
||||||
with:
|
|
||||||
version: latest
|
|
||||||
- name: docker-login
|
|
||||||
uses: docker/login-action@v3
|
|
||||||
with:
|
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
||||||
- name: github-ref-info
|
|
||||||
shell: bash
|
|
||||||
run: |
|
|
||||||
GH_REF=${{ github.ref }}
|
|
||||||
if [[ "${{ github.ref_type }}" == "tag" ]]; then
|
|
||||||
PREFIX="refs/tags/"
|
|
||||||
echo "GH_IS_TAG=true" >> $GITHUB_ENV
|
|
||||||
echo "GH_TAG=${GH_REF#$PREFIX}" >> $GITHUB_ENV
|
|
||||||
else
|
|
||||||
PREFIX="refs/heads/"
|
|
||||||
echo "GH_IS_TAG=false" >> $GITHUB_ENV
|
|
||||||
echo "GH_BRANCH_NAME=${GH_REF#$PREFIX}" >> $GITHUB_ENV
|
|
||||||
fi
|
|
||||||
- name: set-version
|
|
||||||
run: |
|
|
||||||
if [ '${{ env.GH_IS_TAG }}' == 'true' ]; then
|
|
||||||
echo "VERSION=${{ env.GH_TAG }}" >> $GITHUB_ENV
|
|
||||||
elif [ '${{ env.GH_BRANCH_NAME }}' == 'main' ]; then
|
|
||||||
echo "VERSION=latest" >> $GITHUB_ENV
|
|
||||||
else
|
|
||||||
echo "VERSION=${{ env.GH_BRANCH_NAME }}" >> $GITHUB_ENV
|
|
||||||
fi
|
|
||||||
- name: cross-compilation-tools
|
|
||||||
run: |
|
|
||||||
set -ex
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y gcc-aarch64-linux-gnu musl-tools
|
|
||||||
- name: publish
|
|
||||||
run: make docker-buildx-community
|
|
||||||
22
ee/query-service/Dockerfile.multi-arch
Normal file
22
ee/query-service/Dockerfile.multi-arch
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
ARG ALPINE_SHA="pass-a-valid-docker-sha-otherwise-this-will-fail"
|
||||||
|
|
||||||
|
FROM alpine@sha256:${ALPINE_SHA}
|
||||||
|
LABEL maintainer="signoz"
|
||||||
|
WORKDIR /root
|
||||||
|
|
||||||
|
ARG OS="linux"
|
||||||
|
ARG ARCH
|
||||||
|
|
||||||
|
RUN apk update && \
|
||||||
|
apk add ca-certificates && \
|
||||||
|
rm -rf /var/cache/apk/*
|
||||||
|
|
||||||
|
COPY ./target/${OS}-${ARCH}/signoz /root/signoz
|
||||||
|
COPY ./conf/prometheus.yml /root/config/prometheus.yml
|
||||||
|
COPY ./templates/email /root/templates
|
||||||
|
COPY frontend/build/ /etc/signoz/web/
|
||||||
|
|
||||||
|
RUN chmod 755 /root /root/signoz
|
||||||
|
|
||||||
|
ENTRYPOINT ["./signoz"]
|
||||||
|
CMD ["-config", "/root/config/prometheus.yml"]
|
||||||
22
pkg/query-service/Dockerfile.multi-arch
Normal file
22
pkg/query-service/Dockerfile.multi-arch
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
ARG ALPINE_SHA="pass-a-valid-docker-sha-otherwise-this-will-fail"
|
||||||
|
|
||||||
|
FROM alpine@sha256:${ALPINE_SHA}
|
||||||
|
LABEL maintainer="signoz"
|
||||||
|
WORKDIR /root
|
||||||
|
|
||||||
|
ARG OS="linux"
|
||||||
|
ARG ARCH
|
||||||
|
|
||||||
|
RUN apk update && \
|
||||||
|
apk add ca-certificates && \
|
||||||
|
rm -rf /var/cache/apk/*
|
||||||
|
|
||||||
|
COPY ./target/${OS}-${ARCH}/signoz-community /root/signoz-community
|
||||||
|
COPY ./conf/prometheus.yml /root/config/prometheus.yml
|
||||||
|
COPY ./templates/email /root/templates
|
||||||
|
COPY frontend/build/ /etc/signoz/web/
|
||||||
|
|
||||||
|
RUN chmod 755 /root /root/signoz-community
|
||||||
|
|
||||||
|
ENTRYPOINT ["./signoz-community"]
|
||||||
|
CMD ["-config", "/root/config/prometheus.yml"]
|
||||||
Reference in New Issue
Block a user