Thomas Amland 959d0e5c08 test
2020-11-14 19:29:45 +01:00

94 lines
2.2 KiB
YAML

name: CI
on: [push, pull_request]
env:
IMAGE: ${{ github.repository }}
TAG: ${{ github.sha }}
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: '12.x'
- name: Install dependencies
run: yarn install
- name: Build
run: |
export VUE_APP_BUILD=$TAG
export VUE_APP_BUILD_DATE=$(date --iso-8601)
yarn build
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: dist
path: dist
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Log in to docker hub
run: docker login -u ${{ secrets.DOCKER_HUB_USERNAME }} -p ${{ secrets.DOCKER_HUB_PASSWORD }}
- name: Build docker image
run: |
docker buildx build \
--platform linux/arm64 \
--tag $IMAGE:$TAG \
--file docker/Dockerfile .
preview:
runs-on: ubuntu-latest
needs: build
if: github.ref != 'refs/heads/master'
steps:
- name: Download artifact
uses: actions/download-artifact@v2
with:
name: dist
- name: Deploy preview
uses: netlify/actions/cli@master
env:
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
with:
args: deploy --dir=.
deploy:
runs-on: ubuntu-latest
needs: build
if: github.ref == 'refs/heads/master'
steps:
- name: Download artifact
uses: actions/download-artifact@v2
with:
name: dist
- name: Deploy site
uses: netlify/actions/cli@master
env:
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
with:
args: deploy --dir=. --prod
publish_docker_image:
runs-on: ubuntu-latest
needs: build
if: github.ref == 'refs/heads/master'
steps:
- name: Push latest
run: |
docker pull $IMAGE:$TAG
docker tag $IMAGE:$TAG $IMAGE:latest
docker login -u ${{ secrets.DOCKER_HUB_USERNAME }} -p ${{ secrets.DOCKER_HUB_PASSWORD }}
docker push $IMAGE:latest