Skip to content

Bovi-analytics/github-actions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Bovi Analytics GitHub Actions

Reusable GitHub Actions for Bovi Analytics repositories.

Use actions by version tag:

uses: bovi-analytics/github-actions/.github/actions/docker-build-push@v1

Actions

azure-login

Authenticates to Azure with OIDC and selects a subscription.

- uses: bovi-analytics/github-actions/.github/actions/azure-login@v1
  with:
    client-id: ${{ secrets.AZURE_CLIENT_ID }}
    tenant-id: ${{ secrets.AZURE_TENANT_ID }}
    subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}

setup-python-uv

Installs uv and the requested Python version.

- uses: bovi-analytics/github-actions/.github/actions/setup-python-uv@v1
  with:
    python-version: "3.12"
    uv-version: "0.8.24"

Omit uv-version to use the default version resolved by astral-sh/setup-uv.

install-uv-project

Runs uv sync in a configurable project directory.

- uses: bovi-analytics/github-actions/.github/actions/install-uv-project@v1
  with:
    work-dir: apps/infrastructure

docker-build-push

Builds and pushes a GHCR image tagged with latest, the commit SHA, and optional extra tags.

- id: build
  uses: bovi-analytics/github-actions/.github/actions/docker-build-push@v1
  with:
    image-name: bovi-api
    context: .
    file: apps/backend/api/Dockerfile
    github-token: ${{ secrets.GITHUB_TOKEN }}
    extra-tags: |
      dev-latest

Outputs:

  • image: commit SHA tagged image.
  • image-versioned: first extra tag when provided, otherwise the commit SHA tagged image.
  • image-base: image reference without tag.

pulumi-command

Runs a Pulumi command using an Azure Blob backend.

- uses: bovi-analytics/github-actions/.github/actions/pulumi-command@v1
  with:
    command: preview
    stack-name: dev
    work-dir: infra/pulumi/permanent
    pulumi-config-passphrase: ${{ secrets.PULUMI_PASSPHRASE }}
    azure-storage-account-state: ${{ secrets.AZURE_STORAGE_ACCOUNT_STATE }}
    azure-storage-key: ${{ secrets.AZURE_STORAGE_KEY }}

resolve-current-image

Returns the current Azure Container Apps image, falling back to a supplied default.

check-containerapp-health

Polls an Azure Container App ingress endpoint until it responds successfully.

run-containerapp-job

Updates an Azure Container Apps job image, starts an execution, and waits for completion.

- uses: bovi-analytics/github-actions/.github/actions/run-containerapp-job@v1
  with:
    image: ${{ needs.build-api-image.outputs.image }}
    job-name: bovi-api-migrate-dev
    resource-group: Bovi-Analytics-Tools
    subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}

Reusable Workflows

pulumi-preview.yml

Reusable Pulumi preview job for repos that do not need extra product-specific Pulumi environment variables.

docker-build-push.yml

Reusable single-image GHCR build and push workflow.

About

This repo has github actions that can be shared in other repos so they are reusable, expandable and adaptable

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors