Skip to content

Commit

Permalink
Generate code coverage reports (#19)
Browse files Browse the repository at this point in the history
  • Loading branch information
arkgil committed Jan 6, 2019
1 parent f69020a commit cffb3ec
Show file tree
Hide file tree
Showing 4 changed files with 39 additions and 5 deletions.
19 changes: 17 additions & 2 deletions .circleci/config.yml
Expand Up @@ -23,6 +23,9 @@ orbs:
otp:
description: OTP release to used by the job
type: string
codecov_flag:
description: String the coverage reports are grouped by
type: string
executor:
name: elixir
elixir: <<parameters.elixir>>
Expand All @@ -40,8 +43,16 @@ orbs:
- deps-<<parameters.elixir>>-<<parameters.otp>>-{{ checksum "mix.lock" }}
- deps-<<parameters.elixir>>-<<parameters.otp>>
- run: mix deps.get
- run: mix test
- run: mix coveralls.json
- run: mix dialyzer
- run:
name: Install curl
command: apk add --no-cache curl
- run:
name: Upload coverage report
command: |
bash <(curl -s https://codecov.io/bash) \
-F <<parameters.codecov_flag>>
- save_cache:
key: dialyzer-PLT-<<parameters.elixir>>-<<parameters.otp>>-{{ checksum "mix.lock" }}
paths:
Expand All @@ -58,15 +69,19 @@ workflows:
name: "1.7-otp-21"
elixir: "1.7.4"
otp: "21"
codecov_flag: "1_7_otp21"
- telemetry_poller/build_and_test:
name: "1.7-otp-19"
elixir: "1.7.4"
otp: "19"
codecov_flag: "1_7_otp19"
- telemetry_poller/build_and_test:
name: "1.5-otp-20"
elixir: "1.5.3"
otp: "20"
codecov_flag: "1_5_otp20"
- telemetry_poller/build_and_test:
name: "1.5-otp-18"
elixir: "1.5.3"
otp: "20"
otp: "18"
codecov_flag: "1_5_otp18"
6 changes: 6 additions & 0 deletions .codecov.yml
@@ -0,0 +1,6 @@
comment:
behaviour: new
require_changes: yes

ignore:
- "test/support/.*"
9 changes: 6 additions & 3 deletions mix.exs
Expand Up @@ -16,7 +16,8 @@ defmodule Telemetry.Poller.MixProject do
dialyzer: dialyzer(),
docs: docs(),
description: description(),
package: package()
package: package(),
test_coverage: [tool: ExCoveralls]
]
end

Expand All @@ -33,15 +34,17 @@ defmodule Telemetry.Poller.MixProject do
defp preferred_cli_env() do
[
docs: :docs,
dialyzer: :test
dialyzer: :test,
"coveralls.json": :test
]
end

defp deps do
[
{:telemetry, "~> 0.3"},
{:ex_doc, "~> 0.19", only: :docs},
{:dialyxir, "~> 1.0.0-rc.1", only: :test, runtime: false}
{:dialyxir, "~> 1.0.0-rc.1", only: :test, runtime: false},
{:excoveralls, "~> 0.10.0", only: :test, runtime: false}
]
end

Expand Down
10 changes: 10 additions & 0 deletions mix.lock
@@ -1,10 +1,20 @@
%{
"certifi": {:hex, :certifi, "2.4.2", "75424ff0f3baaccfd34b1214184b6ef616d89e420b258bb0a5ea7d7bc628f7f0", [:rebar3], [{:parse_trans, "~>3.3", [hex: :parse_trans, repo: "hexpm", optional: false]}], "hexpm"},
"dialyxir": {:hex, :dialyxir, "1.0.0-rc.4", "71b42f5ee1b7628f3e3a6565f4617dfb02d127a0499ab3e72750455e986df001", [:mix], [{:erlex, "~> 0.1", [hex: :erlex, repo: "hexpm", optional: false]}], "hexpm"},
"earmark": {:hex, :earmark, "1.3.1", "73812f447f7a42358d3ba79283cfa3075a7580a3a2ed457616d6517ac3738cb9", [:mix], [], "hexpm"},
"erlex": {:hex, :erlex, "0.1.6", "c01c889363168d3fdd23f4211647d8a34c0f9a21ec726762312e08e083f3d47e", [:mix], [], "hexpm"},
"ex_doc": {:hex, :ex_doc, "0.19.2", "6f4081ccd9ed081b6dc0bd5af97a41e87f5554de469e7d76025fba535180565f", [:mix], [{:earmark, "~> 1.2", [hex: :earmark, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.10", [hex: :makeup_elixir, repo: "hexpm", optional: false]}], "hexpm"},
"excoveralls": {:hex, :excoveralls, "0.10.3", "b090a3fbcb3cfa136f0427d038c92a9051f840953ec11b40ee74d9d4eac04d1e", [:mix], [{:hackney, "~> 1.13", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm"},
"hackney": {:hex, :hackney, "1.15.0", "287a5d2304d516f63e56c469511c42b016423bcb167e61b611f6bad47e3ca60e", [:rebar3], [{:certifi, "2.4.2", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "6.0.0", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "1.0.1", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "1.0.2", [hex: :mimerl, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "1.1.4", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}], "hexpm"},
"idna": {:hex, :idna, "6.0.0", "689c46cbcdf3524c44d5f3dde8001f364cd7608a99556d8fbd8239a5798d4c10", [:rebar3], [{:unicode_util_compat, "0.4.1", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm"},
"jason": {:hex, :jason, "1.1.2", "b03dedea67a99223a2eaf9f1264ce37154564de899fd3d8b9a21b1a6fd64afe7", [:mix], [{:decimal, "~> 1.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm"},
"makeup": {:hex, :makeup, "0.8.0", "9cf32aea71c7fe0a4b2e9246c2c4978f9070257e5c9ce6d4a28ec450a839b55f", [:mix], [{:nimble_parsec, "~> 0.5.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm"},
"makeup_elixir": {:hex, :makeup_elixir, "0.13.0", "be7a477997dcac2e48a9d695ec730b2d22418292675c75aa2d34ba0909dcdeda", [:mix], [{:makeup, "~> 0.8", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm"},
"metrics": {:hex, :metrics, "1.0.1", "25f094dea2cda98213cecc3aeff09e940299d950904393b2a29d191c346a8486", [:rebar3], [], "hexpm"},
"mimerl": {:hex, :mimerl, "1.0.2", "993f9b0e084083405ed8252b99460c4f0563e41729ab42d9074fd5e52439be88", [:rebar3], [], "hexpm"},
"nimble_parsec": {:hex, :nimble_parsec, "0.5.0", "90e2eca3d0266e5c53f8fbe0079694740b9c91b6747f2b7e3c5d21966bba8300", [:mix], [], "hexpm"},
"parse_trans": {:hex, :parse_trans, "3.3.0", "09765507a3c7590a784615cfd421d101aec25098d50b89d7aa1d66646bc571c1", [:rebar3], [], "hexpm"},
"ssl_verify_fun": {:hex, :ssl_verify_fun, "1.1.4", "f0eafff810d2041e93f915ef59899c923f4568f4585904d010387ed74988e77b", [:make, :mix, :rebar3], [], "hexpm"},
"telemetry": {:hex, :telemetry, "0.3.0", "099a7f3ce31e4780f971b4630a3c22ec66d22208bc090fe33a2a3a6a67754a73", [:rebar3], [], "hexpm"},
"unicode_util_compat": {:hex, :unicode_util_compat, "0.4.1", "d869e4c68901dd9531385bb0c8c40444ebf624e60b6962d95952775cac5e90cd", [:rebar3], [], "hexpm"},
}

0 comments on commit cffb3ec

Please sign in to comment.