Remove Travis CI and Coveralls. Add Codecov as coverage reporting tool.#39
Remove Travis CI and Coveralls. Add Codecov as coverage reporting tool.#39parkerziegler merged 1 commit intov1from
Conversation
0772acb to
bc4a56e
Compare
| - yarn | ||
| args: | ||
| - codecov | ||
| - --token=$(CODECOV_TOKEN) |
There was a problem hiding this comment.
Isn’t this supposed to be
There was a problem hiding this comment.
Yep, that's originally what I thought too. Then I read Sail's docs on environment variables: https://sail.ci/docs/environment-variables. Check out the "Use Environment Variables in Task Properties" section, apparently they do interpolation using $().
There was a problem hiding this comment.
Interesting! So, does that mean they're pre-processing the interpolation to be something like:
$ export CODECOV_TOKEN="hi"
$ yarn codecov --token=hi?
Because if this was bash with $(STRING) the STRING would be executed as a command. Curious if doing - --token=${CODECOV_TOKEN} produces
$ export CODECOV_TOKEN="hi"
$ yarn codecov --token=${CODECOV_TOKEN}.. which seems like it should work too...
There was a problem hiding this comment.
My guess is they must be doing something like the above. I believe I ran an experiment where I had the CI run echo ${CODECOV_TOKEN} and it worked. The key to all of this is ensuring that the env key on the task is specified so that the environment variable you want to use is mounted: https://github.com/FormidableLabs/reason-urql/blob/v1/.sail.yml#L28-L29. Basically, the steps seem to be:
- Add env variables through Sail's app (app.sail.ci).
- Specify which variables to bring into scope in which task (using the
envconfig option as shown above). - Interpolate the variable using
$().
Sail does have a few other drawbacks from my research thus far.
- You can't see the build logs in their UI (app.sail.ci). The only way to see them is via the "Checks" tab on a PR. Which means you just don't get logs for non-PR'ed builds.
- Their environment variables UI seems badly broken. You can't actually save environment variables without opening the dev tools and bringing the Save button into view (or praying you tab navigate to the right out of view button 😬).

- Their deletion of environment variables doesn't seem to be working. If you delete variables in the UI and then refresh the page, your variables will still appear (and work in CI, meaning they're being persisted).

The CI itself seems to be running fine, but in the longer run I probably will advocate for us to migrate to Circle if these issues persist.
|
Might want to review inspectpack which also does codecov but without any token vars |
|
Yeah, I took a look at both |
|
This is probably what confuses me the most – the "Missing Base Report" notification (available under the |

This PR removes Travis CI as our CI provider, adds Codecov as our coverage reporting tool, and modifies our
.sail.ymlto work with environment variables. There are still some kinks to work out with Codecov – right now we aren't actually getting reporting showing up in their dashboards. I'm suspecting some of this is because we're introducing this change on a branch off a branch off ofmaster. There are some issues with Codecov not having a "base report" that I've attempted to amend via by using their bash uploader, but it's not quite behaving properly. I have a support ticket out to them now that we'll hopefully get some word on soon. In the meantime, our Sail builds are passing nicely 👍.