-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
39 lines (39 loc) · 1.44 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
language: elixir
sudo: false
otp_release:
- 20.2.2
elixir:
- 1.6
cache:
directories:
- _build
- deps
before_install:
# https://docs.travis-ci.com/user/encrypting-files/
# Decrypt the file about configuration(auth and so on) of hex.pm
- mkdir -p ~/.hex/
# You need execution command `travis encrypt-file ~/.hex/hex.config` in the repository and adding generated line following like:
# - openssl aes-256-cbc -K $encrypted_36030c2fae51_key -iv $encrypted_36030c2fae51_iv -in hex.config.enc -out ~/.hex/hex.config -d
- openssl aes-256-cbc -K $encrypted_36030c2fae51_key -iv $encrypted_36030c2fae51_iv -in hex.config.enc -out ~/.hex/hex.config -d
script:
- MIX_ENV=test mix test
# You need to compile following the line at first in the development environment (MIX_ENV=dev)
- mix compile --warnings-as-errors
- mix format --check-formatted
- mix credo --strict
# https://github.com/jeremyjh/dialyxir#command-line-options
# > exit immediately with same exit status as dialyzer. useful for CI
- mix dialyzer --halt-exit-status
deploy:
# https://docs.travis-ci.com/user/deployment/script/
# > `script` must be a scalar pointing to an executable file or command.
provider: script
# http://yaml.org/spec/1.2/spec.html#id2779048
# `>-` indicates the line folding.
script: >-
mix deps.get &&
echo $HEX_LOCAL_PASSWORD | mix hex.publish --no-confirm &&
mix clean &&
mix deps.clean --all
on:
tags: true