Skip to content

state of CI and latest-passing-build #1855

@mtfurlan

Description

@mtfurlan

The last latest passing build was in 2021, and it looks like Travis hasn't run since then.
I think we should make it start working again, because #1651 says use 4.0 (5 years ago) or latest passing build(4 years ago)

It looks like the current ci state is

  • github actions test report
    • makes a nice display for all the junit tests in the basic workflow
  • github actions basic workflow
    • clang-format
    • codeql
    • autotools autoreconf, configure, and make
      • mac: make tdd with gcc & clang
      • ubuntu: make tdd with gcc, clang, and --disable-longlong
      • ubuntu: make dist and make install
      • windows-latest make tdd
    • cmake: cmake & cmake --build && ctest, and sometimes make --install && build examples against install
      • ubuntu:
        • clang CXX standards 98, 11, 14, 17, 20
        • gnu CXX standards 98, 14, 17, 20
        • gnu install with CXX 11
        • presets
          • No long long
          • Detailed
          • No C++ Standard Library
          • No RTTI
          • No Exceptions
          • No C Standard Library
          • Address Sanitizer
          • GCC ARM embedded
          • clang-tidy
          • mingw
          • arm-embedded
          • OpenWatcom DOS with dosbox
        • run lcov
      • macos
        • install
        • clang CXX standards 14, 17, 20
        • gcc CXX standard 14
      • windows:
        • Cygwin with preset GNU
        • ClangCL CXX standard 17
        • MSVC CXX standard 20
        • MSVC install
    • make: under ubuntu do make -f Makefile_using_MakefileWorker with the following targets
      • test_defaults
      • test_disable_std_cpp
      • test_disable_memory_leak_detection
      • test_disable_std_cpp_and_leak_detection
      • test_disable_debug
      • test_override_flags
      • test_disable_std_c
      • test_target_platform
      • test_override_and_disable
      • test_examples
      • test_junit_output
      • test_vpath
      • test_vpath_install
      • commented out: test_gcov
    • make_dos
      • build with dosbox and github.com/cpputest/watcom-compiler and platforms/Dos/Makefile
      • run make test, which just calls platforms/Dos/alltets.sh
    • docker: push to docker hub
      • "dos": uses scripts/travis_ci_build.sh
        • build with dosbox and github.com/cpputest/watcom-compiler and platforms/Dos/Makefile
        • run platforms/Dos/alltets.sh
        • this is the same as the make_dos job, but it goes through the travis ci script
      • "ubuntu": autoreconf and configure and make tdd
  • appveyor
    • windows stuff with visual studio project stuff
  • circleci
    • running and reporting success, with an invocation of the travis ci script that was commented out three years ago
  • travis
    • just not running anymore

Questions:

  • Can we remove circle ci and travis ci configs?
  • can the github docker dos job be rebuild to not use travis ci scripts like the make_dos job, so we can delete the travis ci scripts?
  • do we want latest-passing-build to only be done if github workflows and appveyor pass?
    • would be easy to copy the test-report trigger if we ignore appveyor
    • I can write an action that does this either way, but we might run into issues with actions triggering on actions without using a GITHUB_TOKEN from a service account
  • can we move appveyor into github actions?
    • I don't know anything about visual studio projects and I don't want to, but if someone else does this it would simplify doing the latest-passing-build

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions