TotalCross / TotalCross/totalcross

Template for a Travis CI smoke-test build

Open
#64 6 comments 0 reactions 1 assignee View on GitHub

@flsobral is already working on this.

Since Jul 2, 2026.

build enhancement
Dominant language
Java
Stars
227
Forks
42
Avg merge
1d 19h
Merged PRs (30d)
11

Description

Template for a Travis CI smoke-test build

Travis CI is a widely used CI platform for open source projects that has tight integartion with GitHub. I would appreciate if there was a template build to check if the project is compiling

Other CIs available

There is also CircleCI available, but it has a limitation for FOSS build time, the TotalCross dependencies take time to download and I have no idea of how to control the cache of it for FOSS projects. For example, it took 31s to download and compile a project with basically TotalCross 4.4.2 and Retrolambda dependency and 5 Java files in JitPack.

So, yes, I have no interest in a CircleCI template for now

JitPack I use solely for distributing FOSS libraries, and it works building the source code when a tag is pushed AND some project requires that Maven dependency, so it is not suitable for this task.

GitLab-CI allows me to compile with any Docker Image, and it also let me configure cache for warming-up build stages. But it is solely to GitLab projects, not suitable for GitHub projects.

Describe the bug

I would like to check, for every and each push, if the code is compiling correctly with TotalCross, in a way that any accidental code incompatibility is detected and thus solved quickly. Like, for the CoronaChartApp.

Additional context

I would easily create a smoke test with tc-compiler-help adding the .setDryRun(true) option to the build, as I have done here for the TotalCross ResultSet Extractor library.

As TotalCross ResultSet Extractor is a GitLab project, I used there the "native" GitLab-CI for this task:

tc-build:
  stage: tc-build
  dependencies:
    - build
  script:
    - ./mvnw $MAVEN_CLI_OPTS clean install -P retrolambda
    - ln -vs $PWD/.m2 performance/.m2
    - ln -vs $PWD/mvnw performance/mvnw
    - cd performance
    - ./mvnw $MAVEN_CLI_OPTS clean package -P retrolambda,dev exec:java -Dexec.mainClass=br.com.softsite.rsextractor.PerformanceTest -Dexec.args=-n

But I get lost in Travis CI way of declaring "os", "language", etc. I find it way easier to work with GitLab-CI as I can rely on any docker image, so I have no problem with it.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.