Skip to content

feat(landing): remove the "streamers" from anchor links (#807) #382

feat(landing): remove the "streamers" from anchor links (#807)

feat(landing): remove the "streamers" from anchor links (#807) #382

Workflow file for this run

name: Docker v3
on:
push:
branches:
- main
workflow_dispatch:
inputs:
skip-change-detect:
type: boolean
description: Skip detection of change (force build)
jobs:
build-matrix:
runs-on: ubuntu-latest
strategy:
matrix:
folders:
- apps/api
- apps/api-gql
- apps/bots
- apps/discord
- apps/emotes-cacher
- apps/eval
- apps/events
- apps/eventsub
- apps/integrations
- apps/parser
- apps/scheduler
- apps/timers
- apps/tokens
- apps/websockets
- apps/ytsr
- frontend/dashboard
- frontend/overlays
steps:
- uses: actions/checkout@v4
- name: Sets the folder and application names for the build
id: set-folder
run: |
echo "folder=$(dirname ${{ matrix.folders }})" >> $GITHUB_ENV
echo "app=$(basename ${{ matrix.folders }})" >> $GITHUB_ENV
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@v45
with:
files: |
${{ env.folder }}/${{ env.app }}/**
libs/**
- uses: oven-sh/setup-bun@v2
with:
bun-version-file: ".bun-version"
- name: Cache node_modules
id: cache-node_modules
uses: actions/cache@v4
with:
path: node_modules
key: ${{ runner.os }}-node_modules-${{ hashFiles('**/bun.lock') }}
restore-keys: |
${{ runner.os }}-node_modules-
- name: Install JavaScript dependencies
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
run: bun install
- name: Setup Golang dependencies
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: magnetikonline/action-golang-cache@v5
with:
go-version-file: go.work
- name: Install binaries dependencies
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
run: bun cli deps -skip-node -skip-go
- name: Build libraries
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
run: bun cli build libs
- name: Build gql
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
# check if app is apps/api-gql
run: |
if [ "${{ env.app }}" = "api-gql" ]; then
bun cli build gql
fi
- name: Build application
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
run: bun cli build app ${{ env.app }}
- name: Set up Docker Buildx
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_REGISTRY_LOGIN }}
password: ${{ secrets.DOCKER_REGISTRY_TOKEN }}
- name: Login to Twir registry
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/login-action@v3
with:
registry: registry.twir.app
username: ${{ secrets.DOCKER_TWIR_LOGIN }}
password: ${{ secrets.DOCKER_TWIR_PASSWORD }}
- name: Build docker image
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/build-push-action@v5
with:
context: .
file: ./${{ env.folder }}/${{ env.app }}/Dockerfile
push: true
tags: |
twirapp/${{ env.app }}:latest
registry.twir.app/twirapp/${{ env.app }}:latest
cache-from: type=gha
cache-to: type=gha,mode=max
migrations:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@v45
with:
files: |
libs/migrations/**
- name: Set up Docker Buildx
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_REGISTRY_LOGIN }}
password: ${{ secrets.DOCKER_REGISTRY_TOKEN }}
- name: Login to Twir registry
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/login-action@v3
with:
registry: registry.twir.app
username: ${{ secrets.DOCKER_TWIR_LOGIN }}
password: ${{ secrets.DOCKER_TWIR_PASSWORD }}
- name: Build docker image
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/build-push-action@v5
with:
context: .
file: ./libs/migrations/Dockerfile
push: true
tags: |
twirapp/migrations:latest
registry.twir.app/twirapp/migrations:latest
cache-from: type=gha
cache-to: type=gha,mode=max
web:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@v45
with:
files: |
web/**
libs/**
- name: Set up Docker Buildx
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_REGISTRY_LOGIN }}
password: ${{ secrets.DOCKER_REGISTRY_TOKEN }}
- name: Login to Twir registry
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/login-action@v3
with:
registry: registry.twir.app
username: ${{ secrets.DOCKER_TWIR_LOGIN }}
password: ${{ secrets.DOCKER_TWIR_PASSWORD }}
- name: Build docker image
if: steps.changed-files.outputs.any_changed == 'true' || github.event.inputs.skip-change-detect == 'true'
uses: docker/build-push-action@v5
with:
context: .
file: ./web/Dockerfile
push: true
tags: |
twirapp/web:latest
registry.twir.app/twirapp/web:latest
cache-from: type=gha
cache-to: type=gha,mode=max