Commit Graph

47 Commits

Author SHA1 Message Date
Qi Xiao
5dc8c02a32 Simplify FreeBSD CI setup. 2022-03-20 17:22:41 +00:00
Qi Xiao
f7cb556d9b Require Go 1.18.
- Run "go fix" to remove legacy build tags

- Use staticcheck@master until it has a release that supports Go 1.18

- Turn off autocrlf for Windows tasks
2022-03-20 15:28:23 +00:00
Shengjing Zhu
167bbf1e03 Bump gccgo to 11
gcc 11 implements go1.16
2021-08-23 10:32:03 +01:00
Qi Xiao
76226ff01f Allow gccgo failures - it's too old. 2021-08-23 01:05:41 +01:00
Qi Xiao
b48515ab8c Remove step to deploy to bintray in Cirrus CI config.
Bintray was turned down on 2021-05-01.
2021-05-06 11:32:24 +01:00
Qi Xiao
82337a0b31 Followups for the CI migration.
* Update badges on README.md.

* Remove checkstyle jobs from CirrusCI.
2021-02-10 23:50:21 +00:00
Qi Xiao
075d65febc
Use GitHub Actions for CI (#1232)
Use GitHub Actions for everything except testing on gccgo and FreeBSD (which still use CirrusCI).
2021-02-10 23:41:17 +00:00
Qi Xiao
786d61260d .cirrus.yml: Don't allow gccgo failures, now that it works consistently 2021-02-02 11:17:02 +00:00
Qi Xiao
8df6d36d5f Use encrypted codecov token.
The Cirrus CI config included the codecov token in cleartext as I was under the
impression that this was necessary for coverage reports on pull requests to work
correctly. But this seems to be also causing pushes in other people's
Elvish repositories to appear in the master branch's commit history
(https://app.codecov.io/gh/elves/elvish/commits). Changing the token to be
encrypted might fix the problem; if this breaks coverage reports on pull
requests the token can be switched back to cleartext.
2021-01-16 06:57:39 +00:00
Qi Xiao
141a6d4955 .cirru.yml: Remove Code Climate code.
The script requires more setup than I expected, and the web UI doesn't support
viewing the source files as a tree. We will live with Codecov for now.
2021-01-13 00:41:29 +00:00
Qi Xiao
594debc834 .cirrus.yml: Accomodate cc-test-reporter's requirement of cover filename. 2021-01-13 00:34:47 +00:00
Qi Xiao
15eb190998 Try to fix Code Climate coverage by passing "-t gocov" to the uploader. 2021-01-13 00:25:39 +00:00
Qi Xiao
da82a3ab14 .cirrus.yml: Upload coverage to Code Climate. 2021-01-13 00:19:55 +00:00
Kurtis Rader
ad558b1e0d Include cross-package invocations in test coverage
The default behavior of `go test -cover` ignores coverage by integration
tests. That is, it ignores coverage by tests in a different package. This
penalizes Elvish since Elvish has a lot of integration tests that are
meant to indirectly, but explicitly, exercise code in other packages that
do not have explicit unit tests.

This change makes the test coverage more accurate for the purposes of
this project.

Resolves #1062
Resolves #1187
2021-01-03 02:05:44 +00:00
Qi Xiao
ba36492d16 .cirrus.yml: Bump test time scale to 20. 2020-08-16 15:50:46 +01:00
Qi Xiao
b2b18bff97 Bump minimal Go requirement to >= 1.14, now that 1.15 has been released. 2020-08-13 22:41:57 +01:00
Qi Xiao
c42755892e Pin prettier version to 2.0.5 in both CI and CONTRIBUTING.md. 2020-08-11 18:57:10 +01:00
Qi Xiao
eb25c882ae Allow failures in the gccgo task.
This fixes #1078.
2020-07-21 22:46:28 +01:00
Shengjing Zhu
d9454b4f4a .cirrus.yml: Add gccgo support 2020-07-14 20:49:03 +01:00
Qi Xiao
0c9014114e Allow codecov upload to fail.
Codecov's API endpoint is sometimes unstable. The CI should not fail when the
upload fails.
2020-07-05 19:18:57 +01:00
Qi Xiao
ee79ba529e .cirrus.yml: Add tasks for checking style. 2020-06-24 23:21:59 +01:00
Qi Xiao
2dae13f4a1 .cirrus.yml: Do not fail skipped coverage script. 2020-04-14 23:31:02 +01:00
Qi Xiao
3f65533f75 .cirrus.yml: Skip codecov uploads on FreeBSD and old Go on Linux. 2020-04-14 23:29:06 +01:00
Qi Xiao
fc79a716d9 .cirrus.yml: Expose the codecov token.
This token can only be used for uploading coverage reports, so the worst that
can happen is getting false coverage reports. The token can be revoked if such
abuse ever happens.
2020-04-05 14:49:14 +01:00
Qi Xiao
6ff0d35ad5 .cirrus.yml: Do not deploy for PRs.
The deploy task was (correctly!) failing for PRs since PRs could not access the
encrypted bintray credential.
2020-04-05 13:16:08 +01:00
Qi Xiao
2348a9fc48 .cirrus.yml: Fix BINTRAY_TOKEN. 2020-04-04 00:25:55 +01:00
Qi Xiao
04fb991b83 .cirrus.yml: Use the theelves/cirrus-builder image. 2020-04-04 00:11:27 +01:00
Qi Xiao
09ecce47d8 .cirrus.yml: Use theelves/up in the deploy task. 2020-04-03 23:53:03 +01:00
Qi Xiao
deac4904d4 .cirrus.yml: Test with -race. 2020-04-03 23:33:46 +01:00
Qi Xiao
cc9d03588c Deploy to bintray from Cirrus CI, and remove Travis config. 2020-04-03 23:23:23 +01:00
Qi Xiao
1d935bbfc1 Add Codecov token to Cirrus CI config, and remove coverage upload on Travis. 2020-04-03 22:41:32 +01:00
Qi Xiao
770fd8e6c4 Scale all test timeouts with $ELVISH_TEST_TIME_SCALE. 2020-04-03 22:12:20 +01:00
Qi Xiao
d05f57447b .cirrus.yml: Fix setup in FreeBSD.
The FreeBSD image has no bash, so install it as part of setup.
2020-04-03 21:58:41 +01:00
Qi Xiao
a7004a150e .cirrus.yml: Remove Windows, add old Go version, upload coverage. 2020-04-03 21:07:32 +01:00
Qi Xiao
fa59fb8e2c
.cirrus.yml: Hopefully fix the cache config. 2020-04-03 04:36:13 +01:00
Qi Xiao
655dee65d6 .cirrus.yml: Remove debug scripts that print environments.
In future Cirrus CI will have access to some credential environment variables,
so stop showing them.
2020-04-03 02:59:32 +01:00
Qi Xiao
0e005c6f12 .cirrus.yml: Move go_env_debug_script after the matrix block.
The script requires go to be already available, so running it before the matrix
block can fail.
2020-04-03 02:45:13 +01:00
Qi Xiao
1c28985c75 .cirrus.yml: Fix the env_debu_script for Windows.
Windows's cmd.exe does not use semicolons to separate commands, plus the output
captured by Cirrus CI already contains the working directory. So just remove the
"cd" command (which prints out the working directory when given no argument).
2020-04-03 02:42:33 +01:00
Qi Xiao
14a0df6c05 .cirrus.yml: Use $HOME/go instead of $GOPATH in cache config.
See code comment for details.

Also reorganize the scripts a bit.
2020-04-03 02:38:30 +01:00
Qi Xiao
99cfb54694 .cirrus.yml: Add human-readable names for each environment. 2020-04-03 02:30:00 +01:00
Qi Xiao
70de702770 .cirrus.yml: Fix scripts, again.
Cirrus does not allow multiple scripts with the same name (kudos!), so configure
env_script separately for each environment.
2020-04-03 02:26:55 +01:00
Qi Xiao
b88b95cc13 .cirrus.yml: Fix syntax. 2020-04-03 02:14:54 +01:00
Qi Xiao
541266d37b .cirrus.yml: Add more debug information about the execution environment.
Also remove the GOPROXY env variable as it now defaults to proxy.golang.org.
2020-04-03 02:10:36 +01:00
Qi Xiao
22e580618a .cirrus.yml: Run "go env" to help debugging. 2020-04-03 01:24:26 +01:00
Qi Xiao
db43813b9b .cirrus.yml: Set up go environment, and avoid using make. 2020-04-02 19:31:36 +01:00
Qi Xiao
0e6eb3083b .cirrus.yml: Add Windows, macOS and FreeBSD environments. 2020-04-02 17:27:31 +01:00
Qi Xiao
763f54cd8c .cirrus.yml: Add minimal config for Cirrus CI. 2020-04-02 14:32:55 +01:00