filebrowser/.circleci/config.yml

71 lines
1.4 KiB
YAML

version: 2.1
references:
base_container: &base_container
docker:
- image: filebrowser/builder:v1.1.0
jobs:
lint:
<<: *base_container
steps:
- checkout
- run: make lint
test:
<<: *base_container
steps:
- checkout
- run:
name: "Test"
command: make test
build:
<<: *base_container
steps:
- checkout
- run:
name: "Build"
command: make build
- run:
name: "Cleanup"
command: |
rm -rf frontend/node_modules
rm -rf bin/
- persist_to_workspace:
root: .
paths:
- '*'
release:
<<: *base_container
steps:
- attach_workspace:
at: '~/project'
- setup_remote_docker
- run: echo $DOCKER_PASSWORD | docker login --username $DOCKER_USERNAME --password-stdin
- run: curl -sL https://git.io/goreleaser | bash
- run: docker logout
workflows:
version: 2
build-workflow:
jobs:
- lint:
filters:
tags:
only: /.*/
- test:
filters:
tags:
only: /.*/
- build:
filters:
tags:
only: /.*/
- release:
context: deploy
requires:
- build
- test
- lint
filters:
tags:
only: /^v.*/
branches:
ignore: /.*/