Update Cassandra queries for tables #96
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: Docker Build & Push | |
on: | |
pull_request: | |
push: | |
branches: | |
- master | |
release: | |
types: | |
- released | |
jobs: | |
# This job exposes image_tag and push_enabled variables for other jobs. | |
# Other jobs depends on this. see needs: meta in other jobs. | |
meta: | |
runs-on: ubuntu-latest | |
outputs: | |
image_tag: ${{ steps.determine-image-tag.outputs.image_tag }} | |
push_enabled: ${{ steps.determine-push.outputs.enabled }} | |
steps: | |
# this step determines the image tag based on the event that triggered the workflow. | |
# it sets the image_tag output variable to either "master" or the release version. | |
- name: Determine image tag | |
id: determine-image-tag | |
run: | | |
if [[ "${{ github.event_name }}" == "push" ]]; then | |
echo "image_tag=master" >> $GITHUB_OUTPUT | |
elif [[ "${{ github.event_name }}" == "release" ]]; then | |
echo "image_tag=${{ github.event.release.tag_name }}" >> $GITHUB_OUTPUT | |
else | |
echo "image_tag=test" >> $GITHUB_OUTPUT | |
fi | |
# This step determines if push is enabled based on the event that triggered the workflow. Push is disabled on pull requests. | |
- name: Determine if push is enabled | |
id: determine-push | |
run: | | |
if [[ "${{ github.event_name }}" == "pull_request" ]]; then | |
echo "enabled=false" >> $GITHUB_OUTPUT | |
else | |
echo "enabled=true" >> $GITHUB_OUTPUT | |
fi | |
push_server_image: | |
name: Push server image to Docker Hub | |
needs: meta | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Login to Docker Hub | |
if: ${{ needs.meta.outputs.push_enabled == 'true' }} | |
uses: docker/login-action@v3 | |
with: | |
username: ${{ secrets.CADENCE_SERVER_DOCKERHUB_USERNAME }} | |
password: ${{ secrets.CADENCE_SERVER_DOCKERHUB_TOKEN }} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Build and push | |
uses: docker/build-push-action@v6 | |
with: | |
context: . | |
platforms: linux/amd64 | |
build-args: TARGET=server | |
push: ${{ needs.meta.outputs.push_enabled == 'true' }} | |
tags: ubercadence/server:${{ needs.meta.outputs.image_tag }} | |
- name: Validate tag | |
run: | | |
echo "ubercadence/server:${{ needs.meta.outputs.image_tag }}" | |
push_server_auto_setup_image: | |
name: Push auto-setup image to Docker Hub | |
needs: meta | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Login to Docker Hub | |
if: ${{ needs.meta.outputs.push_enabled == 'true' }} | |
uses: docker/login-action@v3 | |
with: | |
username: ${{ secrets.CADENCE_SERVER_DOCKERHUB_USERNAME }} | |
password: ${{ secrets.CADENCE_SERVER_DOCKERHUB_TOKEN }} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Build and push | |
uses: docker/build-push-action@v6 | |
with: | |
context: . | |
platforms: linux/amd64 | |
build-args: TARGET=auto-setup | |
push: ${{ needs.meta.outputs.push_enabled == 'true' }} | |
tags: ubercadence/server:${{ needs.meta.outputs.image_tag }}-auto-setup | |
- name: Validate tag | |
run: | | |
echo "ubercadence/server:${{ needs.meta.outputs.image_tag }}-auto-setup" | |
push_cli_image: | |
name: Push CLI image to Docker Hub | |
needs: meta | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Login to Docker Hub | |
uses: docker/login-action@v3 | |
if: ${{ needs.meta.outputs.push_enabled == 'true' }} | |
with: | |
username: ${{ secrets.CADENCE_SERVER_DOCKERHUB_USERNAME }} | |
password: ${{ secrets.CADENCE_SERVER_DOCKERHUB_TOKEN }} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Build and push | |
uses: docker/build-push-action@v6 | |
with: | |
context: . | |
platforms: linux/amd64 | |
build-args: TARGET=cli | |
push: ${{ needs.meta.outputs.push_enabled == 'true' }} | |
tags: ubercadence/cli:${{ needs.meta.outputs.image_tag }} | |
- name: Validate tag | |
run: | | |
echo "ubercadence/cli:${{ needs.meta.outputs.image_tag }}" | |
push_bench_image: | |
name: Push bench image to Docker Hub on master pushes | |
needs: meta | |
runs-on: ubuntu-latest | |
if: ${{ needs.meta.outputs.image_tag == 'master' }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Login to Docker Hub | |
uses: docker/login-action@v3 | |
if: ${{ needs.meta.outputs.push_enabled == 'true' }} | |
with: | |
username: ${{ secrets.CADENCE_SERVER_DOCKERHUB_USERNAME }} | |
password: ${{ secrets.CADENCE_SERVER_DOCKERHUB_TOKEN }} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Build and push | |
uses: docker/build-push-action@v6 | |
with: | |
context: . | |
platforms: linux/amd64 | |
build-args: TARGET=bench | |
tags: ubercadence/bench:master | |
push: ${{ needs.meta.outputs.push_enabled == 'true' }} | |
push_canary_image: | |
name: Push canary image to Docker Hub on master pushes | |
needs: meta | |
runs-on: ubuntu-latest | |
if: ${{ needs.meta.outputs.image_tag == 'master' }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Login to Docker Hub | |
uses: docker/login-action@v3 | |
if: ${{ needs.meta.outputs.push_enabled == 'true' }} | |
with: | |
username: ${{ secrets.CADENCE_SERVER_DOCKERHUB_USERNAME }} | |
password: ${{ secrets.CADENCE_SERVER_DOCKERHUB_TOKEN }} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Build and push | |
uses: docker/build-push-action@v6 | |
with: | |
context: . | |
platforms: linux/amd64 | |
build-args: TARGET=canary | |
tags: ubercadence/canary:master | |
push: ${{ needs.meta.outputs.push_enabled == 'true' }} |