Up

Updatecli – What if Dependabot and Ansible had a child?

Hacker News

Updatecli – What if Dependabot and Ansible had a child?

What if Dependabot and Ansible had a child? Well for me that could be Updatecli. Updatecli is a project that I started to help maintain the infrastructure of the Jenkins project. I needed something flexible enough to update YAML with whatever information needed. Because let’s say it, everybody loves YAML. YAML is everywhere. Run it from everywhere… Updatecli is a command-line tool written in Golang and available for Windows, Linux, MacOSx, amd64, arm64, thank you Goreleaser All of that to say that it runs from wherever CI or laptop we need. As of today, Updatecli opened over 3000 Pull requests on Github, and it evolved to update automatically Dockerfile, Markdown, Helm Chart, and of course a lot of YAML for tools like Puppet, Kubernetes, or Jenkins. How does it work? Updatecli loads pipeline configurations from YAML(s) or Golang templates then enforce the state defined by the pipeline configuration. A pipeline run as followed: 1. Clone in a temporary location any git repositories used by the pipeline. 2. Fetch information for every *source* defined, and then inject them as entry parameters into condition(s) and target(s). 3. Test that all *conditions* defined succeed otherwise abort the pipeline. 4. Enforce the state for every *target* defined. A state means different things depending on the resource type, more on this later. 5. Commit and open pull requests when needed. 6. Apply next pipeline A Updatecli pipeline relies on resources aka “extension” aka “plugins” to adapt pipeline behavior. By combining them, we can easily automate scenarios for release workflow, GitOps, dependency management, documentation update, etc. A simple scenario could be: * Retrieve the latest Golang version * Test that a docker image with the latest Golang version exist on Dockerhub * If it exists, then bump the version in a YAML file and open a pull request on GitHub with the change As of today, there are 9 extensions for "sources", 8 for "conditions", 6 for "targets", 2 for git repositories, and 1 for pull requests. A very simple pipeline is available on -> https://www.updatecli.io/docs/prologue/quick-start/ For more complex pipelines, you can look for directories named “updatecli/updatecli.d” at the root of repositories on https://github.com/updatecli or the Jenkins infrastructure repository such as https://github.com/jenkins-infra/kubernetes-management/tree/... I maintain a documentation website to document the different configuration. It’s not perfect but it’s available on www.updatecli.io What’s next? Well, it depends on many things. Updatecli is since the beginning, a fun side project, I wanted to practice Golang programming while automating tedious recurring tasks. I built it in a way that I could reuse it across the different projects which I maintain. It’s rather simple to add new resources so I’ll keep adding them based on my needs, I welcome any contributions that would benefit the community. More information on https://www.updatecli.io https://github.com/updatecli/updatecli

Share card

Actual performance

60points
33comments
Made the leaderboard

Launch Intel predictions

Analyze your own launch →
Product HuntOn track for Day 1 leaderboard · Strong signals: mac, macos, dock · Missing: agents, agent, cursor
78%78% predicted probability of success on Product Hunt, based on ML models trained on real launch data.
best fitHighest predicted score across all platforms for this description.
Indie HackersFits the IH revenue-focused audience · Strong signals: started, para, ios · Missing: supports, reddit linkedin, podcasting
76%76% predicted probability of success on Indie Hackers, based on ML models trained on real launch data.
Hacker NewsStrong engagement from HN community · Strong signals: exist, ide, pipe · Missing: https docs, excited, just released
63%63% predicted probability of success on Hacker News, based on ML models trained on real launch data.
nativeThis product was originally launched on this platform.
AppSumoMay struggle as an AppSumo deal · Missing: plus, platform, intuitive
38%38% predicted probability of success on AppSumo, based on ML models trained on real launch data.
TrustMRRLess likely to generate early MRR · Strong signals: ios, way, para · Missing: mobile apps, personal, entrepreneurs
33%33% predicted probability of success on TrustMRR, based on ML models trained on real launch data.
Acquire.comPre-revenue stage for this audience · Strong signals: recurring · Missing: arr, mrr, revenue
11%11% predicted probability of success on Acquire.com, based on ML models trained on real launch data.
BetaListMay not resonate with beta-testers · Missing: web3, chat, crypto
0%0% predicted probability of success on BetaList, based on ML models trained on real launch data.

Correct prediction on native model

Similar products

"W
"What the fuck should I name my child?"69%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

"What the fuck should I name my child?"

Hacker News10
HatchaBook
HatchaBook37%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Personalized storybooks starring your child

Indie Hackers1ai
PageCub
PageCub39%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Personalized storybooks starring your child

Indie Hackerscommitment-full-time
TEANALITICS
TEANALITICS30%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Do you have doubts about your child's development?

Indie Hackers1analytics
BAIKI
BAIKI42%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Unique fairy tales for your child and the child in you.

Indie Hackerscommitment-side-project
Sp
SportsChimp: If Zynga and Bet365 had a love child.64%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

SportsChimp: If Zynga and Bet365 had a love child.

Hacker News32
Pikipon
Pikipon48%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Turn your child's drawings to life

Indie Hackerscommitment-side-project
Superbaby
Superbaby15%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

child development app

Indie Hackers
Ha
HasComponentViews — child view handling for Backbone42%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

HasComponentViews — child view handling for Backbone

Hacker News1
Sp
Spot the Drowning Child62%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Spot the Drowning Child

Hacker News1,215