Skip to content

Bump the all group across 1 directory with 30 updates #603

Bump the all group across 1 directory with 30 updates

Bump the all group across 1 directory with 30 updates #603

Workflow file for this run

# yaml-language-server: $schema=https://www.schemastore.org/github-workflow.json
---
name: Build
on:
push:
branches:
- main
tags:
- v*
pull_request:
branches:
- main
permissions: {}
env:
CI_LINT: ${{ github.event_name == 'pull_request' }}
CI_TEST: ${{ github.event_name == 'pull_request' }}
CI_PUBLISH_RELEASE: ${{ github.repository == 'radius-project/dashboard' && startsWith(github.ref, 'refs/tags/v') && github.event_name == 'push' }}
CI_PUBLISH_LATEST: ${{ github.repository == 'radius-project/dashboard' && github.ref == 'refs/heads/main' && github.event_name == 'push' }}
jobs:
build:
name: Build Packages
runs-on: ubuntu-24.04
timeout-minutes: 10
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Parse release version and set environment variables
run: python ./.github/scripts/get_release_version.py
- name: Enable corepack
run: corepack enable
- name: Setup Node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version-file: .node-version
cache: yarn
- name: Install dependencies
run: yarn install --immutable
- name: Lint
if: ${{ env.CI_LINT == 'true' }}
run: yarn run lint:all
- name: Format
if: ${{ env.CI_LINT == 'true' }}
run: yarn run format:check
- name: Build TypeScript
run: yarn run tsc
- name: Build
run: yarn workspaces foreach -A run build:all
- name: Build Storybook
run: yarn workspace @radapp.io/rad-components run build-storybook
- name: Run Tests
if: ${{ env.CI_TEST == 'true' }}
run: yarn run test:all
- name: Run E2E Tests
if: ${{ env.CI_TEST == 'true' }}
run: yarn run test:e2e
build-and-publish-container:
name: Build and Publish Container
runs-on: ubuntu-24.04
timeout-minutes: 10
permissions:
contents: read
packages: write
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Parse release version and set environment variables
run: python ./.github/scripts/get_release_version.py
- name: Enable corepack
run: corepack enable
- name: Setup Node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version-file: .node-version
cache: yarn
- name: Install dependencies
run: yarn install --immutable
- name: Build TypeScript
run: yarn run tsc
- name: Build Backend
run: yarn run build:backend
- name: Build Image
run: yarn run build-image
- name: Analyze Image
uses: ./.github/actions/analyze-image
with:
image: ghcr.io/radius-project/dashboard:latest
- name: Login to ghcr.io
if: ${{ env.CI_PUBLISH_LATEST == 'true' || env.CI_PUBLISH_RELEASE == 'true' }}
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Push Image to ghcr.io (push to main)
if: ${{ env.CI_PUBLISH_LATEST == 'true' }}
run: |
docker push ghcr.io/radius-project/dashboard:latest
- name: Push Image to ghcr.io (push to tag)
if: ${{ env.CI_PUBLISH_RELEASE == 'true' }}
run: |
docker tag ghcr.io/radius-project/dashboard:latest ghcr.io/radius-project/dashboard:${{ env.REL_CHANNEL }}
docker push ghcr.io/radius-project/dashboard:${{ env.REL_CHANNEL }}