chore(tracking) improve tracking for default org and identify (#596) #858
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Hoop Release | |
on: | |
push: | |
tags: | |
- "*.*.*" | |
jobs: | |
test: | |
name: Test | |
runs-on: ubuntu-latest | |
environment: production | |
steps: | |
- name: Checkout Hoop | |
uses: actions/checkout@v3 | |
- name: Checkout libhoop | |
uses: actions/checkout@v3 | |
with: | |
repository: hoophq/libhoop | |
path: "./libhoop" | |
token: ${{ secrets.GH_TOKEN }} | |
- name: Setup Go | |
uses: actions/setup-go@v4 | |
with: | |
go-version: ">=1.22.4" | |
cache-dependency-path: "**/go.sum" | |
- name: Test | |
run: make test | |
darwin-amd64: | |
runs-on: ubuntu-latest | |
name: Build Darwin Amd64 | |
environment: production | |
needs: [test] | |
steps: | |
- name: Checkout Hoop | |
uses: actions/checkout@v3 | |
- name: Checkout libhoop | |
uses: actions/checkout@v3 | |
with: | |
repository: hoophq/libhoop | |
path: "./libhoop" | |
token: ${{ secrets.GH_TOKEN }} | |
- name: Setup Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: ">=1.22.4" | |
cache-dependency-path: "**/go.sum" | |
- name: Set Git Tag | |
run: echo "GIT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: amd64 | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
run: GOOS=darwin GOARCH=amd64 make build | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: dist-artifacts | |
path: dist/ | |
darwin-arm64: | |
runs-on: ubuntu-latest | |
name: Build Darwin Arm64 | |
environment: production | |
needs: [test] | |
steps: | |
- name: Checkout Hoop | |
uses: actions/checkout@v3 | |
- name: Checkout libhoop | |
uses: actions/checkout@v3 | |
with: | |
repository: hoophq/libhoop | |
path: "./libhoop" | |
token: ${{ secrets.GH_TOKEN }} | |
- name: Setup Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: ">=1.22.4" | |
cache-dependency-path: "**/go.sum" | |
- name: Set Git Tag | |
run: echo "GIT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Build | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
run: GOOS=darwin GOARCH=arm64 make build | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: dist-artifacts | |
path: dist/ | |
windows-amd64: | |
runs-on: ubuntu-latest | |
name: Build Windows Amd64 | |
environment: production | |
needs: [test] | |
steps: | |
- name: Checkout Hoop | |
uses: actions/checkout@v3 | |
- name: Checkout libhoop | |
uses: actions/checkout@v3 | |
with: | |
repository: hoophq/libhoop | |
path: "./libhoop" | |
token: ${{ secrets.GH_TOKEN }} | |
- name: Setup Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: ">=1.22.4" | |
cache-dependency-path: "**/go.sum" | |
- name: Set Git Tag | |
run: echo "GIT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Build | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
run: GOOS=windows GOARCH=amd64 make build | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: dist-artifacts | |
path: dist/ | |
windows-arm64: | |
runs-on: ubuntu-latest | |
name: Build Windows Arm64 | |
environment: production | |
needs: [test] | |
steps: | |
- name: Checkout Hoop | |
uses: actions/checkout@v3 | |
- name: Checkout libhoop | |
uses: actions/checkout@v3 | |
with: | |
repository: hoophq/libhoop | |
path: "./libhoop" | |
token: ${{ secrets.GH_TOKEN }} | |
- name: Setup Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: ">=1.22.4" | |
cache-dependency-path: "**/go.sum" | |
- name: Set Git Tag | |
run: echo "GIT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Build | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
run: GOOS=windows GOARCH=arm64 make build | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: dist-artifacts | |
path: dist/ | |
linux-amd64: | |
runs-on: ubuntu-latest | |
name: Build Linux Amd64 | |
environment: production | |
needs: [test] | |
steps: | |
- name: Checkout Hoop | |
uses: actions/checkout@v3 | |
- name: Checkout libhoop | |
uses: actions/checkout@v3 | |
with: | |
repository: hoophq/libhoop | |
path: "./libhoop" | |
token: ${{ secrets.GH_TOKEN }} | |
- name: Setup Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: ">=1.22.4" | |
cache-dependency-path: "**/go.sum" | |
- name: Set Git Tag | |
run: echo "GIT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Build | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
HONEYCOMB_API_KEY: ${{ secrets.HONEYCOMB_API_KEY }} | |
SENTRY_DSN: ${{ secrets.SENTRY_DSN }} | |
SEGMENT_API_KEY: ${{ secrets.SEGMENT_API_KEY }} | |
INTERCOM_HMAC_KEY: ${{ secrets.INTERCOM_HMAC_KEY }} | |
run: GOOS=linux GOARCH=amd64 make build | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: dist-artifacts | |
path: dist/ | |
linux-arm64: | |
runs-on: ubuntu-latest | |
name: Build Linux Arm64 | |
environment: production | |
needs: [test] | |
steps: | |
- name: Checkout Hoop | |
uses: actions/checkout@v3 | |
- name: Checkout libhoop | |
uses: actions/checkout@v3 | |
with: | |
repository: hoophq/libhoop | |
path: "./libhoop" | |
token: ${{ secrets.GH_TOKEN }} | |
- name: Setup Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: ">=1.22.4" | |
cache-dependency-path: "**/go.sum" | |
- name: Set Git Tag | |
run: echo "GIT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Build | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
HONEYCOMB_API_KEY: ${{ secrets.HONEYCOMB_API_KEY }} | |
SENTRY_DSN: ${{ secrets.SENTRY_DSN }} | |
SEGMENT_API_KEY: ${{ secrets.SEGMENT_API_KEY }} | |
INTERCOM_HMAC_KEY: ${{ secrets.INTERCOM_HMAC_KEY }} | |
run: GOOS=linux GOARCH=arm64 make build | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: dist-artifacts | |
path: dist/ | |
build-webapp: | |
runs-on: ubuntu-latest | |
name: Build Webapp | |
environment: production | |
needs: [test] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Setup Java | |
uses: actions/setup-java@v3 | |
with: | |
distribution: "zulu" | |
java-version: "21" | |
- name: Install clojure tools | |
uses: DeLaGuardo/[email protected] | |
with: | |
cli: 1.12.0.1479 # releases: https://clojure.org/releases/tools | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: "npm" | |
cache-dependency-path: webapp/package-lock.json | |
- name: Build | |
run: make build-webapp | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: dist-artifacts | |
path: dist/ | |
docker-publish: | |
runs-on: ubuntu-latest | |
name: Docker Publish | |
environment: production | |
needs: | |
- darwin-amd64 | |
- darwin-arm64 | |
- windows-amd64 | |
- windows-arm64 | |
- linux-amd64 | |
- linux-arm64 | |
- build-webapp | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: hoophq/hoop | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Login to Docker Hub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKER_LOGIN }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
- uses: actions/download-artifact@v3 | |
with: | |
name: "dist-artifacts" | |
path: dist/ | |
- name: Extract Webapp | |
run: make extract-webapp | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
context: . | |
platforms: linux/amd64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
docker-publish-agent: | |
runs-on: ubuntu-latest | |
name: Docker Publish Agent | |
environment: production | |
needs: | |
- darwin-amd64 | |
- darwin-arm64 | |
- windows-amd64 | |
- windows-arm64 | |
- linux-amd64 | |
- linux-arm64 | |
- build-webapp | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: hoophq/hoopdev | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Login to Docker Hub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKER_LOGIN }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
- uses: actions/download-artifact@v3 | |
with: | |
name: "dist-artifacts" | |
path: dist/ | |
- name: Build and Push | |
uses: docker/build-push-action@v4 | |
with: | |
file: ./Dockerfile.dev | |
context: . | |
platforms: linux/amd64 | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
docker-publish-hooplabs-arm64: | |
runs-on: GitHub-Linux-Arm-Runner | |
name: Dck Publish Labs (arm64) | |
environment: production | |
needs: | |
- darwin-amd64 | |
- darwin-arm64 | |
- windows-amd64 | |
- windows-arm64 | |
- linux-amd64 | |
- linux-arm64 | |
- build-webapp | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: hoophq/hooplabs | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Login to Docker Hub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKER_LOGIN }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
- uses: actions/download-artifact@v3 | |
with: | |
name: "dist-artifacts" | |
path: dist/ | |
- name: Extract Webapp | |
run: make extract-webapp | |
- name: Set Git Tag | |
run: echo "GIT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Build Gateway Bundle | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
GOARCH: arm64 | |
run: make build-gateway-bundle && mv ./dist ./deploy/docker-compose/dist | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: deploy/docker-compose/Dockerfile | |
context: deploy/docker-compose | |
platforms: linux/arm64 | |
provenance: false | |
sbom: false | |
push: true | |
tags: | | |
hoophq/hooplabs:${{ github.sha }}-arm64 | |
docker-publish-hooplabs-amd64: | |
runs-on: ubuntu-latest | |
name: Dck Publish Labs (amd64) | |
environment: production | |
needs: | |
- darwin-amd64 | |
- darwin-arm64 | |
- windows-amd64 | |
- windows-arm64 | |
- linux-amd64 | |
- linux-arm64 | |
- build-webapp | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: hoophq/hooplabs | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Login to Docker Hub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKER_LOGIN }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
- uses: actions/download-artifact@v3 | |
with: | |
name: "dist-artifacts" | |
path: dist/ | |
- name: Extract Webapp | |
run: make extract-webapp | |
- name: Set Git Tag | |
run: echo "GIT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Build Gateway Bundle | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
GOARCH: amd64 | |
run: make build-gateway-bundle && mv ./dist ./deploy/docker-compose/dist | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
file: deploy/docker-compose/Dockerfile | |
context: deploy/docker-compose | |
platforms: linux/amd64 | |
provenance: false | |
sbom: false | |
push: true | |
tags: | | |
hoophq/hooplabs:${{ github.sha }}-amd64 | |
docker-publish-multiarch: | |
runs-on: ubuntu-latest | |
name: Publish Labs Image | |
environment: production | |
needs: | |
- docker-publish-hooplabs-amd64 | |
- docker-publish-hooplabs-arm64 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: hoophq/hooplabs | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Login to Docker Hub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKER_LOGIN }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
- name: Set Git Tag | |
run: echo "GIT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Create SHA manifest and push | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
run: | | |
docker manifest create hoophq/hooplabs:${{ env.GIT_TAG }} \ | |
--amend hoophq/hooplabs:${{ github.sha }}-amd64 \ | |
--amend hoophq/hooplabs:${{ github.sha }}-arm64 | |
docker manifest create hoophq/hooplabs:latest \ | |
--amend hoophq/hooplabs:${{ github.sha }}-amd64 \ | |
--amend hoophq/hooplabs:${{ github.sha }}-arm64 | |
docker manifest push hoophq/hooplabs:${{ env.GIT_TAG }} | |
docker manifest push hoophq/hooplabs:latest | |
publish-release: | |
runs-on: ubuntu-latest | |
name: Publish Release | |
environment: production | |
needs: | |
- docker-publish | |
- docker-publish-agent | |
- docker-publish-multiarch | |
steps: | |
- name: Checkout Hoop | |
uses: actions/checkout@v3 | |
- uses: actions/download-artifact@v3 | |
id: download | |
with: | |
name: "dist-artifacts" | |
path: dist/ | |
- uses: matbour/setup-sentry-cli@v2 | |
id: sentry-cli | |
- name: Set Git Tag | |
run: echo "GIT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Build Gateway Bundle (amd64) | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
GOARCH: amd64 | |
run: make build-gateway-bundle | |
- name: Build Gateway Bundle (arm64) | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
GOARCH: arm64 | |
run: make build-gateway-bundle | |
- name: Build Helm Chart | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
run: make build-helm-chart | |
- name: Publish Release | |
env: | |
GIT_TAG: ${{ env.GIT_TAG }} | |
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} | |
AWS_REGION: us-east-1 | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
run: make release | |
- name: Publish Brew Recipe | |
run: gh workflow run release.yml -f version=$GIT_TAG --repo hoophq/brew | |
env: | |
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} | |
GIT_TAG: ${{ env.GIT_TAG }} | |
- name: Publish Sentry Sourcemaps | |
run: make publish-sentry-sourcemaps | |
env: | |
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} |