Skip to main content
Glama

@arizeai/phoenix-mcp

Official
by Arize-ai
docker-build-release.yml6.46 kB
name: Publish Docker images permissions: contents: read on: push: tags: - "arize-phoenix-v*" jobs: push_to_registry: name: Push Docker images to Docker Hub runs-on: ubuntu-latest outputs: version: ${{ steps.extract_version.outputs.VERSION }} strategy: matrix: variant: [root, nonroot, debug] permissions: packages: write contents: read env: REGISTRY: arizephoenix IMAGE_NAME: phoenix steps: - name: Check out the repo uses: actions/checkout@v4 - name: Extract version from tag id: extract_version run: | echo "VERSION=${GITHUB_REF#refs/tags/arize-phoenix-v}" >> $GITHUB_ENV echo "VERSION=${GITHUB_REF#refs/tags/arize-phoenix-v}" >> $GITHUB_OUTPUT echo "MAJOR_VERSION=$(echo ${GITHUB_REF#refs/tags/arize-phoenix-v} | cut -d. -f1)" >> $GITHUB_ENV echo "MINOR_VERSION=$(echo ${GITHUB_REF#refs/tags/arize-phoenix-v} | cut -d. -f2)" >> $GITHUB_ENV - name: Set BASE_IMAGE environment variable id: set-base-image run: | if [ "${{ matrix.variant }}" == "root" ]; then echo "BASE_IMAGE=gcr.io/distroless/python3-debian12" >> $GITHUB_ENV elif [ "${{ matrix.variant }}" == "debug" ]; then echo "BASE_IMAGE=gcr.io/distroless/python3-debian12:debug" >> $GITHUB_ENV elif [ "${{ matrix.variant }}" == "nonroot" ]; then echo "BASE_IMAGE=gcr.io/distroless/python3-debian12:nonroot" >> $GITHUB_ENV else echo "BASE_IMAGE=gcr.io/distroless/python3-debian12" >> $GITHUB_ENV fi - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Log in to Docker Hub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_PASSWORD }} - name: Extract metadata (tags, labels) for Docker id: meta uses: docker/metadata-action@v4 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} tags: | version-${{ env.VERSION }}-${{ matrix.variant }} ${{ matrix.variant == 'root' && 'version-${{ env.VERSION }} latest' || '' }} - name: Build and push Docker image id: push uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 context: . file: ./Dockerfile push: true sbom: true provenance: mode=max tags: | ${{ matrix.variant == 'root' && format('{0}/{1}:version-{2}', env.REGISTRY, env.IMAGE_NAME, env.MAJOR_VERSION) || '' }} ${{ matrix.variant == 'root' && format('{0}/{1}:version-{2}.{3}', env.REGISTRY, env.IMAGE_NAME, env.MAJOR_VERSION, env.MINOR_VERSION) || '' }} ${{ matrix.variant == 'root' && format('{0}/{1}:version-{2}', env.REGISTRY, env.IMAGE_NAME, env.VERSION) || '' }} ${{ matrix.variant == 'root' && format('{0}/{1}:latest', env.REGISTRY, env.IMAGE_NAME) || '' }} ${{ matrix.variant == 'root' && format('{0}/{1}:{2}', env.REGISTRY, env.IMAGE_NAME, env.MAJOR_VERSION) || '' }} ${{ matrix.variant == 'root' && format('{0}/{1}:{2}.{3}', env.REGISTRY, env.IMAGE_NAME, env.MAJOR_VERSION, env.MINOR_VERSION) || '' }} ${{ matrix.variant == 'root' && format('{0}/{1}:{2}', env.REGISTRY, env.IMAGE_NAME, env.VERSION) || '' }} ${{ matrix.variant != 'root' && format('{0}/{1}:version-{2}-{3}', env.REGISTRY, env.IMAGE_NAME, env.MAJOR_VERSION, matrix.variant) || '' }} ${{ matrix.variant != 'root' && format('{0}/{1}:version-{2}.{3}-{4}', env.REGISTRY, env.IMAGE_NAME, env.MAJOR_VERSION, env.MINOR_VERSION, matrix.variant) || '' }} ${{ matrix.variant != 'root' && format('{0}/{1}:version-{2}-{3}', env.REGISTRY, env.IMAGE_NAME, env.VERSION, matrix.variant) || '' }} ${{ matrix.variant != 'root' && format('{0}/{1}:latest-{2}', env.REGISTRY, env.IMAGE_NAME, matrix.variant) || '' }} ${{ matrix.variant != 'root' && format('{0}/{1}:{2}-{3}', env.REGISTRY, env.IMAGE_NAME, env.MAJOR_VERSION, matrix.variant) || '' }} ${{ matrix.variant != 'root' && format('{0}/{1}:{2}.{3}-{4}', env.REGISTRY, env.IMAGE_NAME, env.MAJOR_VERSION, env.MINOR_VERSION, matrix.variant) || '' }} ${{ matrix.variant != 'root' && format('{0}/{1}:{2}-{3}', env.REGISTRY, env.IMAGE_NAME, env.VERSION, matrix.variant) || '' }} labels: ${{ steps.meta.outputs.labels }} build-args: | BASE_IMAGE=${{ env.BASE_IMAGE }} update-self-deployment: name: Update Kustomize Template runs-on: ubuntu-latest needs: push_to_registry permissions: contents: write pull-requests: write steps: - uses: actions/checkout@v4 - name: Update Kustomize image version run: | sed -i "s/arizephoenix\/phoenix:version-.*$/arizephoenix\/phoenix:version-${{ needs.push_to_registry.outputs.version }}/" kustomize/base/phoenix.yaml cat kustomize/base/phoenix.yaml sed -i "s/tag:\ version-.*$/tag:\ version-${{ needs.push_to_registry.outputs.version }}-nonroot/" helm/values.yaml cat helm/values.yaml export helmPatchVersion=$(grep "version: [0-9]*\.[0-9]*\.[0-9]*" helm/Chart.yaml | sed -n 's/\(version:\ [0-9]*\.[0-9]*\.\)\([0-9]*\)/\2/p') export incrementedHelmPatchVersion=$((helmPatchVersion + 1)) sed -i "s/\(version:\ [0-9]*\.[0-9]*\.\)[0-9]*/\1$incrementedHelmPatchVersion/" helm/Chart.yaml sed -i 's/appVersion: "[^"]*"/appVersion: "${{ needs.push_to_registry.outputs.version }}"/' helm/Chart.yaml cat helm/Chart.yaml - name: Create PR uses: peter-evans/create-pull-request@v7 with: commit-message: "chore: update phoenix version to ${{ needs.push_to_registry.outputs.version }} in kustomize and helm" title: "chore: update phoenix version to ${{ needs.push_to_registry.outputs.version }} in kustomize and helm" body: | This PR updates the phoenix version in the kustomize template to version ${{ needs.push_to_registry.outputs.version }}. This change was automatically generated by the docker-build-release workflow. branch: update-phoenix-version-${{ needs.push_to_registry.outputs.version }} base: main

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Arize-ai/phoenix'

If you have feedback or need assistance with the MCP directory API, please join our Discord server