Skip to content

fix(deps): update dependency @vitejs/plugin-vue to v4.5.1 #885

fix(deps): update dependency @vitejs/plugin-vue to v4.5.1

fix(deps): update dependency @vitejs/plugin-vue to v4.5.1 #885

Workflow file for this run

name: Build
on: push
jobs:
backend-lint:
name: Backend Lint
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version-file: go.mod
cache: false
- name: Lint
uses: golangci/golangci-lint-action@v3
with:
args: --timeout=5m
backend-test:
name: Backend Test
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version-file: go.mod
- name: Test
run: go test ./...
frontend-lint:
name: Frontend Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js for use with actions
uses: actions/setup-node@v4
with:
node-version-file: frontend/.nvmrc
cache: npm
cache-dependency-path: frontend/package-lock.json
- name: Install dependencies
run: npm --prefix frontend install --prefer-offline --no-audit
env:
FONTAWESOME_NPM_AUTH_TOKEN: ${{ secrets.FONTAWESOME_NPM_AUTH_TOKEN }}
- run: npm --prefix frontend run lint
build-backend:
name: Build Backend Image
runs-on: ubuntu-latest
needs: [backend-lint, backend-test, frontend-lint]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: |
ghcr.io/gabe565/portfolio
tags: |
type=raw,priority=1000,value=latest,enable=${{ startsWith(github.ref, 'refs/tags/v') }}
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=semver,pattern={{major}}
type=ref,event=branch
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Buildx
uses: docker/setup-buildx-action@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ github.token }}
- name: Build and Push
id: docker_build
uses: docker/build-push-action@v5
with:
context: .
pull: true
push: ${{ github.secret_source == 'Actions' }}
platforms: linux/amd64
tags: ${{ steps.meta.outputs.tags }}
target: backend
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=gha
cache-to: type=gha,mode=max
build-frontend:
name: Build Frontend
runs-on: ubuntu-latest
needs: [backend-lint, backend-test, frontend-lint]
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: Set up Node
uses: actions/setup-node@v4
with:
node-version-file: frontend/.nvmrc
cache: npm
cache-dependency-path: frontend/package-lock.json
- name: Install dependencies
run: npm --prefix=frontend install --prefer-offline --no-audit
- name: Build
env:
VITE_API_ADDRESS: https://api.gabecook.com
VITE_GOOGLE_API_KEY: ${{ secrets.VITE_GOOGLE_API_KEY }}
run: npm --prefix=frontend run build
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: dist
path: frontend/dist
deploy-dev:
name: Deploy (dev)
needs: [build-backend, build-frontend]
if: github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v')
concurrency:
group: deploy-dev
cancel-in-progress: true
uses: ./.github/workflows/deploy.yaml
with:
environment: dev
url: https://dev.gabecook.com
secrets:
infra-ssh-key: ${{ secrets.INFRA_SSH_KEY }}
deploy-prod:
name: Deploy (prod)
needs: [build-backend, build-frontend]
if: startsWith(github.ref, 'refs/tags/v')
concurrency:
group: deploy-prod
cancel-in-progress: true
uses: ./.github/workflows/deploy.yaml
with:
environment: prod
url: https://gabecook.com
secrets:
infra-ssh-key: ${{ secrets.INFRA_SSH_KEY }}