Cicada – A FOSS, Cross-Platform Version of GitHub Actions and Gitlab CI

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • cicada

    A FOSS, cross-platform version of GitHub Actions and Gitlab CI (by Cicada-Software)

  • Creator of Cicada here. Thank you for these questions! I'll try and answer them all:

    0: Secrets are stored using Vault. Read this commit message [1] for a full breakdown.

    1: Currently you cannot include other .ci files. I have been in feature creep mode for months now, and I've been forcing myself to stop adding features and start talking to users. The goal is to make Cicada more or less a general purpose programming language, but the first step is making it work well for defining CI/CD workflows.

    2: If it is necessary, I could back-port the self-hosted runners to Python 3.10/3.9 or earlier. And, since the runner interface just uses websockets, I (or someone else) could make a runner in a different language, ie Rust or Go.

    3: There is a "event" global variable that includes info like "event.branch", which is the branch that was pushed, but it does not include stuff like the default branch. Currently you could do `on git.push where event.branch is "main"`, but something like "event.branch is event.default_branch" would be even better. I'll work on adding that.

    The value add currently is that Cicada is FOSS, platform agnostic (works with GitHub/Gitlab), and uses a language that consolidates the workflows and scripts into one manageable file format. Existing CI systems are already packed with features that people expect, so the current struggle is catching up to this and then adding more on top of that. I'm trying to focus on what sets Cicada apart: That it gives you more control over your workflows, while being expressive and easier to manage then YAML and shell scripts.

    [1]: https://github.com/Cicada-Software/cicada/commit/2659f79b500...

  • demo

    A demo repo for showing off Cicada (by Cicada-Software)

  • This is the syntax of the pipeline it seems: https://github.com/Cicada-Software/demo/blob/main/hello_worl...

    Short answer: No

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • cicada

    Cicada Language (by cicada-lang)

  • There is a collision in names:

    Cicada, this CI tool, uses a DSL (domain specific language) to write configuration, and this DSL is referred to as "Cicada language", and blasted in marketing copy as a "real programming language" on https://cicada.sh/

    However, this is a completely different language from Cicada language, a programming language and theorem prover hosted at https://cicada-lang.org/ and https://github.com/cicada-lang/cicada

    This name collision is very confusing, and I wonder why Cicada the CI tool didn't just stick to python, since it is also a "real programming language"

  • onedev

    Git Server with CI/CD, Kanban, and Packages. Seamless integration. Unparalleled experience.

  • I'm going to plug https://onedev.io/ its awesome. Its self hosted and has its own tooling for CI/CD. I feel it doesn't get enough love, but I've been using it for years for my own stuff.

  • dagger

    Application Delivery as Code that Runs Anywhere (by dagger)

  • Check out https://dagger.io/. Write declarative pipelines in code, reproducibly run anywhere.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts