1
0
mirror of https://github.com/amir20/dozzle.git synced 2025-12-25 14:59:26 +01:00
Files
dozzle/.github/workflows/deploy.yml

76 lines
2.1 KiB
YAML

on:
push:
tags:
- "v*"
name: Test and Release
jobs:
npm-test:
name: JavaScript Tests
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Install Node
uses: actions/setup-node@v2.1.5
- name: Install dependencies
run: yarn
- name: Run Tests
run: yarn test
go-test:
name: Go Tests
runs-on: ubuntu-latest
steps:
- name: Install Go
uses: actions/setup-go@v2.1.3
with:
go-version: 1.16.x
- name: Checkout code
uses: actions/checkout@v2
- name: Run Go Tests with Coverage
run: make test SKIP_ASSET=1
int-test:
name: Integration Tests
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Build images
run: docker-compose -f integration/docker-compose.test.yml build
- name: Run tests
run: docker-compose -f integration/docker-compose.test.yml run integration
buildx:
needs: [go-test, npm-test, int-test]
name: Release
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v1
- name: Available platforms
run: echo ${{ steps.buildx.outputs.platforms }}
- name: Docker Login
run: docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
- name: Run Buildx
run: make publish
git-release:
needs: [buildx]
name: Github Release
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Install Node
uses: actions/setup-node@v2.1.5
- name: Install dependencies
run: yarn
- name: Release to Github
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: yarn release --github.release --no-increment --no-git --ci